gtsam/configure.ac

174 lines
5.6 KiB
Plaintext

# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
AC_INIT(gtsam, 0.0.0, dellaert@cc.gatech.edu)
AM_INIT_AUTOMAKE(gtsam, 0.0.0)
AC_OUTPUT(Makefile CppUnitLite/Makefile base/Makefile inference/Makefile linear/Makefile geometry/Makefile nonlinear/Makefile slam/Makefile tests/Makefile wrap/Makefile examples/Makefile)
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_HEADER([config.h])
AC_CONFIG_SRCDIR([CppUnitLite/Test.cpp])
AC_CONFIG_SRCDIR([base/DSFVector.cpp])
AC_CONFIG_SRCDIR([geometry/Cal3_S2.cpp])
AC_CONFIG_SRCDIR([inference/SymbolicFactorGraph.cpp])
AC_CONFIG_SRCDIR([linear/GaussianFactor.cpp])
AC_CONFIG_SRCDIR([nonlinear/NonlinearOptimizer.cpp])
AC_CONFIG_SRCDIR([slam/pose2SLAM.cpp])
AC_CONFIG_SRCDIR([tests/testSQP.cpp])
AC_CONFIG_SRCDIR([wrap/wrap.cpp])
AC_CONFIG_SRCDIR([examples/SimpleRotation.cpp])
# 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])
# 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])
AM_CONDITIONAL([DEBUG], [test x$debug = xtrue])
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
# 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]) ;;
esac],[blas=false])
ak
AM_CONDITIONAL([USE_BLAS], test x$blas = xtrue)
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])
# 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]) ;;
esac],[lapack=false])
AM_CONDITIONAL([USE_LAPACK], test x$lapack = xtrue)
AM_CONDITIONAL([USE_LAPACK_MACOS], [test x$lapack = xtrue && test x$ISMAC = xtrue])
AM_CONDITIONAL([USE_LAPACK_LINUX], [test x$lapack = xtrue && test x$ISMAC = xfalse])
# 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
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])
# 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])
# 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])
# Checks for programs.
AC_PROG_CXX
AC_PROG_CC
# Checks for libraries.
LT_INIT
# 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])
# 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
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])
# ask for sparse library include directory
AC_ARG_WITH([sparse-inc],
[AS_HELP_STRING([--with-sparse-inc],
[specify the sparse library include directory (mandatory)])],
[SparseInc=$withval],
[AC_MSG_FAILURE(
[--with-sparse-inc has to be specified])
])
AC_SUBST([SparseInc])
# ask for sparse library lib directory
AC_ARG_WITH([sparse-lib],
[AS_HELP_STRING([--with-sparse-lib],
[specify the sparse library lib directory (mandatory)])],
[SparseLib=$withval],
[AC_MSG_FAILURE(
[--with-sparse-lib has to be specified])
])
AC_SUBST([SparseLib])
AC_OUTPUT