mirror of
https://github.com/OpenCMT/uLib.git
synced 2025-12-05 23:11:31 +01:00
211 lines
5.8 KiB
Plaintext
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
|
|
|