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 342 by gezelter, Tue Feb 15 05:59:14 2005 UTC vs.
Revision 1396 by gezelter, Sat Dec 5 02:57:05 2009 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, 2.0, gezelter@nd.edu, oopse)
2 > AC_PREREQ(2.59)
3 > AC_INIT(OpenMD, 1.0, gezelter@nd.edu, openmd)
4   AC_CONFIG_AUX_DIR(ac-tools)
5 + AC_CONFIG_SRCDIR([src/applications/openmd/openmd.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/OpenMD.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/ax_mpi.m4)
13  
14 < AC_CONFIG_SRCDIR([src/applications/oopse/oopse.cpp])
14 > # who am i
15 > AC_CANONICAL_HOST
16  
17   AC_PREFIX_DEFAULT("/usr/local")
18  
19   # set program name
20 < PROGNAME="oopse"
20 > PROGNAME="openmd"
21   AC_SUBST(PROGNAME)
22  
23 + AC_EXEEXT
24 + AC_OBJEXT
25 + OBJEXT=".$OBJEXT"
26 +
27 + OPENMD=openmd
28 +
29 + dnl **** define home dir of OpenMD
30 + if test "x${prefix}" = "xNONE"
31 + then
32 +  OPENMD_HOME=${ac_default_prefix}/openmd
33 + else
34 +  OPENMD_HOME=${prefix}/openmd
35 + fi
36 + AC_ARG_ENABLE(openmd-home,
37 + [  --enable-openmd-home=DIR      define OpenMD home dir [PREFIX/openmd]],
38 + [OPENMD_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  
43   debug=0
44 < AC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug], [Compile OOPSE in debug mode]), [debug=1])
44 > AC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug], [Compile OpenMD in debug mode]), [debug=1])
45   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 < # who am i
52 < AC_CANONICAL_HOST
51 > AC_ARG_ENABLE(single, [AC_HELP_STRING([--enable-single],[compile OpenMD 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 + AC_PROG_CXX([$CXX icpc pathCC pgCC c++ xlc++ xlC g++ CC])
60 + AC_PROG_CC([$CC icc pathcc pgcc cc xlc gcc])
61 + AC_PROG_FC([$FC ifort ifc pathf95 pgf95 xlf95 lf95 epcf90 pathf90 xlf90 f95 f90 gfortran g95 fort], 95)
62  
63 + save_CXX=$CXX
64 + save_CC=$CC
65 + save_FC=$FC
66 + save_LIBS=$LIBS
67  
68 < dnl Checks for C compiler
69 < AC_PROG_CC([icc xlc gcc cc])
68 > AC_LANG([C++])
69 > AX_MPI([USE_MPI="yes"],
70 >       [USE_MPI="no"
71 >       AC_MSG_WARN([No suitable C++ MPI implementation found. openmd_MPI will not be built.])])
72 > AS_IF([test AS_VAR_GET([USE_MPI]) != no],[
73 > AC_LANG([C])
74 > AX_MPI([USE_MPI="yes"],
75 >       [USE_MPI="no"
76 >       AC_MSG_WARN([No suitable C MPI implementation found. openmd_MPI will not be built.])])
77 > ])
78 > AS_IF([test AS_VAR_GET([USE_MPI]) != no],[
79 > AC_LANG([Fortran])
80 > AX_MPI([USE_MPI="yes"],
81 >       [USE_MPI="no"
82 >       AC_MSG_WARN([No suitable Fortran MPI implementation found. openmd_MPI will not be built.])])
83 > ])
84 > AS_IF([test AS_VAR_GET([USE_MPI]) != no],[
85 >        CXX=$MPICXX
86 >        CC=$MPICC
87 >        FC=$MPIFC
88 >        LIBS="$MPILIBS $LIBS"
89 > ],[
90 >        CXX=$save_CXX
91 >        CC=$save_CC
92 >        FC=$save_FC
93 >        LIBS=$save_LIBS
94 > ]
95 > )
96 > AC_SUBST(USE_MPI)
97  
98 < dnl Checks for C++ compiler
99 < AC_PROG_CXX([icpc icc xlc++ xlC CC g++ c++])
100 <
101 < dnl If we are not running g++ then we might need some other flags
102 < dnl to get the templates compiled correctly
103 < OOPSE_TEMPLATE_FLAGS=""
104 < if test $ac_cv_prog_gxx = no; then
105 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -ptused -no_prelink])
106 <  echo 'void f(){}' > conftest.cc
107 <  if test -z "`${CXX} -ptused -no_prelink -c conftest.cc 2>&1`"; then
108 <    AC_MSG_RESULT(yes)
109 <    OOPSE_TEMPLATE_FLAGS="-ptused -no_prelink"
110 <  else
111 <    AC_MSG_RESULT(no)
112 <  fi
113 <  rm -f conftest*
114 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -instances=static])
53 <  echo 'void f(){}' > conftest.cc
54 <  if test -z "`${CXX} -instances=static -c conftest.cc 2>&1`"; then
55 <    AC_MSG_RESULT(yes)
56 <    OOPSE_TEMPLATE_FLAGS="-instances=static"
57 <  else
58 <    AC_MSG_RESULT(no)
59 <  fi
60 <  rm -f conftest*
61 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -pto])
62 <  echo 'void f(){}' > conftest.cc
63 <  if test -z "`${CXX} -pto -c conftest.cc 2>&1`"; then
64 <    AC_MSG_RESULT(yes)
65 <    OOPSE_TEMPLATE_FLAGS="-pto"
66 <  else
67 <    AC_MSG_RESULT(no)
68 <  fi
69 <  rm -f conftest*
70 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -LANG:std])
71 <  echo 'void f(){}' > conftest.cc
72 <  if test -z "`${CXX} -LANG:std -c conftest.cc 2>&1`"; then
73 <    AC_MSG_RESULT(yes)
74 <    
75 <
76 <    EXTRA_CC_FLAG=${EXTRA_CC_FLAG}" -LANG:std"
77 <  else
78 <    AC_MSG_RESULT(no)
79 <  fi
98 > # Checks for programs.
99 > AC_PROG_CPP
100 > AC_PROG_EGREP
101 > AC_PROG_LN_S
102 > AC_PROG_MAKE_SET
103 > AC_PROG_RANLIB
104 > AX_SYS_PERLSHARPBANG
105 > AC_PROG_INSTALL
106 > case "x$INSTALL" in
107 >   x/*) ;;
108 >   *) INSTALL=`pwd`/ac-tools/"shtool install -c" ;
109 > esac
110 > MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f -m 755"
111 > AC_CHECK_PROG(AR, ar, ar, NONE)
112 > if test "$AR" = "NONE"; then
113 >  AC_CACHE_SAVE
114 >  exit 1
115   fi
116 < AC_SUBST(OOPSE_TEMPLATE_FLAGS)
117 < AC_SUBST(EXTRA_CC_FLAG)
116 > AC_PATH_PROG(PS, ps)
117 > AC_CACHE_CHECK([for POSIX or BSD ps syntax], ac_cv_prog_ps_syntax, [
118 >        if $PS ax -o rss > /dev/null 2>&1; then
119 >                ac_cv_prog_ps_ax=yes
120 >        else
121 >                ac_cv_prog_ps_ax=no
122 >        fi
123 >        if $PS -ef -o rss > /dev/null 2>&1; then
124 >                ac_cv_prog_ps_ef=yes
125 >        else
126 >                ac_cv_prog_ps_ef=no
127 >        fi
128 >        if test "$ac_cv_prog_ps_ax" = yes; then
129 >                ac_cv_prog_ps_syntax=BSD
130 >        else
131 >                if test "$ac_cv_prog_ps_ef" = yes; then
132 >                        ac_cv_prog_ps_syntax=POSIX
133 >                else
134 >                        AC_MSG_ERROR(Could not determine ps syntax)
135 >                fi
136 >        fi
137 > ])
138 > AC_DEFINE_UNQUOTED(PSCOMMAND, $PS, [Path to ps program])
139 > if test "$ac_cv_prog_ps_syntax" = BSD; then
140 >  AC_DEFINE(PSTYPE_IS_BSD, 1, [ps uses BSD-style arguments])
141 > else
142 >   if test "$ac_cv_prog_ps_syntax" = POSIX; then
143 >       AC_DEFINE(PSTYPE_IS_POSIX, 1, [ps uses POSIX-style arguments])
144 >   else
145 >       AC_MSG_ERROR(Unknown ps syntax type!)
146 >   fi
147 > fi
148  
149 < dnl Fortran 90 compilation checks are next
150 <
86 < AC_PROG_F90([ifort ifc f90 xlf90 pgf90 epcf90 f95 xlf95 lf95 fort g95])
149 > AC_LANG_PUSH(Fortran)
150 > AC_FC_SRCEXT(F90)
151   dnl Check the flag for Fortran90 preprocessing
152   ACX_PROG_F90_PREPFLAG
153   dnl Check to see if a flag is required for preprocessing defines
154   ACX_PROG_F90_PREPDEFFLAG
155 < AC_LANG_PUSH(Fortran 90)
156 < AC_LANG_PREPROC(Fortran 90)
157 < AC_F90_LIBRARY_LDFLAGS
158 < dnl How does Fortran mangle function names
95 < AC_F90_WRAPPERS
96 < AC_SUBST(F90_FUNC)
97 < AC_SUBST(F90_FUNC_)
155 > AC_FC_WRAPPERS
156 > AC_SUBST(FC_FUNC)
157 > AC_SUBST(FC_FUNC_)
158 > AC_FC_LIBRARY_LDFLAGS
159   dnl Fortran 90 module suffix
160   AC_CHECK_MODSUFFIX
161   dnl Fortran 90 module path specifier
# Line 115 | Line 176 | AC_LANG_POP
176   AC_SUBST(F90_MODULE_NAMES)
177   AC_LANG_POP
178  
179 < AC_LANG_PUSH(C)
180 < AC_CHECK_HEADERS(unistd.h sys/pstat.h sys/sysmp.h sys/sysinfo.h sys/table.h sys/param.h sys/sysctl.h sys/sytemcfg.h machine/hal_sysinfo.h)
181 < AC_CHECK_FUNCS(pstat_getstatic sysmp getsysinfo sysctl table)
179 > AC_LANG_C
180 >
181 > dnl Checks for libraries.
182 > AC_CHECK_LIB(m, asin, , exit)
183 > ACX_CHECK_ZLIB
184 > ACX_CHECK_FFTW
185 > ACX_CHECK_QHULL
186 > ACX_CHECK_OPENBABEL
187 >
188 > # Checks for header files.
189 > AC_HEADER_STDC
190 > AC_CHECK_HEADERS([libintl.h limits.h machine/hal_sysinfo.h stdlib.h string.h strings.h sys/param.h sys/pstat.h sys/sysctl.h sys/sysinfo.h sys/sysmp.h sys/systemcfg.h sys/table.h sys/time.h unistd.h])
191 >
192 > # Checks for typedefs, structures, and compiler characteristics.
193 > AC_HEADER_STDBOOL
194 > AC_C_CONST
195 > AC_C_INLINE
196 > AC_TYPE_SIZE_T
197 > AC_HEADER_TIME
198 >
199 > # Checks for library functions.
200 > AC_FUNC_MALLOC
201 > AC_FUNC_REALLOC
202 > AC_FUNC_SELECT_ARGTYPES
203 > AC_FUNC_STRTOD
204 > AC_CHECK_FUNCS([floor getpagesize gettimeofday memset pow pstat_getdynamic pstat_getstatic select sqrt strcasecmp strchr strdup stricmp strncasecmp strnicmp strstr strtol sysmp getsysinfo sysctl table])
205 >
206   # special check for _system_configuration because AIX <4.3.2 do not
207   # contain the `physmem' member.
208   AC_MSG_CHECKING([for external symbol _system_configuration])
# Line 128 | Line 213 | AC_TRY_COMPILE([#include <sys/systemcfg.h>],
213              [Define if you have the _system_configuration variable.])],
214    [AC_MSG_RESULT([no])])
215  
131 dnl check for system getopt
132 adl_FUNC_GETOPT_LONG
133
216   dnl check for strong optimization options
217  
218   case $debug in
219    1)
220       ;;
221    *)
222 +   ACX_PROG_FC_MAXOPT
223     ACX_PROG_CC_MAXOPT
224     ACX_PROG_CXX_MAXOPT
142   ACX_PROG_F90_MAXOPT
225       ;;
226   esac
227  
146 AC_PROG_INSTALL
147 AC_PROG_LN_S
148 AC_PROG_MAKE_SET
149 AC_PROG_RANLIB
150 AC_PROG_YACC
151 AC_PROG_LEX
152 AC_CHECK_PROG(AR, ar, ar, NONE)
153 if test "$AR" = "NONE"; then
154  AC_MSG_ERROR(--> Can't find \`ar'!)
155  AC_CACHE_SAVE
156  exit 1
157 fi
158
159 AC_PATH_PROG(PS, ps)
160 AC_CACHE_CHECK([for POSIX or BSD ps syntax], ac_cv_prog_ps_syntax, [
161        if $PS ax -o rss > /dev/null 2>&1; then
162                ac_cv_prog_ps_ax=yes
163        else
164                ac_cv_prog_ps_ax=no
165        fi
166        if $PS -ef -o rss > /dev/null 2>&1; then
167                ac_cv_prog_ps_ef=yes
168        else
169                ac_cv_prog_ps_ef=no
170        fi
171        if test "$ac_cv_prog_ps_ax" = yes; then
172                ac_cv_prog_ps_syntax=BSD
173        else
174                if test "$ac_cv_prog_ps_es" = yes; then
175                        ac_cv_prog_ps_syntax=POSIX
176                else
177                        AC_MSG_ERROR(Could not determine ps syntax)
178                fi
179        fi
180 ])
181 AC_DEFINE_UNQUOTED(PSCOMMAND, "$PS", [Path to ps program])
182 AC_DEFINE_UNQUOTED(PSTYPE, $ac_cv_prog_ps_syntax, [ps syntax type])
183
184
185 AC_ARG_WITH(mpi,
186        [AC_HELP_STRING([--with-mpi=<prefix>],
187                [compile with MPI installed in <prefix> [default=no]])],
188        with_mpi=$withval,
189        with_mpi="no")
190
191 case "x$with_mpi" in
192        xyes | "x")  USE_MPI=yes;;
193        xno) USE_MPI=no ;;
194        *) MPI="$with_mpi"; USE_MPI=yes ;;
195 esac
196 if test "$USE_MPI" = "yes" -a -z "$with_mpi"; then
197        MPI="/usr/local"
198 fi
199 if test "$USE_MPI" = "yes"; then
200        ACX_MPI
201 fi
202 AC_SUBST(USE_MPI)
203
204 AC_ARG_WITH(sprng,
205        [AC_HELP_STRING([--with-sprng=<prefix>],
206                [compile with SPRNG installed in <prefix> [default=/usr/local]])],
207        with_sprng=$withval,
208        with_sprng="/usr/local")
209
210 case "x$with_sprng" in
211        xyes | "x")  USE_SPRNG=yes;;
212        xno) USE_SPRNG=no ;;
213        *) SPRNG="$with_sprng"; USE_SPRNG=yes ;;
214 esac
215 if test "$USE_SPRNG" = "yes" -a -z "$with_sprng"; then
216        SPRNG="/usr/local"
217 fi
218 if test "$USE_SPRNG" = "yes"; then
219        ACX_SPRNG
220 fi
221 AC_SUBST(USE_SPRNG)
222
223
224 CHECK_MKL
225
228   BB_ENABLE_DOXYGEN
229  
228 AC_EXEEXT
229 AC_OBJEXT
230 OBJEXT=".$OBJEXT"
231
232 OOPSE=oopse
233
234 dnl **** define home dir of oopse
235 if test "x${prefix}" = "xNONE"
236 then
237  OOPSE_HOME=${ac_default_prefix}/oopse
238 else
239  OOPSE_HOME=${prefix}/oopse
240 fi
241 AC_ARG_ENABLE(oopse-home,
242 [  --enable-oopse-home=DIR      define oopse home dir [PREFIX/oopse]],
243 [OOPSE_HOME="${enableval}"])
244
245 case "x$INSTALL" in
246   x/*) ;;
247   *) INSTALL=`pwd`/ac-tools/"shtool install -c" ;
248 esac
249
250 MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f"
251
252 dnl **** Define CFLAGS etc empty to prevent configure from setting them
253 CFLAGS=${CFLAGS-""}
254 CXXFLAGS=${CXXFLAGS-""}
255 CPPFLAGS=${CPPFLAGS-""}
256 FFLAGS=${FFLAGS-""}
257 F90FLAGS=${F90FLAGS-""}
258 LDFLAGS=${LDFLAGS-""}
259 DEBUG=${DEBUG-"-g"}
260
261 case $debug in
262  1)
263     FFLAGS="$DEBUG $FFLAGS"
264     F90FLAGS="$DEBUG $F90FLAGS"
265     ;;
266  *)
267     ;;
268 esac
269
270
230   AC_SUBST(EXEEXT)
231   AC_SUBST(OBJEXT)
232   AC_SUBST(BATEXT)
233   AC_SUBST(MKINSTALLDIRS)
234 < AC_SUBST(OOPSE)
235 < AC_SUBST(OOPSE_HOME)
234 > AC_SUBST(OPENMD)
235 > AC_SUBST(OPENMD_HOME)
236   AC_SUBST(SUBDIRS)
237   AC_SUBST(CFLAGS)
238   AC_SUBST(CXXFLAGS)
239   AC_SUBST(CPPFLAGS)
240 < AC_SUBST(FFLAGS)
282 < AC_SUBST(F90FLAGS)
240 > AC_SUBST(FCFLAGS)
241   AC_SUBST(LDFLAGS)
284 AC_SUBST(PREPFLAG)
242   AC_SUBST(PREPDEFFLAG)
243   AC_SUBST(F90_MODULE_NAMES)
244 < AC_CONFIG_HEADER([src/config.h])
288 < AC_CONFIG_FILES([make/Makefile src/utils/Makefile])
244 > AC_CONFIG_FILES([make/Makefile src/utils/Makefile src/math/Makefile src/integrators/Makefile src/applications/atom2md/Makefile scripts/filepp], [chmod 0755 scripts/*])
245  
246   AC_OUTPUT

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines