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

Comparing trunk/ac-tools/configure.in (file contents):
Revision 10 by gezelter, Tue Sep 28 22:14:11 2004 UTC vs.
Revision 1372 by gezelter, Tue Oct 20 13:13:16 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(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/ax_mpi.m4)
13 > builtin(include, ac-tools/CGAL.m4)
14  
15 < AC_CONFIG_SRCDIR([src/applications/oopse.cpp])
15 > # who am i
16 > AC_CANONICAL_HOST
17  
18   AC_PREFIX_DEFAULT("/usr/local")
19  
# Line 14 | Line 21 | AC_SUBST(PROGNAME)
21   PROGNAME="oopse"
22   AC_SUBST(PROGNAME)
23  
24 + AC_EXEEXT
25 + AC_OBJEXT
26 + OBJEXT=".$OBJEXT"
27 +
28 + OOPSE=oopse
29 +
30 + dnl **** define home dir of oopse
31 + if test "x${prefix}" = "xNONE"
32 + then
33 +  OOPSE_HOME=${ac_default_prefix}/oopse
34 + else
35 +  OOPSE_HOME=${prefix}/oopse
36 + fi
37 + AC_ARG_ENABLE(oopse-home,
38 + [  --enable-oopse-home=DIR      define oopse home dir [PREFIX/oopse]],
39 + [OOPSE_HOME="${enableval}"])
40 +
41   # there are two ways to do debugging.  One with the --enable-debug flag
42   # and one using the DEBUG environment variable
43  
# Line 25 | Line 49 | AC_SUBST(debug)
49   fi
50   AC_SUBST(debug)
51  
52 < # who am i
53 < AC_CANONICAL_HOST
52 > AC_ARG_ENABLE(single, [AC_HELP_STRING([--enable-single],[compile OOPSE in single precision])], ok=$enableval, ok=no)
53 > AC_ARG_ENABLE(float, [AC_HELP_STRING([--enable-float],[synonym for --enable-single])], ok=$enableval)
54 > if test "$ok" = "yes"; then
55 >        AC_DEFINE(SINGLE_PRECISION,1,[Define to compile in single precision.])
56 >        USE_SINGLE_PRECISION=yes
57 >        AC_SUBST(USE_SINGLE_PRECISION)
58 > fi
59  
60 < dnl Checks for C compiler
61 < AC_PROG_CC([icc xlc gcc cc])
60 > if test x"$CC" != x; then
61 >   AC_CHECK_PROGS(ac_cc_set,[$CC],[no])
62 >   AS_IF([test AS_VAR_GET([ac_cc_set]) != no],[
63 >     AC_PATH_PROG(ac_cc_path,[$ac_cc_set],[no])],[
64 >     AC_ERROR([Specified C compiler $CC doesn't seem to exist!])])
65  
66 < dnl Checks for C++ compiler
67 < AC_PROG_CXX([icpc icc xlc++ xlC CC g++ c++])
66 >   AS_IF([test AS_VAR_GET([ac_cc_path]) != no],[
67 >     AC_MSG_NOTICE([Will attempt to use $CC as C compiler])
68 >     MPICC=$CC
69 >   ],[
70 >     AC_ERROR([Can't find path to user-specified C compiler $CC])])
71 > fi
72  
73 < dnl If we are not running g++ then we might need some other flags
74 < dnl to get the templates compiled correctly
75 < OOPSE_TEMPLATE_FLAGS=""
76 < if test $ac_cv_prog_gxx = no; then
77 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -ptused -no_prelink])
42 <  echo 'void f(){}' > conftest.cc
43 <  if test -z "`${CXX} -ptused -no_prelink -c conftest.cc 2>&1`"; then
44 <    AC_MSG_RESULT(yes)
45 <    OOPSE_TEMPLATE_FLAGS="-ptused -no_prelink"
46 <  else
47 <    AC_MSG_RESULT(no)
48 <  fi
49 <  rm -f conftest*
50 <  AC_MSG_CHECKING([checking whether ${CXX} accepts -instances=static])
51 <  echo 'void f(){}' > conftest.cc
52 <  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 > if test x"$CXX" != x; then
74 >   AC_CHECK_PROGS(ac_cxx_set,[$CXX],[no])
75 >   AS_IF([test AS_VAR_GET([ac_cxx_set]) != no],[
76 >     AC_PATH_PROG(ac_cxx_path,[$ac_cxx_set],[no])],[
77 >     AC_ERROR([Specified C++ compiler $CXX doesn't seem to exist!])])
78  
79 <    EXTRA_CC_FLAG=${EXTRA_CC_FLAG}" -LANG:std"
80 <  else
81 <    AC_MSG_RESULT(no)
82 <  fi
79 >   AS_IF([test AS_VAR_GET([ac_cxx_path]) != no],[
80 >     AC_MSG_NOTICE([Will attempt to use $CXX as C++ compiler])
81 >     MPICXX=$CXX
82 >    ],[
83 >     AC_ERROR([Can't find path to user-specified C++ compiler $CXX])])
84   fi
79 AC_SUBST(OOPSE_TEMPLATE_FLAGS)
80 AC_SUBST(EXTRA_CC_FLAG)
85  
86 < dnl Fortran 90 compilation checks are next
86 > if test x"$FC" != x; then
87 >   AC_CHECK_PROGS(ac_fc_set,[$FC],[no])
88 >   AS_IF([test AS_VAR_GET([ac_fc_set]) != no],[
89 >     AC_PATH_PROG(ac_fc_path,[$ac_fc_set],[no])],[
90 >     AC_ERROR([Specified Fortran compiler $FC doesn't seem to exist!])])
91  
92 < AC_PROG_F90([ifort ifc f90 xlf90 pgf90 epcf90 f95 xlf95 lf95 fort g95])
92 >   AS_IF([test AS_VAR_GET([ac_fc_path]) != no],[
93 >     AC_MSG_NOTICE([Will attempt to use $FC as Fortran compiler])
94 >     MPIFC=$FC
95 >   ],[
96 >     AC_ERROR([Can't find path to user-specified Fortran compiler $FC])])
97 > fi
98 >
99 >
100 > dnl do MPI checks
101 > AC_LANG([C++])
102 > AX_MPI([USE_MPI="yes"],
103 >       [USE_MPI="no"
104 >       AC_MSG_WARN([No suitable C++ MPI implementation found. oopse_MPI will not be built.])])
105 > AS_IF([test AS_VAR_GET([USE_MPI]) != no],[
106 > AC_LANG([C])
107 > AX_MPI([USE_MPI="yes"],
108 >       [USE_MPI="no"
109 >       AC_MSG_WARN([No suitable C MPI implementation found. oopse_MPI will not be built.])])
110 > ])
111 > AS_IF([test AS_VAR_GET([USE_MPI]) != no],[
112 > AC_LANG([Fortran])
113 > AX_MPI([USE_MPI="yes"],
114 >       [USE_MPI="no"
115 >       AC_MSG_WARN([No suitable Fortran MPI implementation found. oopse_MPI will not be built.])])
116 > ])
117 > AS_IF([test AS_VAR_GET([USE_MPI]) != no],[
118 >        CXX=$MPICXX
119 >        CC=$MPICC
120 >        FC=$MPIFC
121 > ])
122 > AC_SUBST(USE_MPI)
123 >
124 > # Checks for programs.
125 > AC_PROG_CXX([$CXX icpc pathCC pgCC c++ xlc++ xlC g++ CC])
126 > AC_PROG_CC([$CC icc pathcc pgcc cc xlc gcc])
127 > AC_PROG_FC([$FC ifort ifc pathf95 pgf95 xlf95 lf95 epcf90 pathf90 xlf90 f95 f90 gfortran g95 fort], 95)
128 > AC_PROG_CPP
129 > AC_PROG_EGREP
130 > AC_PROG_LN_S
131 > AC_PROG_MAKE_SET
132 > AC_PROG_RANLIB
133 > AX_SYS_PERLSHARPBANG
134 > AC_PROG_INSTALL
135 > case "x$INSTALL" in
136 >   x/*) ;;
137 >   *) INSTALL=`pwd`/ac-tools/"shtool install -c" ;
138 > esac
139 > MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f"
140 > AC_CHECK_PROG(AR, ar, ar, NONE)
141 > if test "$AR" = "NONE"; then
142 >  AC_CACHE_SAVE
143 >  exit 1
144 > fi
145 > AC_PATH_PROG(PS, ps)
146 > AC_CACHE_CHECK([for POSIX or BSD ps syntax], ac_cv_prog_ps_syntax, [
147 >        if $PS ax -o rss > /dev/null 2>&1; then
148 >                ac_cv_prog_ps_ax=yes
149 >        else
150 >                ac_cv_prog_ps_ax=no
151 >        fi
152 >        if $PS -ef -o rss > /dev/null 2>&1; then
153 >                ac_cv_prog_ps_ef=yes
154 >        else
155 >                ac_cv_prog_ps_ef=no
156 >        fi
157 >        if test "$ac_cv_prog_ps_ax" = yes; then
158 >                ac_cv_prog_ps_syntax=BSD
159 >        else
160 >                if test "$ac_cv_prog_ps_ef" = yes; then
161 >                        ac_cv_prog_ps_syntax=POSIX
162 >                else
163 >                        AC_MSG_ERROR(Could not determine ps syntax)
164 >                fi
165 >        fi
166 > ])
167 > AC_DEFINE_UNQUOTED(PSCOMMAND, $PS, [Path to ps program])
168 > if test "$ac_cv_prog_ps_syntax" = BSD; then
169 >  AC_DEFINE(PSTYPE_IS_BSD, 1, [ps uses BSD-style arguments])
170 > else
171 >   if test "$ac_cv_prog_ps_syntax" = POSIX; then
172 >       AC_DEFINE(PSTYPE_IS_POSIX, 1, [ps uses POSIX-style arguments])
173 >   else
174 >       AC_MSG_ERROR(Unknown ps syntax type!)
175 >   fi
176 > fi
177 >
178 > AC_LANG_PUSH(Fortran)
179 > AC_FC_SRCEXT(F90)
180   dnl Check the flag for Fortran90 preprocessing
181   ACX_PROG_F90_PREPFLAG
182   dnl Check to see if a flag is required for preprocessing defines
183   ACX_PROG_F90_PREPDEFFLAG
184 < AC_LANG_PUSH(Fortran 90)
185 < AC_LANG_PREPROC(Fortran 90)
186 < AC_F90_LIBRARY_LDFLAGS
187 < dnl How does Fortran mangle function names
93 < AC_F90_WRAPPERS
94 < AC_SUBST(F90_FUNC)
95 < AC_SUBST(F90_FUNC_)
184 > AC_FC_WRAPPERS
185 > AC_SUBST(FC_FUNC)
186 > AC_SUBST(FC_FUNC_)
187 > AC_FC_LIBRARY_LDFLAGS
188   dnl Fortran 90 module suffix
189   AC_CHECK_MODSUFFIX
190   dnl Fortran 90 module path specifier
191   AC_CHECK_MODDIRFLAG
192 + AC_F90_MODULE_NAMES
193 + pat=`echo $ac_cv_f90_module_names | sed 's/.*\(%.*%\).*/\1/'`
194 + F90_MODULE_NAMES=empty
195 + case $pat in
196 +       %MODULE%)
197 +          F90_MODULE_NAMES=UPPER ;;
198 +       %Module%)
199 +          F90_MODULE_NAMES=Mixed ;;
200 +       %module%)
201 +          F90_MODULE_NAMES=lower ;;
202 +       *)
203 +          F90_MODULE_NAMES=unknown ;;
204 + esac
205 + AC_SUBST(F90_MODULE_NAMES)
206   AC_LANG_POP
207  
208 < dnl check for system getopt
103 < AC_LANG_PUSH(C)
104 < adl_FUNC_GETOPT_LONG
208 > AC_LANG_C
209  
210 + dnl Checks for libraries.
211 + AC_CHECK_LIB(m, asin, , exit)
212 + ACX_CHECK_ZLIB
213 + ACX_CHECK_FFTW
214 + ACX_CHECK_QHULL
215 + ACX_CHECK_OPENBABEL
216 +
217 + # Checks for header files.
218 + AC_HEADER_STDC
219 + 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])
220 +
221 + # Checks for typedefs, structures, and compiler characteristics.
222 + AC_HEADER_STDBOOL
223 + AC_C_CONST
224 + AC_C_INLINE
225 + AC_TYPE_SIZE_T
226 + AC_HEADER_TIME
227 +
228 + # Checks for library functions.
229 + AC_FUNC_MALLOC
230 + AC_FUNC_REALLOC
231 + AC_FUNC_SELECT_ARGTYPES
232 + AC_FUNC_STRTOD
233 + 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])
234 +
235 + # special check for _system_configuration because AIX <4.3.2 do not
236 + # contain the `physmem' member.
237 + AC_MSG_CHECKING([for external symbol _system_configuration])
238 + AC_TRY_COMPILE([#include <sys/systemcfg.h>],
239 +               [double x = _system_configuration.physmem;],
240 +  [AC_MSG_RESULT([yes])
241 +  AC_DEFINE(HAVE__SYSTEM_CONFIGURATION, 1,
242 +            [Define if you have the _system_configuration variable.])],
243 +  [AC_MSG_RESULT([no])])
244 +
245   dnl check for strong optimization options
246  
247   case $debug in
248    1)
249       ;;
250    *)
251 +   ACX_PROG_FC_MAXOPT
252     ACX_PROG_CC_MAXOPT
253     ACX_PROG_CXX_MAXOPT
114   ACX_PROG_F90_MAXOPT
254       ;;
255   esac
256  
257 < AC_PROG_INSTALL
258 < AC_PROG_LN_S
259 < AC_PROG_MAKE_SET
260 < AC_PROG_RANLIB
261 < AC_PROG_YACC
262 < AC_PROG_LEX
263 < AC_CHECK_PROG(AR, ar, ar, NONE)
264 < if test "$AR" = "NONE"; then
265 <  AC_MSG_ERROR(--> Can't find \`ar'!)
266 <  AC_CACHE_SAVE
128 <  exit 1
257 > dnl check for CGAL library
258 > ACX_CGAL
259 > USE_CGAL=no
260 > if test "$acx_cgal_found" == yes; then
261 >        USE_CGAL=yes
262 >        AC_DEFINE(HAVE_CGAL, 1, [Is defined if the CGAL library is available.])
263 >        AC_SUBST(CGAL_CXXFLAGS)
264 >        AC_SUBST(CGAL_LDFLAGS)
265 >        AC_SUBST(CGAL_CPPFLAGS)
266 >        AC_SUBST(CGAL_LIBS)
267   fi
268 + AC_SUBST(USE_CGAL)
269  
270  
271 < AC_ARG_WITH(mpi,
133 <        [AC_HELP_STRING([--with-mpi=<prefix>],
134 <                [compile with MPI installed in <prefix> [default=no]])],
135 <        with_mpi=$withval,
136 <        with_mpi="no")
271 > BB_ENABLE_DOXYGEN
272  
138 case "x$with_mpi" in
139        xyes | "x")  USE_MPI=yes;;
140        xno) USE_MPI=no ;;
141        *) MPI="$with_mpi"; USE_MPI=yes ;;
142 esac
143 if test "$USE_MPI" = "yes" -a -z "$with_mpi"; then
144        MPI="/usr/local"
145 fi
146 if test "$USE_MPI" = "yes"; then
147        ACX_MPI
148 fi
149 AC_SUBST(USE_MPI)
150
151 AC_ARG_WITH(sprng,
152        [AC_HELP_STRING([--with-sprng=<prefix>],
153                [compile with SPRNG installed in <prefix> [default=/usr/local]])],
154        with_sprng=$withval,
155        with_sprng="/usr/local")
156
157 case "x$with_sprng" in
158        xyes | "x")  USE_SPRNG=yes;;
159        xno) USE_SPRNG=no ;;
160        *) SPRNG="$with_sprng"; USE_SPRNG=yes ;;
161 esac
162 if test "$USE_SPRNG" = "yes" -a -z "$with_sprng"; then
163        SPRNG="/usr/local"
164 fi
165 if test "$USE_SPRNG" = "yes"; then
166        ACX_SPRNG
167 fi
168 AC_SUBST(USE_SPRNG)
169
170
171 CHECK_MKL
172
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 **** Define CFLAGS etc empty to prevent configure from setting them
199 CFLAGS=${CFLAGS-""}
200 CXXFLAGS=${CXXFLAGS-""}
201 CPPFLAGS=${CPPFLAGS-""}
202 FFLAGS=${FFLAGS-""}
203 F90FLAGS=${F90FLAGS-""}
204 LDFLAGS=${LDFLAGS-""}
205 DEBUG=${DEBUG-"-g"}
206
207 case $debug in
208  1)
209     FFLAGS="$DEBUG $FFLAGS"
210     F90FLAGS="$DEBUG $F90FLAGS"
211     ;;
212  *)
213     ;;
214 esac
215
216
273   AC_SUBST(EXEEXT)
274   AC_SUBST(OBJEXT)
275   AC_SUBST(BATEXT)
# Line 224 | Line 280 | AC_SUBST(CPPFLAGS)
280   AC_SUBST(CFLAGS)
281   AC_SUBST(CXXFLAGS)
282   AC_SUBST(CPPFLAGS)
283 < AC_SUBST(FFLAGS)
228 < AC_SUBST(F90FLAGS)
283 > AC_SUBST(FCFLAGS)
284   AC_SUBST(LDFLAGS)
230 AC_SUBST(PREPFLAG)
285   AC_SUBST(PREPDEFFLAG)
286 < AC_CONFIG_HEADER([src/config.h])
287 < AC_CONFIG_FILES([make/Make.conf])
286 > AC_SUBST(F90_MODULE_NAMES)
287 > AC_CONFIG_FILES([make/Makefile src/utils/Makefile src/math/Makefile src/integrators/Makefile src/applications/atom2md/Makefile scripts/filepp], [chmod 0755 scripts/*])
288  
289   AC_OUTPUT

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines