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