source: molecuilder/configure.ac@ ffcf49

Last change on this file since ffcf49 was 02bc3c, checked in by Frederik Heber <heber@…>, 17 years ago

new aclocal macro with controles all the enable-debug/optimization/warning in a unified manner and still keeps packages independent of each other.

Note that Ralf suggested specifying optimizations in CFLAGS directly, due to the load of activateable warnings, i saw it rather fit to make such a configure option.

  • Property mode set to 100644
File size: 2.9 KB
Line 
1# -*- Autoconf -*-
2# Process this file with autoconf to produce a configure script.
3
4AC_PREREQ(2.59)
5AC_INIT(Molecuilder, 1.0, heber@ins.uni-bonn.de, molecuilder)
6AC_CONFIG_AUX_DIR(config)
7AC_CONFIG_SRCDIR([src/builder.cpp])
8AC_CONFIG_HEADER([config.h])
9
10AM_INIT_AUTOMAKE(dist-bzip2)
11
12# Checks for programs.
13AC_PROG_CXX
14AC_PROG_CC
15AM_MISSING_PROG([DOXYGEN], [doxygen])
16
17AC_ARG_ENABLE([debug],AS_HELP_STRING([--enable-debug],[debugging level of compiler. Argument is yes or debugging level. (default is no)]),
18 [enable_debugging=$enableval], [enable_debugging=no])
19AC_ARG_ENABLE([optimization],AS_HELP_STRING([--enable-optimization],[Optimization level of compiler. Argument is yes or optimization. (default is 2)]),
20 [enable_optimization=$enableval], [enable_optimization=2])
21AC_ARG_ENABLE([warnings], AS_HELP_STRING([--enable-warnings],[Output compiler warnings, argument is none, some or full (default is some).]),
22 [enable_warnings=$enableval], [enable_warnings=some])
23AC_SET_COMPILER_FLAGS([$enable_optimization], [$enable_debugging], [$enable_warnings])
24
25# Checks for libraries.
26AC_CHECK_LIB(m, sqrt, ,AC_MSG_ERROR([compatible libc math library not found]))
27
28# Checks for header files.
29AC_HEADER_STDC
30AC_CHECK_HEADERS([sys/time.h])
31AC_HEADER_STDBOOL
32
33AC_FUNC_MALLOC
34AC_FUNC_REALLOC
35AC_CHECK_FUNCS([floor pow sqrt strchr])
36
37# Checks for typedefs, structures, and compiler characteristics.
38AC_C_CONST
39AC_C_INLINE
40AC_C_RESTRICT
41AC_TYPE_SIZE_T
42
43# Checks for library functions.
44# check for GNU Scientific Library
45AC_SEARCH_LIBS(cblas_sdot, blas cblas gslblas gslcblas)
46AC_CHECK_LIB(gsl,main)
47
48# add replacement/saturation hydrogen or not
49AC_ARG_ENABLE([hydrogen],AS_HELP_STRING([--enable-hydrogen],[Adding saturation hydrogen (default is yes)]),
50 [enable_hydrogen=$enableval], [enable_hydrogen=yes])
51if test x"$enable_hydrogen" = xyes; then
52 AC_DEFINE(ADDHYDROGEN,1, ["Adding saturation hydrogen"])
53 AC_SUBST(ADDHYDROGEN)
54fi
55
56# Check for "extern inline", using a modified version
57# of the test for AC_C_INLINE from acspecific.mt
58AC_CACHE_CHECK([for extern inline], ac_cv_c_extern_inline,
59[ac_cv_c_extern_inline=no
60AC_TRY_COMPILE([extern $ac_cv_c_inline double foo(double x);
61extern $ac_cv_c_inline double foo(double x) { return x+1.0; };
62double foo (double x) { return x + 1.0; };],
63[ foo(1.0) ],
64[ac_cv_c_extern_inline="yes"])
65])
66
67if test "$ac_cv_c_inline" != no ; then
68 AC_DEFINE(HAVE_INLINE,1, ["May use inline routines"])
69 AC_SUBST(HAVE_INLINE)
70fi
71
72AC_MSG_NOTICE(["CFLAGS: $CFLAGS, CXXFLAGS: $CXXFLAGS, LDFLAGS: $LDFLAGS, CC: $CC, CXX:, $CXX, MPICC: $MPICC, MPILIBS: $MPILIBS, LIBS: $LIBS"])
73
74# test suite
75AC_CONFIG_TESTDIR(tests)
76AC_CONFIG_FILES([tests/atlocal tests/Makefile])
77AC_CONFIG_FILES([tests/molecuilder], [chmod +x tests/molecuilder])
78
79AC_CONFIG_FILES([Makefile src/Makefile doc/Makefile])
80AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.