source: configure.ac@ 860145

Action_Thermostats Add_AtomRandomPerturbation Add_RotateAroundBondAction Add_SelectAtomByNameAction Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_StructOpt_integration_tests Automaking_mpqc_open AutomationFragmentation_failures Candidate_v1.6.0 Candidate_v1.6.1 ChangeBugEmailaddress ChangingTestPorts ChemicalSpaceEvaluator Combining_Subpackages Debian_Package_split Debian_package_split_molecuildergui_only Disabling_MemDebug Docu_Python_wait EmpiricalPotential_contain_HomologyGraph_documentation Enable_parallel_make_install Enhance_userguide Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph FitPartialCharges_GlobalError Fix_ChronosMutex Fix_StatusMsg Fix_StepWorldTime_single_argument Fix_Verbose_Codepatterns ForceAnnealing_goodresults ForceAnnealing_oldresults ForceAnnealing_tocheck ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion GeometryObjects Gui_displays_atomic_force_velocity IndependentFragmentGrids_IntegrationTest JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool JobMarket_unresolvable_hostname_fix ODR_violation_mpqc_open PartialCharges_OrthogonalSummation PythonUI_with_named_parameters QtGui_reactivate_TimeChanged_changes Recreated_GuiChecks RotateToPrincipalAxisSystem_UndoRedo StoppableMakroAction Subpackage_levmar Subpackage_mpqc_open Subpackage_vmg ThirdParty_MPQC_rebuilt_buildsystem TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps Ubuntu_1604_changes stable
Last change on this file since 860145 was 2f5562, checked in by Frederik Heber <heber@…>, 8 years ago

Added JobMarket as ThirdParty module, Missing CodePatterns_LDFLAGS in JobMarket.

  • Property mode set to 100644
File size: 18.4 KB
RevLine 
[14de469]1# -*- Autoconf -*-
2# Process this file with autoconf to produce a configure script.
3
4AC_PREREQ(2.59)
[4b5bd2]5AC_INIT(MoleCuilder, 1.5.4, [foo@molecuilder.de], [molecuilder], [http://www.molecuilder.de/])
[bf4b9f]6AC_CONFIG_AUX_DIR([build-aux])
[14de469]7AC_CONFIG_SRCDIR([src/builder.cpp])
[861874]8AC_CONFIG_HEADER([config.h libmolecuilder_config.h])
9AC_CONFIG_MACRO_DIR([m4])
[4ecb2d]10AC_CONFIG_SUBDIRS([ThirdParty/LinearAlgebra])
[14de469]11
[dc322a]12# parallel-tests: use parallel test druver
13# color-tests: us coloring to indicate success/failure when available
14# tar-pax: use newer tar implementation with longer filename (>99 chars)
[3b35e7]15AM_INIT_AUTOMAKE([dist-bzip2 1.5 parallel-tests color-tests tar-pax subdir-objects])
[14de469]16
17# Checks for programs.
18AC_PROG_CXX
[54a746]19AC_PROG_INSTALL
[14de469]20
[0cfc27]21# check for cppunit (taken from svn.apache.org/../xmlbeanscxx)
22AM_PATH_CPPUNIT(1.9.6)
23AM_CONDITIONAL(CONDCPPUNIT, test "$CPPUNIT_LIBS")
24
[c015b3]25dnl Check if we have enable python
26# python module
27AC_MSG_CHECKING(whether to enable python module)
[f99714]28AC_ARG_ENABLE(
29 [python],
30 AS_HELP_STRING([--enable-python],[turn on python module [default=yes]]),
31 enable_python=$enableval,
32 enable_python="yes")
[c015b3]33AC_MSG_RESULT($enable_python)
34AS_IF([test x"$enable_python" != x"no"],[
35 # Python (for boost::python)
36 AM_PATH_PYTHON([2.2])
37 AX_PYTHON
38 AC_DEFINE(HAVE_PYTHON,1, ["Build python module and scripts."])
39])
40AM_CONDITIONAL([CONDPYTHON], [test x"$enable_python" != x"no"])
41AC_SUBST(HAVE_PYTHON)
42
[74459a]43dnl Check whether no extra thread for ActionQueue shall be used
44AC_MSG_CHECKING(whether to enable ActionQueue's run thread)
45AC_ARG_ENABLE(
46 [action_thread],
47 AS_HELP_STRING([--enable-action-thread],[turn on extra run thread for ActionQueue [default=yes]]),
48 enable_action_thread=$enableval,
49 enable_action_thread="no"
50)
51AC_MSG_RESULT($enable_action_thread)
52AS_IF([test x"$enable_action_thread" != x"no"],[
53 AC_DEFINE(HAVE_ACTION_THREAD,1, ["Have extra run thread for ActionQueue."])
54])
55AM_CONDITIONAL([CONDACTIONTHREAD], [test x"$enable_action_thread" != x"no"])
56AC_SUBST(HAVE_ACTION_THREAD)
57
[c015b3]58dnl Check if we have enable qtgui
[e5cec4]59# Qt programs
[c015b3]60AC_MSG_CHECKING(whether to enable Qt-based GUI)
[f99714]61AC_ARG_ENABLE(
62 [qtgui],
63 AS_HELP_STRING([--enable-qtgui],[turn on Qt GUI compilation [default=yes]]),
64 enable_qtgui=$enableval,
65 enable_qtgui="yes")
[c015b3]66AC_MSG_RESULT($enable_qtgui)
67AS_IF([test x"$enable_qtgui" != x"no"],[
[93909a]68 AC_ARG_WITH(
69 [Qt-bin],
70 [AS_HELP_STRING([--with-Qt-bin], [give path to Qt binaries])],
71 [have_qtgui_path=$withval],
72 have_qtgui_path="")
[196702]73 AS_IF([test x"$have_qtgui_path" != x""],[
74 AC_PATH_PROGS([QT_MOC],
75 [moc-qt4 moc],
76 [AC_MSG_ERROR(["Qts moc not found, please use --with-Qt-bin."])],
77 [$have_qtgui_path]
78 )
79 AC_PATH_PROGS([QT_RCC],
80 [rcc-qt4 rcc],
81 [AC_MSG_ERROR(["Qts rcc not found, please use --with-Qt-bin."])],
82 [$have_qtgui_path]
83 )
84 AC_PATH_PROGS([QT_UIC],
85 [uic-qt4 uic],
86 [AC_MSG_ERROR(["Qts uic not found, please use --with-Qt-bin."])],
87 [$have_qtgui_path]
88 )
89 ],[
90 AC_PATH_PROGS([QT_MOC],
91 [moc-qt4 moc],
92 [AC_MSG_ERROR(["Qts moc not found, please use --with-Qt-bin."])]
93 )
94 AC_PATH_PROGS([QT_RCC],
95 [rcc-qt4 rcc],
96 [AC_MSG_ERROR(["Qts rcc not found, please use --with-Qt-bin."])]
97 )
98 AC_PATH_PROGS([QT_UIC],
99 [uic-qt4 uic],
100 [AC_MSG_ERROR(["Qts uic not found, please use --with-Qt-bin."])]
101 )
102 ])
[c015b3]103 PKG_CHECK_MODULES([QT], [QtCore QtGui Qt3D], [
104 ])
105 AC_SUBST([QT_CFLAGS])
106 AC_SUBST([QT_LIBS])
107 AC_DEFINE(HAVE_QTGUI,1, ["Build Qt-based GUI"])
[e5cec4]108])
[c015b3]109AM_CONDITIONAL([CONDQTGUI], [test x"$enable_qtgui" != x"no"])
110AC_SUBST(HAVE_QTGUI)
[e5cec4]111
[3d61c7]112dnl Check whether qtgui captures log or not
113AC_MSG_CHECKING(whether to capture stdout in qtgui)
114AC_ARG_ENABLE(
115 [qtgui_capture_log],
116 AS_HELP_STRING([--enable-qtgui-capture-log],[turn on capturing of log inside qtgui [default=yes]]),
117 enable_qtgui_capture_log=$enableval,
118 enable_qtgui_capture_log="yes"
119)
120AC_MSG_RESULT($enable_qtgui_capture_log)
121AS_IF([test x"$enable_qtgui_capture_log" != x"no"],[
122 AC_DEFINE(QT_CAPTURES_LOG,1, ["Have QtGui capture the stdout."])
123])
124AC_SUBST(QT_CAPTURES_LOG)
125
126
[c76b8b]127# check additionally for QWT to enable plotting of potentials
128AC_MSG_CHECKING(whether to enable Qwt-based plotting)
129#enable_qwt=yes
130AC_ARG_ENABLE(
131 [qwt],
132 AS_HELP_STRING([--enable-qwt],[turn on Qwt compilation [default=yes]]),
133 enable_qwt=$enableval,
134 enable_qwt="yes")
135AC_MSG_RESULT($enable_qwt)
136AS_IF([test x"$enable_qwt" != x"no"],[
137 MOL_AC_HAVE_QWT_IFELSE(
138 [
139 enable_qwt=yes
140 AC_DEFINE(HAVE_QWT,1, ["Build Qwt-based plotting"])
141 ],
142 [
143 enable_qwt=no
144 AC_MSG_WARN([Qwt not found, disabling plotting in QtUI.])
145 ]
146 )
147])
148AM_CONDITIONAL([CONDQWT], [test x"$enable_qwt" != x"no"])
149AC_SUBST(HAVE_QWT)
150
[ec188c]151# use doxygen
152DX_HTML_FEATURE(ON)
153DX_PS_FEATURE(OFF)
154DX_PDF_FEATURE(OFF)
[3158e6]155DX_INIT_DOXYGEN(MoleCuilder, Doxyfile, ${docdir})
[ec188c]156
[6029a6]157# use docbook
158AX_CHECK_DOCBOOK
159
[ec188c]160# use libtool
[a0064e]161LT_INIT([static])
[861874]162
163# Define these substitions here to keep all version information in one place.
164# For information on how to properly maintain the library version information,
165# refer to the libtool manual, section "Updating library version information":
166# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
[4b5bd2]167AC_SUBST([MOLECUILDER_SO_VERSION], [17:0:0])
168AC_SUBST([MOLECUILDER_API_VERSION], [1.5.4])
[06aedc]169
[dc031c]170dnl this macro is used to get the arguments supplied
171dnl to the configure script (./configure --enable-debug)
172dnl Check if we have enable debug support.
173AC_MSG_CHECKING(whether to enable debugging)
174have_debug="no"
[f99714]175AC_ARG_ENABLE(
176 [debug],
177 AS_HELP_STRING([--enable-debug],[turn on debugging [default=no]]),
178 enable_debug=$enableval,
179 enable_debug="no")
180AC_MSG_RESULT($enable_debug)
181AS_IF([test x"$enable_debug" = x"yes"],[
[dc031c]182 AC_DEFINE(MEMDEBUG,1, ["Use memory debugger."])
183 AC_DEFINE(HAVE_DEBUG,1, ["Use debug setting to compile code."])
184 have_debug="yes"
[f99714]185],[
186 AS_IF([test x"$enable_debug" = x"full"],[
187 AC_DEFINE(MEMDEBUG,1, ["Use memory debugger."])
188 AC_DEFINE(LOG_OBSERVER,1, ["Use observer log."])
189 AC_DEFINE(HAVE_DEBUG,2, ["Use debug setting to compile code."])
[4d6d6a]190 dnl AC_DEFINE(QT_DEBUG,, ["Enable Qt debug messages."])
[f99714]191 have_debug="full"
192 ],[
193 AC_DEFINE(NDEBUG,1, ["Don't compile in debugging code."])
194 AC_DEFINE(HAVE_DEBUG,0, ["Use debug setting to compile code."])
[4d6d6a]195 AC_DEFINE(QT_NO_DEBUG_OUTPUT,, ["Disable Qt debug messages."])
[f99714]196 have_debug="no"
197 ])
198])
[dc031c]199AC_SUBST(HAVE_DEBUG)
200
201dnl this macro is used to get the arguments supplied
202dnl to the configure script (./configure --enable-debug)
203dnl Check if we have enable debug support.
[f3b8a5]204AC_MSG_CHECKING(whether to enable internal caching/lazy evaluation)
[f99714]205AC_ARG_ENABLE(
206 [cache],
207 AS_HELP_STRING([--enable-cache],[turn on internal lazy evaluation [default=yes]]),
208 enable_cache=$enableval,
209 enable_cache="yes")
[f3b8a5]210AC_MSG_RESULT($enable_cache)
[f99714]211AS_IF([test x"$enable_cache" != x"no"],[
212 AC_DEFINE(HAVE_CACHE,1, ["cache variables to speed up the code."])
213],[
[dc031c]214 AC_DEFINE(NO_CACHING,1, ["Don't use caching code."])
215 AC_DEFINE(HAVE_CACHE,0, ["cache variables to speed up the code."])
[f99714]216])
[dc031c]217AC_SUBST(HAVE_CACHE)
218
[14de469]219# Checks for libraries.
[861874]220AC_CHECK_LIB(m, sqrt, , AC_MSG_ERROR([compatible libc math library not found]))
[14de469]221
[7d0a4e]222# Pthreads
223ACX_PTHREAD()
224
[f08ae7]225# Boost
[79de12]226BOOST_REQUIRE([1.40])
[f08ae7]227
228# Boost headers only
229BOOST_ANY
[794bc8]230BOOST_ARRAY
[4f04ab8]231BOOST_BIMAP
[f08ae7]232BOOST_BIND
[503acc1]233BOOST_CAST
[f08ae7]234BOOST_CONVERSION
[79de12]235BOOST_EXCEPTION
[f08ae7]236BOOST_FOREACH
237BOOST_FUNCTION
[619a0e]238BOOST_FUSION
[4f04ab8]239BOOST_GRAPH
[30c753]240BOOST_ITERATOR
[794bc8]241BOOST_MULTIARRAY
[4da4de]242BOOST_MULTIINDEXCONTAINER
[619a0e]243BOOST_MPL
[f08ae7]244BOOST_PREPROCESSOR
245BOOST_RANDOM
246BOOST_SMART_PTR
[7f570c]247BOOST_STRING_ALGO
[f08ae7]248BOOST_TOKENIZER
249
250# Boost headers with libraries
[79de12]251BOOST_FILESYSTEM
[d920b9]252BOOST_IOSTREAMS
[79de12]253BOOST_PROGRAM_OPTIONS
[c015b3]254AS_IF([test x"$enable_python" != x"no"], [BOOST_PYTHON])
[d7d022]255BOOST_SERIALIZATION
[79de12]256BOOST_THREADS
[fa861b]257
[f08ae7]258
[e2c2b1]259# CodePatterns library (requiring UnobservedIterator)
[26dc12]260compile_codepatterns="no"
261AM_PATH_CODEPATTERNS([1.3.2], $have_debug,,[
262 # compile from ThirdParty
263 AC_CONFIG_SUBDIRS([ThirdParty/CodePatterns])
264 compile_codepatterns="yes"
265 [CodePatterns_LDFLAGS='-L$(top_builddir)/ThirdParty/CodePatterns/src']
266 [CodePatterns_CFLAGS='-I$(top_srcdir)/ThirdParty/CodePatterns/src']
267 AS_IF([test x"$enable_debug" != x"no"], [
268 [CodePatterns_LIBS='-lcodepatterns-debug']
269 ],[
270 [CodePatterns_LIBS='-lcodepatterns']
271 ])
272 AC_SUBST(CodePatterns_LDFLAGS)
273 AC_SUBST(CodePatterns_CFLAGS)
274 AC_SUBST(CodePatterns_LIBS)
275 #AC_MSG_ERROR([Missing CodePatterns library, please specify PKG_CONFIG_PATH or use --with-codepatterns...])
276])
277AM_CONDITIONAL([COND_COMPILE_CODEPATTERNS], [test x"$compile_codepatterns" = x"yes"])
[3027f8]278
[004d5c]279# JobMarket library (needs boost/archive/iserializer.hpp before MemDebug.hpp)
[830adf]280AC_MSG_CHECKING(whether to enable jobmarket)
[004d5c]281AC_ARG_ENABLE(
282 [jobmarket],
283 AS_HELP_STRING([--enable-jobmarket],[turn on JobMarket feature [default=yes]]),
284 enable_jobmarket=$enableval,
285 enable_jobmarket="yes")
286AC_MSG_RESULT($enable_jobmarket)
[2f5562]287compile_jobmarket="no"
[004d5c]288AS_IF([test x"$enable_jobmarket" != x"no"],[
[d6a7b9]289 # JobMarket library (needs SystemCommandJob with suffix)
[25b05f]290 AM_PATH_JOBMARKET([1.1.6], $have_debug,[
[004d5c]291 # the following is only required if we have JobMarket
292 BOOST_ASIO
293 AC_DEFINE(HAVE_JOBMARKET,1, ["use JobMarket to calculate fragment jobs."])
294 ],[
[2f5562]295 AC_CONFIG_SUBDIRS([ThirdParty/JobMarket])
296 compile_jobmarket="yes"
297 [JobMarket_CFLAGS='-I$(top_srcdir)/ThirdParty/JobMarket/src']
298 [JobMarket_LDFLAGS='-L$(top_builddir)/ThirdParty/JobMarket/src/JobMarket']
299 [JobMarket_LIBS='-lJobMarket']
300 [JobMarket_Controller_LIBS='-lJobMarketController']
301 [JobMarket_Server_LIBS='-lJobMarketServer']
302 [JobMarket_PoolWorker_LIBS='-lJobMarketPoolWorker']
303 AC_SUBST(JobMarket_CFLAGS)
304 AC_SUBST(JobMarket_LDFLAGS)
305 AC_SUBST(JobMarket_LIBS)
306 AC_SUBST(JobMarket_Controller_LIBS)
307 AC_SUBST(JobMarket_Server_LIBS)
308 AC_SUBST(JobMarket_PoolWorker_LIBS)
[004d5c]309 ])
310]
[2f5562]311AM_CONDITIONAL([COND_COMPILE_JOBMARKET], [test x"$compile_jobmarket" = x"yes"])
[004d5c]312#[
313# AC_DEFINE(HAVE_JOBMARKET,0, ["use JobMarket to calculate fragment jobs."])
314#]
315)
316AC_SUBST(HAVE_JOBMARKET)
317AM_CONDITIONAL([CONDJOBMARKET], [test x"$enable_jobmarket" = x"yes"])
[3027f8]318
[d2a0f6d]319# VMG library
320AC_MSG_CHECKING(whether to compile in long-range support via VMG)
321AC_ARG_ENABLE(
322 [vmg],
323 [AS_HELP_STRING([--enable-vmg], [turn on long-range potential calculation via VMG [default=no]])],
324 [enable_vmg=$enableval],
325 enable_vmg="no")
326AC_MSG_RESULT($enable_vmg)
327AS_IF([test x"$enable_vmg" != x"no"],[
328 PKG_CHECK_MODULES(VMG, VMG >= 0.1)
329 AC_SUBST(VMG_CFLAGS)
330 AC_SUBST(VMG_LIBS)
[69c733]331 AC_DEFINE(HAVE_VMG,1, ["use VMG to calculate long-range contributions."])
[8a8c8c]332
333 # check whether to use mpi
334 AC_ARG_WITH(
335 [vmg-mpi],
336 [AS_HELP_STRING([--with-vmg-mpi], [whether to use MPI for communication in VMGJobs])],
337 [with_vmg_mpi=yes],
338 [with_vmg_mpi=no])
339 AS_IF(
340 [test "x$with_vmg_mpi" != xno],
341 [
342 AC_LANG_SAVE
343 AC_LANG_CPLUSPLUS
344 LX_FIND_MPI
345 AC_LANG_RESTORE
346 AS_IF([test "x$have_CXX_mpi" = xyes],[
347 AC_DEFINE([MPICH_SKIP_MPICXX], [1], [Skip C++ bindings])
348 AC_DEFINE([OMPI_SKIP_MPICXX], [1], [Skip C++ bindings])
349 AC_DEFINE([MPI_NO_CPPBIND], [1], [Skip C++ bindings])
350 AC_DEFINE([_MPICC_H], [1], [Skip C++ bindings])
351 AC_DEFINE([MPIBULL_SKIP_MPICXX], [1], [Skip C++ bindings])
352 ])
353 ],
354 [])
[d2a0f6d]355])
356AM_CONDITIONAL([CONDVMG], [test x"$enable_vmg" = x"yes"])
[8a8c8c]357AM_CONDITIONAL([CONDVMGMPI], [test x"$have_CXX_mpi" = x"yes"])
[d2a0f6d]358
359
[f06d52]360# Check for Levenberg-Marquardt implementation
[830adf]361AC_MSG_CHECKING(whether to enable function fitting via levmar)
[48d20d]362AC_ARG_ENABLE(
363 [levmar],
364 AS_HELP_STRING([--enable-levmar],[turn on LevMar feature [default=no]]),
365 enable_levmar=$enableval,
366 enable_levmar="no")
[4d5dfa]367AC_MSG_RESULT($enable_levmar)
[b61bd5]368# don't use AS_IF here as it expands (and tests) AC_F77_FUN even if levmar
[4d5dfa]369# is disabled.
[b61bd5]370if test x"$enable_levmar" = xyes; then
371 AX_LAPACK([enable_levmar=yes],
372 [enable_levmar=no
373 AC_MSG_WARN(["Missing LAPACK, disabling off levmar"])
374 ]
375 )
[4d5dfa]376fi
[b61bd5]377AS_IF([test x"$enable_levmar" = xyes],[
378 AC_MSG_CHECKING(for levmar presence via given path )
[f06d52]379 AC_ARG_WITH(
380 [levmar],
381 [AS_HELP_STRING([--with-levmar], [give path to LevMar package])],
[b61bd5]382 [have_levmar_path=$withval
383 enable_levmar=yes],
[f06d52]384 [enable_levmar=no])
[b61bd5]385 AC_MSG_RESULT($enable_levmar)
386 AS_IF([test -n "$have_levmar_path"],[
387 LEVMAR_CPPFLAGS="-I${have_levmar_path}/include"
388 LEVMAR_LDFLAGS="-L${have_levmar_path}/lib"
389 LEVMAR_LIBS="-llevmar"],[
390 PKG_CHECK_MODULES([LEVMAR],[levmar],[enable_levmar=yes],[
391 AC_MSG_CHECKING(for levmar presence via locate)
392 enable_levmar=no
393 levmar_lib=`locate liblevmar.a | head -n 1 | xargs dirname`
394 levmar_include=`locate levmar.h | head -n 1 | xargs dirname`
395 if test -n "$levmar_lib"; then
396 if test -n "$levmar_include"; then
397 enable_levmar=yes
398 LEVMAR_CPPFLAGS="-I${levmar_include}"
399 LEVMAR_LDFLAGS="-L${levmar_lib}"
400 LEVMAR_LIBS="-llevmar"
401 fi
402 fi
403 AC_MSG_RESULT($enable_levmar)
404 ])
405 ])
406 ],[enable_levmar=no]
407)
408AC_MSG_CHECKING(for levmar usability)
409AS_IF([test x"$enable_levmar" = xyes],[
[f06d52]410 AC_SUBST(LEVMAR_CPPFLAGS)
411 AC_SUBST(LEVMAR_LDFLAGS)
412 AC_SUBST(LEVMAR_LIBS)
[b61bd5]413 AC_DEFINE(HAVE_LEVMAR,1, ["use levmar for non-linear minimisation/potential fitting."])])
414AC_MSG_RESULT($enable_levmar)
[f06d52]415AM_CONDITIONAL([CONDLEVMAR], [test x"$enable_levmar" = x"yes"])
416
[14de469]417# Checks for header files.
418AC_HEADER_STDC
419AC_CHECK_HEADERS([sys/time.h])
420AC_HEADER_STDBOOL
421
[d3a46d]422AC_FUNC_MALLOC
423AC_FUNC_REALLOC
424AC_CHECK_FUNCS([floor pow sqrt strchr])
425
[14de469]426# Checks for typedefs, structures, and compiler characteristics.
427AC_C_CONST
428AC_C_INLINE
429AC_C_RESTRICT
430AC_TYPE_SIZE_T
431
432# Checks for library functions.
433# check for GNU Scientific Library
[bd3e55]434AC_CHECK_HEADERS([gsl/gsl_blas.h])
[db1a72]435AC_SEARCH_LIBS(dnrm2, gslblas gslcblas goto blas cblas)
436AC_SEARCH_LIBS(cblas_dnrm2, gslblas gslcblas blas cblas)
437AC_SEARCH_LIBS(gsl_blas_dnrm2,, gsl)
438#AC_CHECK_LIB(gsl, gsl_blas_dnrm2, , [AC_MSG_ERROR(["No working BLAS found for GSL, stopping."])])
439AC_CHECK_LIB(gsl, main)
[14de469]440
[490038]441# use CppUnit TestRunner or not
[f99714]442AC_MSG_CHECKING(whether to enable ECut TestRunnerClient)
443AC_ARG_ENABLE(
444 [ecut],
445 AS_HELP_STRING([--enable-ecut],[Use ECut TestRunnerClient [default=no]]),
446 enable_ecut=$disableval,
447 enable_ecut="no")
448AC_MSG_RESULT($enable_ecut)
449AS_IF([test x"$enable_ecut" = x"yes"],[
[9b6b2f]450 AC_DEFINE(HAVE_ECUT,1, ["Use ECut TestRunnerClient instead of our own."])
451 AC_SUBST(HAVE_ECUT)
[f99714]452])
[fbbcde]453AM_CONDITIONAL([CONDECUT], [test x"$enable_ecut" = x"yes"])
[9b6b2f]454
[490038]455# with valgrinding testsuite or not
[f3b8a5]456AC_MSG_CHECKING(whether to enable valgrind memory checking in testsuite)
[f99714]457AC_ARG_ENABLE(
458 [valgrind],
459 AS_HELP_STRING([--enable-valgrind],[Use Valgrind on the testsuite [default=no]]),
460 enable_valgrind=$enableval,
461 enable_valgrind="no")
462AC_MSG_RESULT($enable_valgrind)
463AS_IF([test x"$enable_valgrind" = x"yes"], [
[490038]464 AC_CHECK_HEADER([valgrind/valgrind.h],
465 [
466 # check header
467 AC_DEFINE(HAVE_VALGRIND_TESTSUITE,1, ["Use Valgrind to check the testsuite."])
468 # check path
469 AC_PATH_PROG(VALGRIND, [valgrind], [/bin/false])
470 # set variables
471 AC_SUBST(HAVE_VALGRIND_TESTSUITE)
472 AC_SUBST(VALGRIND)
473 ],
474 [
475 AC_MSG_ERROR(["Valgrind support requested but headers not available."])
476 ]
477 )
[f3b8a5]478])
[490038]479
[14de469]480# Check for "extern inline", using a modified version
481# of the test for AC_C_INLINE from acspecific.mt
482AC_CACHE_CHECK([for extern inline], ac_cv_c_extern_inline,
483[ac_cv_c_extern_inline=no
484AC_TRY_COMPILE([extern $ac_cv_c_inline double foo(double x);
485extern $ac_cv_c_inline double foo(double x) { return x+1.0; };
486double foo (double x) { return x + 1.0; };],
487[ foo(1.0) ],
488[ac_cv_c_extern_inline="yes"])
489])
490
491if test "$ac_cv_c_inline" != no ; then
492 AC_DEFINE(HAVE_INLINE,1, ["May use inline routines"])
493 AC_SUBST(HAVE_INLINE)
494fi
495
[bd3e55]496#AC_MSG_NOTICE(["CFLAGS: $CFLAGS, CXXFLAGS: $CXXFLAGS, LDFLAGS: $LDFLAGS, CC: $CC, CXX:, $CXX, MPICC: $MPICC, MPILIBS: $MPILIBS, LIBS: $LIBS"])
[a19da5d]497
[0ca39c]498# test suite
[878044]499
[5079a0]500AC_CONFIG_FILES([
[689639]501 tests/Makefile])
502
[abfc95]503AC_CONFIG_TESTDIR(tests/Calculations)
504AC_CONFIG_FILES([
505 tests/Calculations/atlocal
506 tests/Calculations/Makefile])
507AC_CONFIG_FILES([tests/Calculations/molecuilder], [chmod +x tests/Calculations/molecuilder])
508
[689639]509AC_CONFIG_TESTDIR(tests/CodeChecks)
[d0a719]510AC_CONFIG_FILES([
511 tests/CodeChecks/atlocal
512 tests/CodeChecks/Makefile])
[689639]513
[740d40]514AC_CONFIG_TESTDIR(tests/Fragmentations)
[038713]515AC_CONFIG_FILES([
[740d40]516 tests/Fragmentations/atlocal
517 tests/Fragmentations/Makefile])
518AC_CONFIG_FILES([tests/Fragmentations/molecuilder], [chmod +x tests/Fragmentations/molecuilder])
[689639]519
[0f0407]520AC_CONFIG_TESTDIR(tests/GuiChecks)
521AC_CONFIG_FILES([
522 tests/GuiChecks/atlocal
523 tests/GuiChecks/Makefile])
524AC_CONFIG_FILES([tests/GuiChecks/molecuilder], [chmod +x tests/GuiChecks/molecuilder])
525AC_CONFIG_FILES([tests/GuiChecks/molecuilderguitest], [chmod +x tests/GuiChecks/molecuilderguitest])
[c66ae6]526AC_CONFIG_FILES([tests/GuiChecks/adjacencymatcher], [chmod +x tests/GuiChecks/adjacencymatcher])
[42b40a]527AC_CONFIG_FILES([tests/GuiChecks/trianglematcher], [chmod +x tests/GuiChecks/trianglematcher])
[0f0407]528
[004d5c]529AC_CONFIG_TESTDIR(tests/JobMarket)
530AC_CONFIG_FILES([
531 tests/JobMarket/atlocal
532 tests/JobMarket/Makefile])
533AC_CONFIG_FILES([tests/JobMarket/molecuilder], [chmod +x tests/JobMarket/molecuilder])
534
[689639]535AC_CONFIG_TESTDIR(tests/regression)
536AC_CONFIG_FILES([
537 tests/regression/atlocal
538 tests/regression/Makefile])
539AC_CONFIG_FILES([tests/regression/molecuilder], [chmod +x tests/regression/molecuilder])
[c66ae6]540AC_CONFIG_FILES([tests/regression/adjacencymatcher], [chmod +x tests/regression/adjacencymatcher])
[7d146a]541AC_CONFIG_FILES([tests/regression/trianglematcher], [chmod +x tests/regression/trianglematcher])
[893426]542AC_CONFIG_FILES([tests/regression/runpython], [chmod +x tests/regression/runpython])
[689639]543
544AC_CONFIG_TESTDIR(tests/Tesselations)
[5079a0]545AC_CONFIG_FILES([
[a85f45]546 tests/Tesselations/atlocal
547 tests/Tesselations/Makefile])
548AC_CONFIG_FILES([tests/Tesselations/molecuilder], [chmod +x tests/Tesselations/molecuilder])
[7d146a]549AC_CONFIG_FILES([tests/Tesselations/trianglematcher], [chmod +x tests/Tesselations/trianglematcher])
[689639]550
[5079a0]551AC_CONFIG_FILES([
552 doc/molecuilder.xml])
[6029a6]553AC_CONFIG_FILES([
554 doc/userguide/catalog.xml:doc/userguide/catalog.xml.in])
[861874]555AC_CONFIG_FILES([
[878044]556 MoleCuilder.pc:MoleCuilder.pc.in])
[5079a0]557AC_CONFIG_FILES([
[ec188c]558 doc/Makefile
[6029a6]559 doc/userguide/Makefile
560])
561AC_CONFIG_FILES([
562 Makefile
[938ffd]563 src/Makefile
[c66ae6]564 src/Bond/AdjacencyMatcher/Makefile
[7d146a]565 src/Tesselation/TriangleMatcher/Makefile
[5b991a]566 data/icons/Makefile
[04e1fb]567 utils/Makefile
[85949a]568])
569AC_CONFIG_FILES([
[878044]570 src/unittests/Makefile
[85949a]571])
[d0b3aca]572
[c015b3]573# produce python scripts and tests only when python's present
[24e19e]574AC_CONFIG_TESTDIR([tests/Python])
575AC_CONFIG_FILES([tests/Python/atlocal])
[c015b3]576AM_COND_IF([CONDPYTHON],[
[9fd196]577 AC_CONFIG_FILES([utils/Python/boxmaker.py:utils/Python/boxmaker.py.in], [chmod +x utils/Python/boxmaker.py])
578 AC_CONFIG_FILES([utils/Python/python_wrapper:utils/Python/python_wrapper.in], [chmod +x utils/Python/python_wrapper])
[c015b3]579 AC_CONFIG_FILES([tests/Python/run], [chmod +x tests/Python/run])
580])
[24e19e]581AC_CONFIG_FILES([tests/Python/Makefile])
[d0b3aca]582
[14de469]583AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.