ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/ac-tools/configure.in
(Generate patch)

Comparing trunk/ac-tools/configure.in (file contents):
Revision 2 by gezelter, Fri Sep 24 04:16:43 2004 UTC vs.
Revision 1210 by gezelter, Wed Jan 23 03:45:33 2008 UTC

# Line 1 | Line 1 | dnl **** Process this file with autoconf to produce a
1   dnl **** Process this file with autoconf to produce a configure script.
2 <
3 < AC_INIT(OOPSE, 1.0, gezelter@nd.edu, oopse)
2 > AC_PREREQ(2.59)
3 > AC_INIT(OOPSE, 4.0, gezelter@nd.edu, oopse)
4   AC_CONFIG_AUX_DIR(ac-tools)
5 + AC_CONFIG_SRCDIR([src/applications/oopse/oopse.cpp])
6 + AC_CONFIG_HEADER([src/config.h])
7  
8 < builtin(include, ac-tools/fortran90.m4)
9 < builtin(include, ac-tools/aclocal.m4)
8 > builtin(include, ac-tools/OOPSE.m4)
9 > 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 > builtin(include, ac-tools/CGAL.m4)
13  
14 < AC_CONFIG_SRCDIR([src/oopse.cpp])
14 > # who am i
15 > AC_CANONICAL_HOST
16  
17   AC_PREFIX_DEFAULT("/usr/local")
18  
# Line 14 | Line 20 | AC_SUBST(PROGNAME)
20   PROGNAME="oopse"
21   AC_SUBST(PROGNAME)
22  
23 + AC_EXEEXT
24 + AC_OBJEXT
25 + OBJEXT=".$OBJEXT"
26 +
27 + OOPSE=oopse
28 +
29 + dnl **** define home dir of oopse
30 + if test "x${prefix}" = "xNONE"
31 + then
32 +  OOPSE_HOME=${ac_default_prefix}/oopse
33 + else
34 +  OOPSE_HOME=${prefix}/oopse
35 + fi
36 + AC_ARG_ENABLE(oopse-home,
37 + [  --enable-oopse-home=DIR      define oopse home dir [PREFIX/oopse]],
38 + [OOPSE_HOME="${enableval}"])
39 +
40   # there are two ways to do debugging.  One with the --enable-debug flag
41   # and one using the DEBUG environment variable
42  
# Line 25 | Line 48 | AC_SUBST(debug)
48   fi
49   AC_SUBST(debug)
50  
51 < # who am i
52 < AC_CANONICAL_HOST
51 > AC_ARG_ENABLE(single, [AC_HELP_STRING([--enable-single],[compile OOPSE in single precision])], ok=$enableval, ok=no)
52 > 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 >        USE_SINGLE_PRECISION=yes
56 >        AC_SUBST(USE_SINGLE_PRECISION)
57 > fi
58  
59 < dnl Checks for C compiler
60 < AC_PROG_CC([icc xlc gcc cc])
61 <
62 < dnl Checks for C++ compiler
63 < AC_PROG_CXX([icpc icc xlc++ xlC CC g++ c++])
64 <
65 < dnl If we are not running g++ then we might need some other flags
66 < dnl to get the templates compiled correctly
67 < OOPSE_TEMPLATE_FLAGS=""
68 < if test $ac_cv_prog_gxx = no; then
69 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -ptused -no_prelink])
70 <  echo 'void f(){}' > conftest.cc
71 <  if test -z "`${CXX} -ptused -no_prelink -c conftest.cc 2>&1`"; then
72 <    AC_MSG_RESULT(yes)
73 <    OOPSE_TEMPLATE_FLAGS="-ptused -no_prelink"
74 <  else
75 <    AC_MSG_RESULT(no)
76 <  fi
77 <  rm -f conftest*
78 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -instances=static])
79 <  echo 'void f(){}' > conftest.cc
80 <  if test -z "`${CXX} -instances=static -c conftest.cc 2>&1`"; then
53 <    AC_MSG_RESULT(yes)
54 <    OOPSE_TEMPLATE_FLAGS="-instances=static"
55 <  else
56 <    AC_MSG_RESULT(no)
57 <  fi
58 <  rm -f conftest*
59 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -pto])
60 <  echo 'void f(){}' > conftest.cc
61 <  if test -z "`${CXX} -pto -c conftest.cc 2>&1`"; then
62 <    AC_MSG_RESULT(yes)
63 <    OOPSE_TEMPLATE_FLAGS="-pto"
64 <  else
65 <    AC_MSG_RESULT(no)
66 <  fi
67 <  rm -f conftest*
68 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -LANG:std])
69 <  echo 'void f(){}' > conftest.cc
70 <  if test -z "`${CXX} -LANG:std -c conftest.cc 2>&1`"; then
71 <    AC_MSG_RESULT(yes)
72 <    
73 <
74 <    EXTRA_CC_FLAG=${EXTRA_CC_FLAG}" -LANG:std"
75 <  else
76 <    AC_MSG_RESULT(no)
77 <  fi
59 > # Checks for programs.
60 > AC_PROG_CXX([mpicxx icpc pathCC pgCC c++ xlc++ xlC g++ CC])
61 > AC_PROG_CC([mpicc icc pathcc pgcc cc xlc gcc])
62 > AC_PROG_FC([mpif90 ifort ifc pathf95 pgf95 xlf95 lf95 epcf90 pathf90 xlf90 f95 f90 gfortran g95 fort], 95)
63 > AC_PROG_CPP
64 > AC_PROG_EGREP
65 > AC_PROG_LN_S
66 > AC_PROG_MAKE_SET
67 > AC_PROG_RANLIB
68 > AC_PROG_YACC
69 > AC_PROG_LEX
70 > AX_SYS_PERLSHARPBANG
71 > AC_PROG_INSTALL
72 > case "x$INSTALL" in
73 >   x/*) ;;
74 >   *) INSTALL=`pwd`/ac-tools/"shtool install -c" ;
75 > esac
76 > MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f"
77 > AC_CHECK_PROG(AR, ar, ar, NONE)
78 > if test "$AR" = "NONE"; then
79 >  AC_CACHE_SAVE
80 >  exit 1
81   fi
82 < AC_SUBST(OOPSE_TEMPLATE_FLAGS)
83 < AC_SUBST(EXTRA_CC_FLAG)
82 > AC_PATH_PROG(PS, ps)
83 > AC_CACHE_CHECK([for POSIX or BSD ps syntax], ac_cv_prog_ps_syntax, [
84 >        if $PS ax -o rss > /dev/null 2>&1; then
85 >                ac_cv_prog_ps_ax=yes
86 >        else
87 >                ac_cv_prog_ps_ax=no
88 >        fi
89 >        if $PS -ef -o rss > /dev/null 2>&1; then
90 >                ac_cv_prog_ps_ef=yes
91 >        else
92 >                ac_cv_prog_ps_ef=no
93 >        fi
94 >        if test "$ac_cv_prog_ps_ax" = yes; then
95 >                ac_cv_prog_ps_syntax=BSD
96 >        else
97 >                if test "$ac_cv_prog_ps_ef" = yes; then
98 >                        ac_cv_prog_ps_syntax=POSIX
99 >                else
100 >                        AC_MSG_ERROR(Could not determine ps syntax)
101 >                fi
102 >        fi
103 > ])
104 > AC_DEFINE_UNQUOTED(PSCOMMAND, $PS, [Path to ps program])
105 > if test "$ac_cv_prog_ps_syntax" = BSD; then
106 >  AC_DEFINE(PSTYPE_IS_BSD, 1, [ps uses BSD-style arguments])
107 > else
108 >   if test "$ac_cv_prog_ps_syntax" = POSIX; then
109 >       AC_DEFINE(PSTYPE_IS_POSIX, 1, [ps uses POSIX-style arguments])
110 >   else
111 >       AC_MSG_ERROR(Unknown ps syntax type!)
112 >   fi
113 > fi
114  
115 < dnl Fortran 90 compilation checks are next
116 <
84 < AC_PROG_F90([ifort ifc f90 xlf90 pgf90 epcf90 f95 xlf95 lf95 fort g95])
115 > AC_LANG_PUSH(Fortran)
116 > AC_FC_SRCEXT(F90)
117   dnl Check the flag for Fortran90 preprocessing
118   ACX_PROG_F90_PREPFLAG
119   dnl Check to see if a flag is required for preprocessing defines
120   ACX_PROG_F90_PREPDEFFLAG
121 < AC_LANG_PUSH(Fortran 90)
122 < AC_LANG_PREPROC(Fortran 90)
123 < AC_F90_LIBRARY_LDFLAGS
124 < dnl How does Fortran mangle function names
93 < AC_F90_WRAPPERS
94 < AC_SUBST(F90_FUNC)
95 < AC_SUBST(F90_FUNC_)
121 > AC_FC_WRAPPERS
122 > AC_SUBST(FC_FUNC)
123 > AC_SUBST(FC_FUNC_)
124 > AC_FC_LIBRARY_LDFLAGS
125   dnl Fortran 90 module suffix
126   AC_CHECK_MODSUFFIX
127   dnl Fortran 90 module path specifier
128   AC_CHECK_MODDIRFLAG
129 + AC_F90_MODULE_NAMES
130 + pat=`echo $ac_cv_f90_module_names | sed 's/.*\(%.*%\).*/\1/'`
131 + F90_MODULE_NAMES=empty
132 + case $pat in
133 +       %MODULE%)
134 +          F90_MODULE_NAMES=UPPER ;;
135 +       %Module%)
136 +          F90_MODULE_NAMES=Mixed ;;
137 +       %module%)
138 +          F90_MODULE_NAMES=lower ;;
139 +       *)
140 +          F90_MODULE_NAMES=unknown ;;
141 + esac
142 + AC_SUBST(F90_MODULE_NAMES)
143   AC_LANG_POP
144  
145 < dnl check for system getopt
146 < AC_LANG_PUSH(C)
145 > AC_LANG_C
146 >
147 > dnl Checks for libraries.
148 > AC_CHECK_LIB(m, asin, , exit)
149 > ACX_CHECK_ZLIB
150 > ACX_CHECK_FFTW
151 > ACX_CHECK_QHULL
152 > ACX_CHECK_OPENBABEL
153 >
154 > # Checks for header files.
155 > AC_HEADER_STDC
156 > AC_CHECK_HEADERS([conio.h dlfcn.h fstream.h iostream.h libintl.h limits.h machine/hal_sysinfo.h math.h stddef.h stdio.h stdlib.h string.h strings.h strstream.h sys/param.h sys/pstat.h sys/sysmp.h sys/sysctl.h sys/sysinfo.h sys/systemcfg.h sys/table.h sys/time.h time.h unistd.h zlib.h])
157 >
158 > # Checks for typedefs, structures, and compiler characteristics.
159 > AC_HEADER_STDBOOL
160 > AC_C_CONST
161 > AC_C_INLINE
162 > AC_C_RESTRICT
163 > AC_TYPE_SIZE_T
164 > AC_HEADER_TIME
165 > AC_CHECK_TYPES(clock_t)
166 > AC_C_CONST
167 > AC_C_INLINE
168 >
169 > # Checks for library functions.
170 > AC_FUNC_MALLOC
171 > AC_FUNC_MEMCMP
172 > AC_FUNC_REALLOC
173 > AC_FUNC_SELECT_ARGTYPES
174 > AC_FUNC_STRFTIME
175 > AC_FUNC_STRTOD
176 > AC_CHECK_FUNCS([floor getpagesize gettimeofday memchr memmove memset pow pstat_getdynamic pstat_getstatic rint select snprintf sranddev sqrt strcasecmp strchr strdup stricmp strncasecmp strnicmp strrchr strstr strtol sysmp getsysinfo sysctl table])
177 >
178 > # special check for _system_configuration because AIX <4.3.2 do not
179 > # contain the `physmem' member.
180 > AC_MSG_CHECKING([for external symbol _system_configuration])
181 > AC_TRY_COMPILE([#include <sys/systemcfg.h>],
182 >               [double x = _system_configuration.physmem;],
183 >  [AC_MSG_RESULT([yes])
184 >  AC_DEFINE(HAVE__SYSTEM_CONFIGURATION, 1,
185 >            [Define if you have the _system_configuration variable.])],
186 >  [AC_MSG_RESULT([no])])
187 >
188 > dnl check for system getopt
189   adl_FUNC_GETOPT_LONG
190  
191 + AC_LANG_CPLUSPLUS
192 + AC_CXX_NAMESPACES
193 + AC_CXX_STD
194 + AC_CHECK_HEADERS([ctype.h iostream fstream sstream strstream])
195 + # AC_CPP_FUNC
196 + # ------------------ #
197 + # Checks to see if ANSI C99 CPP variable __func__ works.
198 + # If not, perhaps __FUNCTION__ works instead.
199 + # If not, we'll just define __func__ to "".
200 + AC_DEFUN([AC_CPP_FUNC],
201 + [AC_REQUIRE([AC_PROG_CC_STDC])dnl
202 + AC_CACHE_CHECK([for an ANSI C99-conforming __func__], ac_cv_cpp_func,
203 + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],
204 + [[const char *foo = __func__;]])],
205 +  [ac_cv_cpp_func=yes],
206 +  [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],
207 + [[const char *foo = __FUNCTION__;]])],
208 +  [ac_cv_cpp_func=__FUNCTION__],
209 +  [ac_cv_cpp_func=no])])])
210 + if test $ac_cv_cpp_func = __FUNCTION__; then
211 +  AC_DEFINE(__func__,__FUNCTION__,
212 +            [Define to __FUNCTION__ or "" if `__func__' does not conform to
213 + ANSI C.])
214 + elif test $ac_cv_cpp_func = no; then
215 +  AC_DEFINE(__func__,"",
216 +            [Define to __FUNCTION__ or "" if `__func__' does not conform to
217 + ANSI C.])
218 + fi
219 + ])# AC_CPP_FUNC
220 +
221 + AC_CPP_FUNC
222 + AC_SUBST(__func__)
223 +
224 +
225   dnl check for strong optimization options
226  
227   case $debug in
228    1)
229       ;;
230    *)
231 +   ACX_PROG_FC_MAXOPT
232     ACX_PROG_CC_MAXOPT
233     ACX_PROG_CXX_MAXOPT
114   ACX_PROG_F90_MAXOPT
234       ;;
235   esac
236  
237 < AC_PROG_INSTALL
238 < AC_PROG_LN_S
120 < AC_PROG_MAKE_SET
121 < AC_PROG_RANLIB
122 < AC_PROG_YACC
123 < AC_PROG_LEX
124 < AC_CHECK_PROG(AR, ar, ar, NONE)
125 < if test "$AR" = "NONE"; then
126 <  AC_MSG_ERROR(--> Can't find \`ar'!)
127 <  AC_CACHE_SAVE
128 <  exit 1
129 < fi
237 > dnl OpenBabel needs this:
238 > AC_DEFINE([OBAPI], [], [Used to export symbols for DLL / shared library builds])
239  
240  
241   AC_ARG_WITH(mpi,
# Line 148 | Line 257 | AC_SUBST(USE_MPI)
257   fi
258   AC_SUBST(USE_MPI)
259  
260 < AC_ARG_WITH(sprng,
261 <        [AC_HELP_STRING([--with-sprng=<prefix>],
262 <                [compile with SPRNG installed in <prefix> [default=/usr/local]])],
263 <        with_sprng=$withval,
264 <        with_sprng="/usr/local")
265 <
266 < case "x$with_sprng" in
267 <        xyes | "x")  USE_SPRNG=yes;;
268 <        xno) USE_SPRNG=no ;;
269 <        *) SPRNG="$with_sprng"; USE_SPRNG=yes ;;
161 < esac
162 < if test "$USE_SPRNG" = "yes" -a -z "$with_sprng"; then
163 <        SPRNG="/usr/local"
260 > dnl check for CGAL library
261 > ACX_CGAL
262 > USE_CGAL=no
263 > if test "$acx_cgal_found" == yes; then
264 >        USE_CGAL=yes
265 >        AC_DEFINE(HAVE_CGAL, 1, [Is defined if the CGAL library is available.])
266 >        AC_SUBST(CGAL_CXXFLAGS)
267 >        AC_SUBST(CGAL_LDFLAGS)
268 >        AC_SUBST(CGAL_CPPFLAGS)
269 >        AC_SUBST(CGAL_LIBS)
270   fi
271 < if test "$USE_SPRNG" = "yes"; then
166 <        ACX_SPRNG
167 < fi
168 < AC_SUBST(USE_SPRNG)
271 > AC_SUBST(USE_CGAL)
272  
273  
274 < CHECK_MKL
274 > BB_ENABLE_DOXYGEN
275  
173
174 AC_EXEEXT
175 AC_OBJEXT
176 OBJEXT=".$OBJEXT"
177
178 OOPSE=oopse
179
180 dnl **** define home dir of oopse
181 if test "x${prefix}" = "xNONE"
182 then
183  OOPSE_HOME=${ac_default_prefix}/oopse
184 else
185  OOPSE_HOME=${prefix}/oopse
186 fi
187 AC_ARG_ENABLE(oopse-home,
188 [  --enable-oopse-home=DIR      define oopse home dir [PREFIX/oopse]],
189 [OOPSE_HOME="${enableval}"])
190
191 case "x$INSTALL" in
192   x/*) ;;
193   *) INSTALL=`pwd`/ac-tools/"shtool install -c" ;
194 esac
195
196 MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f"
197
198 dnl **** Final list of subdirs
199 SUBDIRS="libBASS libmdtools src forceFields samples utils utils/sysbuilder third-party "
200
201 dnl **** Define CFLAGS etc empty to prevent configure from setting them
202 CFLAGS=${CFLAGS-""}
203 CXXFLAGS=${CXXFLAGS-""}
204 CPPFLAGS=${CPPFLAGS-""}
205 FFLAGS=${FFLAGS-""}
206 F90FLAGS=${F90FLAGS-""}
207 LDFLAGS=${LDFLAGS-""}
208 DEBUG=${DEBUG-"-g"}
209
210 case $debug in
211  1)
212     FFLAGS="$DEBUG $FFLAGS"
213     F90FLAGS="$DEBUG $F90FLAGS"
214     ;;
215  *)
216     ;;
217 esac
218
219
276   AC_SUBST(EXEEXT)
277   AC_SUBST(OBJEXT)
278   AC_SUBST(BATEXT)
# Line 227 | Line 283 | AC_SUBST(CPPFLAGS)
283   AC_SUBST(CFLAGS)
284   AC_SUBST(CXXFLAGS)
285   AC_SUBST(CPPFLAGS)
286 < AC_SUBST(FFLAGS)
231 < AC_SUBST(F90FLAGS)
286 > AC_SUBST(FCFLAGS)
287   AC_SUBST(LDFLAGS)
233 AC_SUBST(PREPFLAG)
288   AC_SUBST(PREPDEFFLAG)
289 < AC_CONFIG_HEADER([libBASS/config.h libmdtools/config.h])
290 < AC_CONFIG_FILES([Makefile
237 <        libBASS/Makefile libmdtools/Makefile src/Makefile utils/Makefile
238 <        utils/sysbuilder/Makefile  forceFields/Makefile samples/Makefile
239 <        third-party/Makefile
240 <        samples/alkane/Makefile samples/argon/Makefile
241 <        samples/lipid/Makefile samples/minimizer/Makefile
242 <        samples/metals/Makefile samples/water/Makefile
243 <        samples/water/dimer/Makefile samples/water/spce/Makefile
244 <        samples/water/ssd/Makefile samples/water/ssde/Makefile
245 <        samples/water/tip4p/Makefile samples/water/tip3p_ice/Makefile
246 <        samples/zcons/Makefile
247 < ])
289 > AC_SUBST(F90_MODULE_NAMES)
290 > AC_CONFIG_FILES([make/Makefile src/utils/Makefile src/math/Makefile src/applications/atom2md/Makefile scripts/filepp], [chmod 0755 scripts/*])
291  
292   AC_OUTPUT

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines