source: molecuilder/configure.ac@ 6b3826

Last change on this file since 6b3826 was ec4e84, checked in by Frederik Heber <heber@…>, 17 years ago

configure BUGFIX: GSL may be linked against cblas_... functions or just ..., this is fixed.

Before we checked for cblas_dnrm2. However, e.g. libgoto names it simply dnrm2. Hence, the blas functions are not found or slower (c)blas, or gsl(c)blas is used. Now, we simply check for dnrm2 functions in the list of libs first, if it fails, then for cblas_dnrm2. And finally, we test GSL functionality by checking for main(), which only works if a working blas lib has been found before.
Also, we removed AC_MSG_NOTICE about CFLAGS and others. However, the other for MPICC was left present.

  • Property mode set to 100644
File size: 3.0 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_CHECK_HEADERS([gsl/gsl_blas.h])
46AC_SEARCH_LIBS(dnrm2, goto blas cblas gslblas gslcblas)
47AC_CHECK_LIB(gsl, main, [],
48 [AC_SEARCH_LIBS(cblas_dnrm2, blas cblas gslblas gslcblas)])
49AC_CHECK_LIB(gsl, gsl_blas_dnrm2, , [AC_MSG_ERROR(["No working BLAS found for GSL, stopping."])])
50
51# add replacement/saturation hydrogen or not
52AC_ARG_ENABLE([hydrogen],AS_HELP_STRING([--enable-hydrogen],[Adding saturation hydrogen (default is yes)]),
53 [enable_hydrogen=$enableval], [enable_hydrogen=yes])
54if test x"$enable_hydrogen" = xyes; then
55 AC_DEFINE(ADDHYDROGEN,1, ["Adding saturation hydrogen"])
56 AC_SUBST(ADDHYDROGEN)
57fi
58
59# Check for "extern inline", using a modified version
60# of the test for AC_C_INLINE from acspecific.mt
61AC_CACHE_CHECK([for extern inline], ac_cv_c_extern_inline,
62[ac_cv_c_extern_inline=no
63AC_TRY_COMPILE([extern $ac_cv_c_inline double foo(double x);
64extern $ac_cv_c_inline double foo(double x) { return x+1.0; };
65double foo (double x) { return x + 1.0; };],
66[ foo(1.0) ],
67[ac_cv_c_extern_inline="yes"])
68])
69
70if test "$ac_cv_c_inline" != no ; then
71 AC_DEFINE(HAVE_INLINE,1, ["May use inline routines"])
72 AC_SUBST(HAVE_INLINE)
73fi
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
78AC_CONFIG_TESTDIR(tests)
79AC_CONFIG_FILES([tests/atlocal tests/Makefile])
80AC_CONFIG_FILES([tests/molecuilder], [chmod +x tests/molecuilder])
81
82AC_CONFIG_FILES([Makefile src/Makefile doc/Makefile])
83AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.