| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  | #                                               -*- Autoconf -*- | 
					
						
							|  |  |  | # Process this file with autoconf to produce a configure script. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | AC_PREREQ(2.59) | 
					
						
							| 
									
										
										
										
											2010-10-27 04:45:29 +08:00
										 |  |  | AC_INIT(gtsam, 0.9.1, dellaert@cc.gatech.edu) | 
					
						
							|  |  |  | AM_INIT_AUTOMAKE(gtsam, 0.9.1) | 
					
						
							| 
									
										
										
										
											2009-12-30 04:01:38 +08:00
										 |  |  | AC_CONFIG_MACRO_DIR([m4]) | 
					
						
							| 
									
										
										
										
											2010-07-12 15:16:31 +08:00
										 |  |  | AC_CONFIG_HEADER([config.h]) | 
					
						
							|  |  |  | AC_CONFIG_SRCDIR([CppUnitLite/Test.cpp]) | 
					
						
							| 
									
										
										
										
											2010-10-26 04:10:33 +08:00
										 |  |  | AC_CONFIG_SRCDIR([gtsam/base/DSFVector.cpp]) | 
					
						
							|  |  |  | AC_CONFIG_SRCDIR([gtsam/geometry/Cal3_S2.cpp]) | 
					
						
							|  |  |  | AC_CONFIG_SRCDIR([gtsam/inference/SymbolicFactorGraph.cpp]) | 
					
						
							|  |  |  | AC_CONFIG_SRCDIR([gtsam/linear/GaussianFactor.cpp]) | 
					
						
							|  |  |  | AC_CONFIG_SRCDIR([gtsam/nonlinear/NonlinearOptimizer.cpp]) | 
					
						
							|  |  |  | AC_CONFIG_SRCDIR([gtsam/slam/pose2SLAM.cpp]) | 
					
						
							| 
									
										
										
										
											2010-07-12 15:16:31 +08:00
										 |  |  | AC_CONFIG_SRCDIR([tests/testSQP.cpp]) | 
					
						
							| 
									
										
										
										
											2010-08-27 03:55:40 +08:00
										 |  |  | AC_CONFIG_SRCDIR([examples/SimpleRotation.cpp]) | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Check for OS | 
					
						
							|  |  |  | AC_CANONICAL_HOST    # needs to be called at some point earlier | 
					
						
							|  |  |  | AM_CONDITIONAL([DARWIN], [case $host_os in darwin*) true;; *) false;; esac])  | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-09-03 23:15:20 +08:00
										 |  |  | # enable debug variable | 
					
						
							|  |  |  | AC_ARG_ENABLE([debug], | 
					
						
							|  |  |  |      [  --enable-debug    Turn on debugging], | 
					
						
							|  |  |  |      [case "${enableval}" in | 
					
						
							|  |  |  |        yes) debug=true ;; | 
					
						
							|  |  |  |        no)  debug=false ;; | 
					
						
							|  |  |  |        *) AC_MSG_ERROR([bad value ${enableval} for --enable-debug]) ;; | 
					
						
							|  |  |  |      esac],[debug=false]) | 
					
						
							| 
									
										
										
										
											2010-01-27 13:15:52 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | AM_CONDITIONAL([DEBUG], [test x$debug = xtrue]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-03-17 21:19:48 +08:00
										 |  |  | AC_CANONICAL_HOST | 
					
						
							|  |  |  | # We need to determine what os we are on to determine if we need to do  | 
					
						
							|  |  |  | # special things because we are on a mac | 
					
						
							|  |  |  | case $host_os in | 
					
						
							|  |  |  |   darwin* ) | 
					
						
							|  |  |  |         # Do something specific for mac | 
					
						
							|  |  |  |         ISMAC=true | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |   *) | 
					
						
							|  |  |  |         ISMAC=false | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  | esac | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-04-21 12:15:14 +08:00
										 |  |  | # enable BLAS with general purpose script | 
					
						
							|  |  |  | AC_ARG_ENABLE([blas], | 
					
						
							|  |  |  |      [  --enable-blas    Enable external BLAS library], | 
					
						
							|  |  |  |      [case "${enableval}" in | 
					
						
							|  |  |  |        yes) blas=true ;; | 
					
						
							|  |  |  |        no)  blas=false ;; | 
					
						
							|  |  |  |        *) AC_MSG_ERROR([bad value ${enableval} for --enable-blas]) ;; | 
					
						
							| 
									
										
										
										
											2010-10-24 00:10:54 +08:00
										 |  |  |      esac],[blas=true]) | 
					
						
							| 
									
										
										
										
											2010-07-17 02:16:18 +08:00
										 |  |  | ak | 
					
						
							| 
									
										
										
										
											2010-07-12 15:16:31 +08:00
										 |  |  | AM_CONDITIONAL([USE_BLAS], test x$blas = xtrue) | 
					
						
							| 
									
										
										
										
											2010-03-17 21:19:48 +08:00
										 |  |  | AM_CONDITIONAL([USE_BLAS_MACOS], [test x$blas = xtrue && test x$ISMAC = xtrue]) | 
					
						
							|  |  |  | AM_CONDITIONAL([USE_BLAS_LINUX], [test x$blas = xtrue && test x$ISMAC = xfalse]) | 
					
						
							| 
									
										
										
										
											2009-09-03 23:15:20 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-07-01 01:23:58 +08:00
										 |  |  | # enable LAPACK | 
					
						
							|  |  |  | AC_ARG_ENABLE([lapack], | 
					
						
							|  |  |  |      [  --enable-lapack    Enable external LAPACK library], | 
					
						
							|  |  |  |      [case "${enableval}" in | 
					
						
							|  |  |  |        yes) lapack=true ;; | 
					
						
							|  |  |  |        no)  lapack=false ;; | 
					
						
							|  |  |  |        *) AC_MSG_ERROR([bad value ${enableval} for --enable-lapack]) ;; | 
					
						
							| 
									
										
										
										
											2010-10-24 00:10:54 +08:00
										 |  |  |      esac],[lapack=true]) | 
					
						
							| 
									
										
										
										
											2010-07-01 01:23:58 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-07-12 15:16:31 +08:00
										 |  |  | AM_CONDITIONAL([USE_LAPACK], test x$lapack = xtrue) | 
					
						
							| 
									
										
										
										
											2010-07-01 01:23:58 +08:00
										 |  |  | AM_CONDITIONAL([USE_LAPACK_MACOS], [test x$lapack = xtrue && test x$ISMAC = xtrue]) | 
					
						
							| 
									
										
										
										
											2010-07-08 06:26:46 +08:00
										 |  |  | AM_CONDITIONAL([USE_LAPACK_LINUX], [test x$lapack = xtrue && test x$ISMAC = xfalse]) | 
					
						
							| 
									
										
										
										
											2010-07-01 01:23:58 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-07-12 15:16:31 +08:00
										 |  |  | # On Mac, we use the Accelerate framework for BLAS/LAPACK | 
					
						
							|  |  |  | AM_CONDITIONAL([USE_ACCELERATE_MACOS], [(test x$lapack = xtrue || test x$blas = xtrue) && test x$ISMAC = xtrue]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #enable SparseQR for linear solving | 
					
						
							| 
									
										
										
										
											2010-05-31 10:21:37 +08:00
										 |  |  | AC_ARG_ENABLE([spqr], | 
					
						
							|  |  |  |      [  --enable-spqr    Enable SparseQR library support], | 
					
						
							|  |  |  |      [case "${enableval}" in | 
					
						
							|  |  |  |        yes) spqr=true ;; | 
					
						
							|  |  |  |        no)  spqr=false ;; | 
					
						
							|  |  |  |        *) AC_MSG_ERROR([bad value ${enableval} for --enable-spqr]) ;; | 
					
						
							|  |  |  |      esac],[spqr=false]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | AM_CONDITIONAL([USE_SPQR], [test x$spqr = xtrue]) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-07-08 05:41:50 +08:00
										 |  |  | # enable profiling | 
					
						
							|  |  |  | AC_ARG_ENABLE([profiling], | 
					
						
							|  |  |  |      [  --enable-profiling    Enable profiling], | 
					
						
							|  |  |  |      [case "${enableval}" in | 
					
						
							|  |  |  |        yes) profiling=true ;; | 
					
						
							|  |  |  |        no)  profiling=false ;; | 
					
						
							|  |  |  |        *) AC_MSG_ERROR([bad value ${enableval} for --enable-profiling]) ;; | 
					
						
							|  |  |  |      esac],[profiling=false]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | AM_CONDITIONAL([USE_PROFILING], [test x$profiling = xtrue]) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-08-27 23:31:20 +08:00
										 |  |  | # enable serialization in serialization test | 
					
						
							|  |  |  | AC_ARG_ENABLE([serialization], | 
					
						
							|  |  |  |      [  --enable-serialization    Enable serialization with boost serialization], | 
					
						
							|  |  |  |      [case "${enableval}" in | 
					
						
							|  |  |  |        yes) serialization=true ;; | 
					
						
							|  |  |  |        no)  serialization=false ;; | 
					
						
							|  |  |  |        *) AC_MSG_ERROR([bad value ${enableval} for --enable-serialization]) ;; | 
					
						
							|  |  |  |      esac],[serialization=false]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | AM_CONDITIONAL([ENABLE_SERIALIZATION], [test x$serialization = xtrue]) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  | # Checks for programs. | 
					
						
							|  |  |  | AC_PROG_CXX | 
					
						
							|  |  |  | AC_PROG_CC | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Checks for libraries. | 
					
						
							| 
									
										
										
										
											2009-12-30 04:01:38 +08:00
										 |  |  | LT_INIT | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Checks for header files. | 
					
						
							|  |  |  | AC_HEADER_STDC | 
					
						
							|  |  |  | AC_CHECK_HEADERS([string.h]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Checks for typedefs, structures, and compiler characteristics. | 
					
						
							|  |  |  | AC_HEADER_STDBOOL | 
					
						
							|  |  |  | AC_C_CONST | 
					
						
							|  |  |  | AC_C_INLINE | 
					
						
							|  |  |  | AC_TYPE_SIZE_T | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Checks for library functions. | 
					
						
							|  |  |  | AC_FUNC_ERROR_AT_LINE | 
					
						
							|  |  |  | AC_CHECK_FUNCS([pow sqrt]) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-10-18 01:06:28 +08:00
										 |  |  | # Check for boost | 
					
						
							|  |  |  | AX_BOOST_BASE([1.40]) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  | # ask for toolbox directory | 
					
						
							|  |  |  | AC_ARG_WITH([toolbox], | 
					
						
							|  |  |  |             [AS_HELP_STRING([--with-toolbox], | 
					
						
							|  |  |  |               [specify the matlab toolbox directory for installation (mandatory)])], | 
					
						
							|  |  |  |             [toolbox=$withval], | 
					
						
							|  |  |  |             [AC_MSG_FAILURE( | 
					
						
							|  |  |  |                    [--with-toolbox has to be specified]) | 
					
						
							|  |  |  |             ]) | 
					
						
							|  |  |  | AC_SUBST([toolbox]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # ask for boost directory | 
					
						
							| 
									
										
										
										
											2010-10-18 01:06:28 +08:00
										 |  |  | #AC_ARG_WITH([boost], | 
					
						
							|  |  |  | #            [AS_HELP_STRING([--with-boost], | 
					
						
							|  |  |  | #              [specify the boost directory for installation (mandatory)])], | 
					
						
							|  |  |  | #            [boost=$withval], | 
					
						
							|  |  |  | #            [AC_MSG_FAILURE( | 
					
						
							|  |  |  | #                   [--with-boost has to be specified]) | 
					
						
							|  |  |  | #            ]) | 
					
						
							|  |  |  | #AC_SUBST([boost]) | 
					
						
							| 
									
										
										
										
											2010-10-14 10:41:08 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-10-16 09:55:47 +08:00
										 |  |  | # ask for ccolamd library include directory | 
					
						
							|  |  |  | AC_ARG_WITH([ccolamd-inc], | 
					
						
							|  |  |  |             [AS_HELP_STRING([--with-ccolamd-inc], | 
					
						
							| 
									
										
										
										
											2010-10-17 09:47:13 +08:00
										 |  |  |               [specify the CCOLAMD library include directory (defaults to /HOME/include/ccolamd)])], | 
					
						
							| 
									
										
										
										
											2010-10-16 09:55:47 +08:00
										 |  |  |             [CCOLAMDInc=$withval], | 
					
						
							| 
									
										
										
										
											2010-10-16 10:29:17 +08:00
										 |  |  |             [CCOLAMDInc=${HOME}/include/ccolamd]) | 
					
						
							| 
									
										
										
										
											2010-10-16 09:55:47 +08:00
										 |  |  | AC_SUBST([CCOLAMDInc]) | 
					
						
							| 
									
										
										
										
											2010-10-14 10:41:08 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | # ask for sparse library lib directory | 
					
						
							| 
									
										
										
										
											2010-10-16 09:55:47 +08:00
										 |  |  | AC_ARG_WITH([ccolamd-lib], | 
					
						
							|  |  |  |             [AS_HELP_STRING([--with-ccolamd-lib], | 
					
						
							| 
									
										
										
										
											2010-10-17 09:47:13 +08:00
										 |  |  |               [specify the CCOLAMD library lib directory (defaults to /HOME/lib)])], | 
					
						
							| 
									
										
										
										
											2010-10-16 09:55:47 +08:00
										 |  |  |             [CCOLAMDLib=$withval], | 
					
						
							| 
									
										
										
										
											2010-10-16 10:29:17 +08:00
										 |  |  |             [CCOLAMDLib=${HOME}/lib]) | 
					
						
							| 
									
										
										
										
											2010-10-16 09:55:47 +08:00
										 |  |  | AC_SUBST([CCOLAMDLib]) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-10-26 04:10:33 +08:00
										 |  |  | # For now we require blas, atlas, and lapack | 
					
						
							|  |  |  | #AM_COND_IF([test x$ISMAC = xtrue], | 
					
						
							|  |  |  | #    [LINALG_CPPFLAGS="-I/System/Library/Frameworks/vecLib.framework/Headers ${CCOLAMDInc} -DGT_USE_LAPACK"], | 
					
						
							|  |  |  | #    [LINALG_CPPFLAGS="${CCOLAMDInc} -DGT_USE_LAPACK"]) | 
					
						
							|  |  |  | #AM_COND_IF([test x$ISMAC = xtrue], | 
					
						
							|  |  |  | #    [LINALG_LDFLAGS="-Wl,/System/Library/Frameworks/Accelerate.framework/Accelerate ${CCOLAMDLib}"], | 
					
						
							|  |  |  | #    [LINALG_LDFLAGS="-lcblas -latlas -llapack ${CCOLAMDLib}"]) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-10-26 09:11:35 +08:00
										 |  |  | AC_CONFIG_FILES([CppUnitLite/Makefile gtsam/base/Makefile gtsam/geometry/Makefile gtsam/inference/Makefile gtsam/linear/Makefile gtsam/nonlinear/Makefile gtsam/slam/Makefile gtsam/Makefile tests/Makefile examples/Makefile examples/vSLAMexample/Makefile Makefile]) | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  | AC_OUTPUT |