ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/ac-tools/configure.in
Revision: 1631
Committed: Wed Sep 14 21:43:22 2011 UTC (13 years, 10 months ago) by gezelter
File size: 3850 byte(s)
Log Message:
cleaning up the configure script

File Contents

# User Rev Content
1 gezelter 2 dnl **** Process this file with autoconf to produce a configure script.
2 gezelter 1631 AC_PREREQ(2.68)
3     AC_INIT(OpenMD, 2.0, gezelter@nd.edu)
4 gezelter 2 AC_CONFIG_AUX_DIR(ac-tools)
5 gezelter 1390 AC_CONFIG_SRCDIR([src/applications/openmd/openmd.cpp])
6 gezelter 847 AC_CONFIG_HEADER([src/config.h])
7 gezelter 2
8 gezelter 1390 builtin(include, ac-tools/OpenMD.m4)
9 gezelter 811 builtin(include, ac-tools/AC_CXX_HAVE_STL.m4)
10     builtin(include, ac-tools/AC_CXX_NAMESPACES.m4)
11     builtin(include, ac-tools/AC_CXX_STD.m4)
12 gezelter 1372 builtin(include, ac-tools/ax_mpi.m4)
13 gezelter 2
14 gezelter 847 # who am i
15     AC_CANONICAL_HOST
16 gezelter 2
17     AC_PREFIX_DEFAULT("/usr/local")
18    
19     # set program name
20 gezelter 1390 PROGNAME="openmd"
21 gezelter 2 AC_SUBST(PROGNAME)
22    
23 gezelter 847 AC_EXEEXT
24     AC_OBJEXT
25     OBJEXT=".$OBJEXT"
26    
27 gezelter 1390 OPENMD=openmd
28 gezelter 847
29 gezelter 1390 dnl **** define home dir of OpenMD
30 gezelter 847 if test "x${prefix}" = "xNONE"
31     then
32 gezelter 1390 OPENMD_HOME=${ac_default_prefix}/openmd
33 gezelter 847 else
34 gezelter 1390 OPENMD_HOME=${prefix}/openmd
35 gezelter 847 fi
36 gezelter 1390 AC_ARG_ENABLE(openmd-home,
37     [ --enable-openmd-home=DIR define OpenMD home dir [PREFIX/openmd]],
38     [OPENMD_HOME="${enableval}"])
39 gezelter 847
40 gezelter 2 # there are two ways to do debugging. One with the --enable-debug flag
41     # and one using the DEBUG environment variable
42    
43     debug=0
44 gezelter 1390 AC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug], [Compile OpenMD in debug mode]), [debug=1])
45 gezelter 2 if test "${DEBUG}"; then
46     AC_DEFINE(debug, 1, [Code compiled in debug mode])
47     msg="$msg, debug mode"
48     fi
49     AC_SUBST(debug)
50    
51 gezelter 1390 AC_ARG_ENABLE(single, [AC_HELP_STRING([--enable-single],[compile OpenMD in single precision])], ok=$enableval, ok=no)
52 gezelter 961 AC_ARG_ENABLE(float, [AC_HELP_STRING([--enable-float],[synonym for --enable-single])], ok=$enableval)
53     if test "$ok" = "yes"; then
54     AC_DEFINE(SINGLE_PRECISION,1,[Define to compile in single precision.])
55 gezelter 962 USE_SINGLE_PRECISION=yes
56     AC_SUBST(USE_SINGLE_PRECISION)
57 gezelter 961 fi
58    
59 gezelter 1396 AC_PROG_CXX([$CXX icpc pathCC pgCC c++ xlc++ xlC g++ CC])
60     AC_PROG_CC([$CC icc pathcc pgcc cc xlc gcc])
61 gezelter 1225
62 gezelter 1396 save_CXX=$CXX
63     save_CC=$CC
64     save_LIBS=$LIBS
65 gezelter 1225
66 gezelter 1372 AC_LANG([C++])
67 gezelter 1399 AC_CHECK_LIB(c, dlopen, LIBDL="", [AC_CHECK_LIB(dl, dlopen, LIBDL="-ldl")])
68     AC_SUBST(LIBDL)
69 gezelter 1372 AX_MPI([USE_MPI="yes"],
70     [USE_MPI="no"
71 gezelter 1390 AC_MSG_WARN([No suitable C++ MPI implementation found. openmd_MPI will not be built.])])
72 gezelter 1372 AS_IF([test AS_VAR_GET([USE_MPI]) != no],[
73     AC_LANG([C])
74     AX_MPI([USE_MPI="yes"],
75     [USE_MPI="no"
76 gezelter 1390 AC_MSG_WARN([No suitable C MPI implementation found. openmd_MPI will not be built.])])
77 gezelter 1372 ])
78     AS_IF([test AS_VAR_GET([USE_MPI]) != no],[
79     CXX=$MPICXX
80     CC=$MPICC
81 gezelter 1396 LIBS="$MPILIBS $LIBS"
82     ],[
83     CXX=$save_CXX
84     CC=$save_CC
85     LIBS=$save_LIBS
86     ]
87     )
88 gezelter 1225 AC_SUBST(USE_MPI)
89    
90 gezelter 847 # Checks for programs.
91 gezelter 774 AC_PROG_CPP
92     AC_PROG_EGREP
93 gezelter 847 AC_PROG_LN_S
94     AC_PROG_MAKE_SET
95     AC_PROG_RANLIB
96     AX_SYS_PERLSHARPBANG
97     AC_PROG_INSTALL
98     case "x$INSTALL" in
99     x/*) ;;
100     *) INSTALL=`pwd`/ac-tools/"shtool install -c" ;
101     esac
102 gezelter 1395 MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f -m 755"
103 gezelter 847 AC_CHECK_PROG(AR, ar, ar, NONE)
104     if test "$AR" = "NONE"; then
105     AC_CACHE_SAVE
106     exit 1
107 gezelter 2 fi
108    
109 gezelter 753 dnl Checks for libraries.
110 gezelter 847 ACX_CHECK_ZLIB
111 gezelter 957 ACX_CHECK_FFTW
112 chuckv 1200 ACX_CHECK_QHULL
113 gezelter 1210 ACX_CHECK_OPENBABEL
114 gezelter 753
115 gezelter 847 # Checks for header files.
116 gezelter 1631 AC_CHECK_HEADERS([limits.h stdlib.h string.h sys/ioctl.h unistd.h])
117 gezelter 847
118     # Checks for typedefs, structures, and compiler characteristics.
119     AC_HEADER_STDBOOL
120     AC_C_INLINE
121     AC_TYPE_SIZE_T
122    
123     # Checks for library functions.
124     AC_FUNC_MALLOC
125     AC_FUNC_REALLOC
126     AC_FUNC_STRTOD
127 gezelter 1631 AC_CHECK_FUNCS([atexit floor pow select sqrt strcasecmp strchr strdup strncasecmp strstr strtol strtoull])
128 gezelter 847
129     dnl check for strong optimization options
130 gezelter 345
131 gezelter 847 case $debug in
132     1)
133     ;;
134     *)
135     ACX_PROG_CC_MAXOPT
136     ACX_PROG_CXX_MAXOPT
137     ;;
138     esac
139    
140 gezelter 49 BB_ENABLE_DOXYGEN
141 gezelter 2
142     AC_SUBST(EXEEXT)
143     AC_SUBST(OBJEXT)
144     AC_SUBST(BATEXT)
145     AC_SUBST(MKINSTALLDIRS)
146 gezelter 1390 AC_SUBST(OPENMD)
147     AC_SUBST(OPENMD_HOME)
148 gezelter 2 AC_SUBST(SUBDIRS)
149     AC_SUBST(CFLAGS)
150     AC_SUBST(CXXFLAGS)
151     AC_SUBST(CPPFLAGS)
152     AC_SUBST(LDFLAGS)
153 skuang 1298 AC_CONFIG_FILES([make/Makefile src/utils/Makefile src/math/Makefile src/integrators/Makefile src/applications/atom2md/Makefile scripts/filepp], [chmod 0755 scripts/*])
154 gezelter 2
155     AC_OUTPUT