Files
uLib/configure.ac
Andrea Rigoni 99e771a223 [uLib Geometry]
non working version!

+ adds ProgrammableAccessor
+ renaming of some Image structures ...
2014-11-03 10:27:52 +00:00

211 lines
5.8 KiB
Plaintext

########################
## CONFIG FILE FOR AC ##
########################
# M4 PREABLE
# uLib version:
m4_define([uLib_major_version], [0])
m4_define([uLib_minor_version], [2])
# if the minor version number is odd, then we want debugging. Otherwise
# we only want minimal debugging support.
##m4_define([IB_debug_default],
## [m4_if(m4_eval(IB_minor_version % 2), [1], [yes])])
########### INIT #######################################
AC_INIT([MuSteel uLib],[uLib_major_version.uLib_minor_version],[andrea.rigoni@pd.infn.it])
AM_INIT_AUTOMAKE([subdir-objects])
##AC_PREREQ([2.67])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SRCDIR([ulib.h])
AC_CONFIG_HEADERS([config.h])
# Checks for programs.
CFLAGS=""
CXXFLAGS=""
AC_PROG_CC
AC_PROG_CXX
######### ROOT MACROS ###################################
AC_DEFINE([HAVE_ROOT], [no], [Having root installed])
ROOT_PATH( [5.0] , [HAVE_ROOT=1], [HAVE_ROOT=0])
AM_CONDITIONAL(HAVE_ROOT, [test HAVE_ROOT=1])
AS_IF([test HAVE_ROOT=1],[AC_DEFINE([HAVE_ROOT],[1],[])] )
AC_DEFINE([HAVE_GEANT4], [no], [Having Geant4 installed])
GEANT4_PATH( [9.6] , [HAVE_GEANT4=1], [HAVE_GEANT4=0])
AM_CONDITIONAL(HAVE_GEANT4, [test HAVE_GEANT4])
AS_IF([test HAVE_GEANT4=1],[AC_DEFINE([HAVE_GEANT4],[1],[])] )
######### LIBTOOL ########################################
AC_PROG_LIBTOOL
LIBADD_DL="-ldl"
AC_SUBST(LIBADD_DL)
AC_SEARCH_LIBS([strerror],[cposix])
LT_INIT()
AC_SUBST([LIBTOOL_DEPS])
######### CHECKS ########################################
# Checks for header files.
AC_CHECK_HEADERS([stdlib.h string.h assert.h])
# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_C_INLINE
AC_TYPE_SIZE_T
# Checks for library functions.
AC_FUNC_MALLOC
AC_CHECK_FUNCS([fesetround floor pow sqrt strdup strstr])
AC_SEARCH_LIBS([strerror],[cposix])
# Check for BOOST Libraries
BOOST_REQUIRE([1.34])
BOOST_ARRAY
# BOOST_DATE_TIME
BOOST_SERIALIZATION
BOOST_SIGNALS
BOOST_PROGRAM_OPTIONS(mt-p)
# Check for Vtk installation
AM_OPTIONS_VTK
AM_PATH_VTK([5.0],[HAVE_VTK=1],[HAVE_VTK=0])
# AM_CONDITIONAL([HAVE_VTK], [test HAVE_VTK=1] ) # fix?
AM_CONDITIONAL([VTK_5_x], [1])
PKG_CHECK_MODULES([EIGEN3],[eigen3 >= 0.1])
PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.4.0], [
AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`eval pkg-config --variable=exec_prefix QtCore`/bin)
AC_PATH_PROG(RCC, rcc, rcc,`eval pkg-config --variable=exec_prefix QtCore`/bin)
AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`eval pkg-config --variable=exec_prefix QtCore`/bin)
],[HAVE_QT=0])
########## CONDITIONALS ##################################
# Configure script arguments
dnl declare --enable-* args and collect ac_help strings
AC_ARG_ENABLE(debug,
AS_HELP_STRING([--enable-debug=no/yes],[turn on debugging, default: no]),
[case "${enableval}" in
yes) debug=true ;;
no) debug=false ;;
*) AC_MSG_ERROR([bad value ${enableval} for --enable-debug]) ;;
esac],
[debug=false])
AC_ARG_ENABLE(parallel,
AS_HELP_STRING([--enable-parallel=no/yes],[turn on openMP parallel processing, default: yes]),
[case "${enableval}" in
yes) parallel=true ;;
no) parallel=false ;;
*) AC_MSG_ERROR([bad value ${enableval} for --enable-parallel]) ;;
esac],
[parallel=true])
AC_ARG_ENABLE(autovector,
AS_HELP_STRING([--enable-autovector=no/yes],[turn on gcc auto vectorize loops with simd instructions, default: no]),
[case "${enableval}" in
yes) autovector=true ;;
no) autovector=false ;;
*) AC_MSG_ERROR([bad value ${enableval} for --enable-autovector]) ;;
esac],
[autovector=false])
AC_ARG_ENABLE(vtk,
AS_HELP_STRING([--enable-vtk=no/yes],[turn on vtk visualization wrappers, default: no]),
[case "${enableval}" in
yes) vtk=true ;;
no) vtk=false ;;
*) AC_MSG_ERROR([bad value ${enableval} for --enable-vtk]) ;;
esac],
[vtk=false])
AC_ARG_WITH([readline],
[AS_HELP_STRING([--with-readline],
[support fancy command line editing @<:@default=check@:>@])],
[],
[with_readline=check])
LIBREADLINE=
AS_IF([test "x$with_readline" != xno],
[AC_CHECK_LIB([readline], [main],
[AC_SUBST([LIBREADLINE], ["-lreadline -lncurses"])
AC_DEFINE([HAVE_LIBREADLINE], [1],
[Define if you have libreadline])
],
[if test "x$with_readline" != xcheck; then
AC_MSG_FAILURE(
[--with-readline was given, but test for readline failed])
fi
], -lncurses)])
AM_CONDITIONAL(DEBUG, test x"$debug" = x"true")
AM_CONDITIONAL(PARAL_MP, test x"$parallel" = x"true")
AM_CONDITIONAL(SIMD_AUTOVECTOR, test x"$autovector" = x"true")
AM_CONDITIONAL(ENABLE_VTK, [test x"$vtk" = x"true"])
SVN_REVISION=`svnversion .`
AC_SUBST(SVN_REVISION)
AC_DEFINE_UNQUOTED(SVN_REVISION,"$SVN_REVISION",[SVN revision number])
# Forcing variadic macro compiler feature (for gcc without cxx11 flag)
AC_DEFINE_UNQUOTED(BOOST_PP_VARIADICS,1,[Compiler must have variadic macros])
######### MAKEFILES #########################################
AC_CONFIG_FILES([
Makefile
src/Makefile
src/ltk/Makefile
src/ltk/testing/Makefile
src/Core/Makefile
src/Core/testing/Makefile
src/Core/testing/ObjectMock/Makefile
src/Core/testing/SignalMock/Makefile
src/Core/testing/SerializeMock/Makefile
src/Root/Makefile
src/Root/testing/Makefile
src/Math/Makefile
src/Math/testing/Makefile
src/Detectors/Makefile
src/Detectors/testing/Makefile
src/ParticlePhysics/MuonTomography/Makefile
src/ParticlePhysics/Geant/Makefile
src/Vtk/Makefile
src/Vtk/testing/Makefile
src/Gui/Qt/QVTKViewport2/Makefile
tmp/BuildTruck/Makefile
libmutom-0.2.pc
])
AC_OUTPUT
# src/Vtk/Math/Makefile
# src/Vtk/Math/testing/Makefile
# src/Vtk/Detectors/Makefile
# src/Vtk/Detectors/testing/Makefile
# src/Vtk/ParticlePhysics/MuonTomography/Makefile
# src/Vtk/ParticlePhysics/Geant/Makefile