source: configure.ac@ bd3e55

Action_Thermostats Add_AtomRandomPerturbation Add_FitFragmentPartialChargesAction Add_RotateAroundBondAction Add_SelectAtomByNameAction Added_ParseSaveFragmentResults AddingActions_SaveParseParticleParameters Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_ParticleName_to_Atom Adding_StructOpt_integration_tests AtomFragments Automaking_mpqc_open AutomationFragmentation_failures Candidate_v1.5.4 Candidate_v1.6.0 Candidate_v1.6.1 ChangeBugEmailaddress ChangingTestPorts ChemicalSpaceEvaluator CombiningParticlePotentialParsing Combining_Subpackages Debian_Package_split Debian_package_split_molecuildergui_only Disabling_MemDebug Docu_Python_wait EmpiricalPotential_contain_HomologyGraph EmpiricalPotential_contain_HomologyGraph_documentation Enable_parallel_make_install Enhance_userguide Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph FitPartialCharges_GlobalError Fix_BoundInBox_CenterInBox_MoleculeActions Fix_ChargeSampling_PBC Fix_ChronosMutex Fix_FitPartialCharges Fix_FitPotential_needs_atomicnumbers Fix_ForceAnnealing Fix_IndependentFragmentGrids Fix_ParseParticles Fix_ParseParticles_split_forward_backward_Actions Fix_PopActions Fix_QtFragmentList_sorted_selection Fix_Restrictedkeyset_FragmentMolecule Fix_StatusMsg Fix_StepWorldTime_single_argument Fix_Verbose_Codepatterns Fix_fitting_potentials Fixes ForceAnnealing_goodresults ForceAnnealing_oldresults ForceAnnealing_tocheck ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion FragmentAction_writes_AtomFragments FragmentMolecule_checks_bonddegrees GeometryObjects Gui_Fixes Gui_displays_atomic_force_velocity ImplicitCharges IndependentFragmentGrids IndependentFragmentGrids_IndividualZeroInstances IndependentFragmentGrids_IntegrationTest IndependentFragmentGrids_Sole_NN_Calculation JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool JobMarket_unresolvable_hostname_fix MoreRobust_FragmentAutomation ODR_violation_mpqc_open PartialCharges_OrthogonalSummation PdbParser_setsAtomName PythonUI_with_named_parameters QtGui_reactivate_TimeChanged_changes Recreated_GuiChecks Rewrite_FitPartialCharges RotateToPrincipalAxisSystem_UndoRedo SaturateAtoms_findBestMatching SaturateAtoms_singleDegree StoppableMakroAction Subpackage_CodePatterns Subpackage_JobMarket Subpackage_LinearAlgebra Subpackage_levmar Subpackage_mpqc_open Subpackage_vmg Switchable_LogView ThirdParty_MPQC_rebuilt_buildsystem TrajectoryDependenant_MaxOrder TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps TremoloParser_setsAtomName Ubuntu_1604_changes stable
Last change on this file since bd3e55 was bd3e55, checked in by Frederik Heber <heber@…>, 16 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.