# $Id: makefile.am 3854 2016-12-14 17:36:26Z bradbell $
# -----------------------------------------------------------------------------
# CppAD: C++ Algorithmic Differentiation: Copyright (C) 2003-16 Bradley M. Bell
#
# CppAD is distributed under multiple licenses. This distribution is under
# the terms of the
# GNU General Public License Version 3.
#
# A copy of this license is included in the COPYING file of this distribution.
# Please visit http://www.coin-or.org/CppAD/ for information on other licenses.
# -----------------------------------------------------------------------------
#
BUILT_SOURCES = $(top_srcdir)/cppad/configure.hpp
$(top_srcdir)/cppad/configure.hpp: cppad/configure.hpp
cp cppad/configure.hpp $(top_srcdir)/cppad/configure.hpp
#
if CppAD_POSTFIX
postfix_dir = $(POSTFIX_DIR)
else
postfix_dir = .
endif
#
# Did user specify a value for ADOLC_DIR in configure command line
if CppAD_ADOLC
SPEED_ADOLC_TESTS = speed/adolc
else
SPEED_ADOLC_TESTS =
endif
#
# Did user specify a value for FADBAD_DIR in configure command line
if CppAD_FADBAD
SPEED_FADBAD_TESTS = speed/fadbad
else
SPEED_FADBAD_TESTS =
endif
#
# Did user specify a value for SACADO_DIR in configure command line
if CppAD_SACADO
SPEED_SACADO_TESTS = speed/sacado
else
SPEED_SACADO_TESTS =
endif
#
# Did user specify a value for IPOPT_DIR in configure command line
if CppAD_IPOPT
IPOPT_TESTS = \
example/ipopt_solve \
cppad_ipopt/example \
cppad_ipopt/speed \
cppad_ipopt/test
#
IPOPT_DIRS = \
cppad_ipopt/src \
$(IPOPT_TESTS)
#
IPOPT_HEADER = \
cppad_ipopt/src/cppad_ipopt_nlp.hpp
else
IPOPT_TESTS =
IPOPT_DIRS =
IPOPT_HEADER =
endif
#
# Is the library archiving program present
if CppAD_HAVE_AR
SPEED_TESTS = \
$(SPEED_ADOLC_TESTS) \
speed/cppad \
speed/double \
speed/example \
$(SPEED_FADBAD_TESTS) \
speed/profile \
$(SPEED_SACADO_TESTS)
#
SPEED_DIRS = \
speed/src \
$(SPEED_TESTS)
else
SPEED_TESTS =
SPEED_DIRS =
endif
# ---------------------------------------------------------------------------
myincludedir = $(includedir)/$(postfix_dir)
#
myinclude_HEADERS = \
$(IPOPT_HEADER)
#
nobase_myinclude_HEADERS = \
cppad/base_require.hpp \
cppad/configure.hpp \
cppad/core/abort_recording.hpp \
cppad/core/abs.hpp \
cppad/core/acosh.hpp \
cppad/core/ad_assign.hpp \
cppad/core/ad_binary.hpp \
cppad/core/ad_ctor.hpp \
cppad/core/add_eq.hpp \
cppad/core/add.hpp \
cppad/core/ad_fun.hpp \
cppad/core/ad.hpp \
cppad/core/ad_io.hpp \
cppad/core/ad_to_string.hpp \
cppad/core/ad_valued.hpp \
cppad/core/arithmetic.hpp \
cppad/core/asinh.hpp \
cppad/core/atan2.hpp \
cppad/core/atanh.hpp \
cppad/core/atomic_base.hpp \
cppad/core/azmul.hpp \
cppad/core/base_complex.hpp \
cppad/core/base_cond_exp.hpp \
cppad/core/base_double.hpp \
cppad/core/base_float.hpp \
cppad/core/base_hash.hpp \
cppad/core/base_limits.hpp \
cppad/core/base_std_math.hpp \
cppad/core/base_to_string.hpp \
cppad/core/bender_quad.hpp \
cppad/core/bool_fun.hpp \
cppad/core/bool_valued.hpp \
cppad/core/capacity_order.hpp \
cppad/core/check_for_nan.hpp \
cppad/core/checkpoint.hpp \
cppad/core/compare.hpp \
cppad/core/compute_assign.hpp \
cppad/core/cond_exp.hpp \
cppad/core/convert.hpp \
cppad/core/cppad_assert.hpp \
cppad/core/define.hpp \
cppad/core/dependent.hpp \
cppad/core/discrete.hpp \
cppad/core/div_eq.hpp \
cppad/core/div.hpp \
cppad/core/drivers.hpp \
cppad/core/epsilon.hpp \
cppad/core/equal_op_seq.hpp \
cppad/core/erf.hpp \
cppad/core/expm1.hpp \
cppad/core/for_one.hpp \
cppad/core/for_sparse_hes.hpp \
cppad/core/for_sparse_jac.hpp \
cppad/core/for_two.hpp \
cppad/core/forward.hpp \
cppad/core/fun_check.hpp \
cppad/core/fun_construct.hpp \
cppad/core/fun_eval.hpp \
cppad/core/hash_code.hpp \
cppad/core/hessian.hpp \
cppad/core/identical.hpp \
cppad/core/independent.hpp \
cppad/core/integer.hpp \
cppad/core/jacobian.hpp \
cppad/core/log1p.hpp \
cppad/core/lu_ratio.hpp \
cppad/core/mul_eq.hpp \
cppad/core/mul.hpp \
cppad/core/near_equal_ext.hpp \
cppad/core/numeric_limits.hpp \
cppad/core/num_skip.hpp \
cppad/core/old_atomic.hpp \
cppad/core/omp_max_thread.hpp \
cppad/core/optimize.hpp \
cppad/core/opt_val_hes.hpp \
cppad/core/ordered.hpp \
cppad/core/parallel_ad.hpp \
cppad/core/par_var.hpp \
cppad/core/pow.hpp \
cppad/core/print_for.hpp \
cppad/core/reverse.hpp \
cppad/core/rev_one.hpp \
cppad/core/rev_sparse_hes.hpp \
cppad/core/rev_sparse_jac.hpp \
cppad/core/rev_two.hpp \
cppad/core/sign.hpp \
cppad/core/sparse_hessian.hpp \
cppad/core/sparse.hpp \
cppad/core/sparse_jacobian.hpp \
cppad/core/standard_math.hpp \
cppad/core/std_math_98.hpp \
cppad/core/sub_eq.hpp \
cppad/core/sub.hpp \
cppad/core/tape_link.hpp \
cppad/core/test_vector.hpp \
cppad/core/testvector.hpp \
cppad/core/unary_minus.hpp \
cppad/core/unary_plus.hpp \
cppad/core/undef.hpp \
cppad/core/user_ad.hpp \
cppad/core/value.hpp \
cppad/core/var2par.hpp \
cppad/core/vec_ad.hpp \
cppad/core/zdouble.hpp \
cppad/cppad.hpp \
cppad/example/base_adolc.hpp \
cppad/example/cppad_eigen.hpp \
cppad/example/eigen_cholesky.hpp \
cppad/example/eigen_mat_inv.hpp \
cppad/example/eigen_mat_mul.hpp \
cppad/example/eigen_plugin.hpp \
cppad/example/mat_mul.hpp \
cppad/ipopt/solve_callback.hpp \
cppad/ipopt/solve.hpp \
cppad/ipopt/solve_result.hpp \
cppad/local/abs_op.hpp \
cppad/local/acosh_op.hpp \
cppad/local/acos_op.hpp \
cppad/local/add_op.hpp \
cppad/local/ad_tape.hpp \
cppad/local/asinh_op.hpp \
cppad/local/asin_op.hpp \
cppad/local/atanh_op.hpp \
cppad/local/atan_op.hpp \
cppad/local/color_general.hpp \
cppad/local/color_symmetric.hpp \
cppad/local/comp_op.hpp \
cppad/local/cond_op.hpp \
cppad/local/cosh_op.hpp \
cppad/local/cos_op.hpp \
cppad/local/cppad_colpack.hpp \
cppad/local/cskip_op.hpp \
cppad/local/csum_op.hpp \
cppad/local/declare_ad.hpp \
cppad/local/discrete_op.hpp \
cppad/local/div_op.hpp \
cppad/local/erf_op.hpp \
cppad/local/expm1_op.hpp \
cppad/local/exp_op.hpp \
cppad/local/for_hes_sweep.hpp \
cppad/local/for_jac_sweep.hpp \
cppad/local/forward0sweep.hpp \
cppad/local/forward1sweep.hpp \
cppad/local/forward2sweep.hpp \
cppad/local/hash_code.hpp \
cppad/local/independent.hpp \
cppad/local/load_op.hpp \
cppad/local/log1p_op.hpp \
cppad/local/log_op.hpp \
cppad/local/mul_op.hpp \
cppad/local/op_code.hpp \
cppad/local/op.hpp \
cppad/local/optimize/match_op.hpp \
cppad/local/optimize/cskip_info.hpp \
cppad/local/optimize/csum_stacks.hpp \
cppad/local/optimize/csum_variable.hpp \
cppad/local/optimize/get_op_info.hpp \
cppad/local/optimize/hash_code.hpp \
cppad/local/optimize/old2new.hpp \
cppad/local/optimize/op_info.hpp \
cppad/local/optimize/optimize_run.hpp \
cppad/local/optimize/record_csum.hpp \
cppad/local/optimize/record_pv.hpp \
cppad/local/optimize/record_vp.hpp \
cppad/local/optimize/record_vv.hpp \
cppad/local/optimize/size_pair.hpp \
cppad/local/optimize/usage.hpp \
cppad/local/parameter_op.hpp \
cppad/local/player.hpp \
cppad/local/pod_vector.hpp \
cppad/local/pow_op.hpp \
cppad/local/print_op.hpp \
cppad/local/prototype_op.hpp \
cppad/local/recorder.hpp \
cppad/local/reverse_sweep.hpp \
cppad/local/rev_hes_sweep.hpp \
cppad/local/rev_jac_sweep.hpp \
cppad/local/set_get_in_parallel.hpp \
cppad/local/sign_op.hpp \
cppad/local/sinh_op.hpp \
cppad/local/sin_op.hpp \
cppad/local/sparse_binary_op.hpp \
cppad/local/sparse_list.hpp \
cppad/local/sparse_pack.hpp \
cppad/local/sparse_pattern.hpp \
cppad/local/sparse_unary_op.hpp \
cppad/local/sqrt_op.hpp \
cppad/local/std_set.hpp \
cppad/local/store_op.hpp \
cppad/local/sub_op.hpp \
cppad/local/tanh_op.hpp \
cppad/local/tan_op.hpp \
cppad/local/user_state.hpp \
cppad/local/zmul_op.hpp \
cppad/speed/det_33.hpp \
cppad/speed/det_by_lu.hpp \
cppad/speed/det_by_minor.hpp \
cppad/speed/det_grad_33.hpp \
cppad/speed/det_of_minor.hpp \
cppad/speed/mat_sum_sq.hpp \
cppad/speed/ode_evaluate.hpp \
cppad/speed/sparse_hes_fun.hpp \
cppad/speed/sparse_jac_fun.hpp \
cppad/speed/uniform_01.hpp \
cppad/utility/check_numeric_type.hpp \
cppad/utility/check_simple_vector.hpp \
cppad/utility/elapsed_seconds.hpp \
cppad/utility/error_handler.hpp \
cppad/utility.hpp \
cppad/utility/index_sort.hpp \
cppad/utility/lu_factor.hpp \
cppad/utility/lu_invert.hpp \
cppad/utility/lu_solve.hpp \
cppad/utility/memory_leak.hpp \
cppad/utility/nan.hpp \
cppad/utility/near_equal.hpp \
cppad/utility/ode_err_control.hpp \
cppad/utility/ode_gear_control.hpp \
cppad/utility/ode_gear.hpp \
cppad/utility/omp_alloc.hpp \
cppad/utility/poly.hpp \
cppad/utility/pow_int.hpp \
cppad/utility/romberg_mul.hpp \
cppad/utility/romberg_one.hpp \
cppad/utility/rosen_34.hpp \
cppad/utility/runge_45.hpp \
cppad/utility/set_union.hpp \
cppad/utility/speed_test.hpp \
cppad/utility/thread_alloc.hpp \
cppad/utility/time_test.hpp \
cppad/utility/to_string.hpp \
cppad/utility/track_new_del.hpp \
cppad/utility/vector.hpp
# End nobase_myinclude_HEADERS (check_makefile.sh uses this comment)
# ---------------------------------------------------------------
#
# No objects or executables are required to install CppAD.
# See 'make test' below for building the tests.
SUBDIRS = \
$(IPOPT_DIRS) \
$(SPEED_DIRS) \
example \
example/atomic \
example/optimize \
compare_c \
introduction/get_started \
introduction/exp_apx \
print_for \
multi_thread \
multi_thread/test_multi \
test_more
#
# note that bin/gpl_license.sh is deleted by dist-hook
EXTRA_DIST = \
bin \
build.sh \
doc.omh \
doc \
gpl-3.0.txt \
epl-v10.html \
omh \
uw_copy_040507.html \
\
compare_c/CMakeLists.txt \
cppad/CMakeLists.txt \
pkgconfig/CMakeLists.txt \
example/CMakeLists.txt \
example/atomic/CMakeLists.txt \
example/ipopt_solve/CMakeLists.txt \
example/optimize/CMakeLists.txt \
test_more/CMakeLists.txt \
CMakeLists.txt \
cppad_ipopt/src/CMakeLists.txt \
cppad_ipopt/example/CMakeLists.txt \
cppad_ipopt/test/CMakeLists.txt \
cppad_ipopt/CMakeLists.txt \
cppad_ipopt/speed/CMakeLists.txt \
speed/main.cpp \
speed/cppad/CMakeLists.txt \
speed/adolc/CMakeLists.txt \
speed/fadbad/CMakeLists.txt \
speed/src/CMakeLists.txt \
speed/example/CMakeLists.txt \
speed/CMakeLists.txt \
speed/double/CMakeLists.txt \
speed/profile/CMakeLists.txt \
speed/sacado/CMakeLists.txt \
multi_thread/bthread/CMakeLists.txt \
multi_thread/CMakeLists.txt \
multi_thread/openmp/CMakeLists.txt \
multi_thread/pthread/CMakeLists.txt \
print_for/CMakeLists.txt
test_directory_list = \
$(IPOPT_TESTS) \
$(SPEED_TESTS) \
example \
example/atomic \
example/optimize \
compare_c \
introduction/get_started \
introduction/exp_apx \
multi_thread \
multi_thread/test_multi \
print_for \
test_more
test: all
rm -f test.log
touch test.log
echo "#! /bin/sh -e" > test.sh
for dir in $(test_directory_list) ; do ( \
echo "#" >> test.sh ; \
echo "echo \"Running make test in $$dir\"" >> test.sh ; \
echo "cd $$dir " >> test.sh ; \
echo "make test" >> test.sh ; \
echo "cd $(ABS_TOP_BUILDDIR)" >> test.sh ; \
) done
echo "exit 0" >> test.sh
chmod +x test.sh
./test.sh
#
dist-hook:
rm -rf `find . -name .svn`
rm $(distdir)/doc/error.wrd
rm $(distdir)/bin/gpl_license.sh
#
doc_postfix = $(DESTDIR)$(datadir)/doc/$(postfix_dir)
doc_package = $(DESTDIR)$(datadir)/doc/$(postfix_dir)/$(PACKAGE)-$(VERSION)
inc_postfix = $(DESTDIR)/$(myincludedir)
install-data-hook:
if CppAD_DOCUMENTATION
if [ ! -e $(doc_postfix) ] ; then mkdir -p $(doc_postfix) ; fi
if [ -e $(doc_package) ] ; then rm -rf $(doc_package) ; fi
cp -a $(top_srcdir)/doc $(doc_package)
chmod -R a-w $(doc_package)
chmod -R u+w $(doc_package)
chmod -R a+r $(doc_package)
endif
if CppAD_DEPRECATED
cp -a $(top_srcdir)/cppad/deprecated/* $(inc_postfix)/cppad
chmod -R a-w $(inc_postfix)/cppad
chmod -R u+w $(inc_postfix)/cppad
chmod -R a+r $(inc_postfix)/cppad
endif
#
pkgconfigdir = $(datadir)/pkgconfig
pkgconfig_DATA = pkgconfig/cppad.pc