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

Comparing trunk/OOPSE/ac-tools/configure.in (file contents):
Revision 385 by gezelter, Fri Mar 21 20:37:58 2003 UTC vs.
Revision 840 by gezelter, Wed Oct 29 14:29:12 2003 UTC

# Line 1 | Line 1
1   dnl **** Process this file with autoconf to produce a configure script.
2  
3 < AC_INIT(src/oopse.cpp)
3 > AC_INIT(OOPSE, 1.0, gezelter@nd.edu, oopse)
4   AC_CONFIG_AUX_DIR(ac-tools)
5  
6 < AC_PREFIX_DEFAULT("/usr/local")
7 <
6 > builtin(include, ac-tools/fortran90.m4)
7   builtin(include, ac-tools/aclocal.m4)
8  
10 AC_PROG_RANLIB
11 AC_PROG_LN_S
12 AC_PROG_YACC
13 AC_PROG_LEX
9  
10 < AC_SUBST(EXEEXT)
16 < AC_SUBST(OBJEXT)
17 < AC_SUBST(BATEXT)
10 > AC_CONFIG_SRCDIR([src/oopse.cpp])
11  
12 < AC_SUBST(MKINSTALLDIRS)
12 > AC_PREFIX_DEFAULT("/usr/local")
13  
14 < AC_SUBST(OOPSE)
15 < AC_SUBST(OOPSE_HOME)
16 < AC_SUBST(sprng_libdir)
24 < AC_SUBST(mpich_libdir)
25 < AC_SUBST(sprng_include)
26 < AC_SUBST(mpich_include)
27 < AC_SUBST(mpi_f90_mods)
28 < AC_SUBST(SUBDIRS)
14 > # set program name
15 > PROGNAME="oopse"
16 > AC_SUBST(PROGNAME)
17  
18 < OOPSE=oopse
18 > # there are two ways to do debugging.  One with the --enable-debug flag
19 > # and one using the DEBUG environment variable
20  
21 < dnl **** define home dir of oopse
22 < if test "x${prefix}" = "xNONE"
23 < then
24 <  OOPSE_HOME=${ac_default_prefix}/oopse
25 < else
37 <  OOPSE_HOME=${prefix}/oopse
21 > debug=0
22 > AC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug], [Compile OOPSE in debug mode]), [debug=1])
23 > if test "${DEBUG}"; then
24 >        AC_DEFINE(debug, 1, [Code compiled in debug mode])
25 >  msg="$msg, debug mode"
26   fi
27 < AC_ARG_ENABLE(oopse-home,
40 < [  --enable-oopse-home=DIR      define oopse home dir [PREFIX/oopse]],
41 < [OOPSE_HOME="${enableval}"])
27 > AC_SUBST(debug)
28  
29 < dnl **** define C compiler
44 < CC=${CC-icc}
45 < AC_ARG_WITH(cc,
46 < [  --with-cc=PROG               use PROG as C compiler [${CC-icc}]],
47 < [CC="${withval}"])
48 < AC_PROG_CC([icc gcc cc])
49 <
50 < dnl **** define C compiler
51 < CXX=${CXX-icc}
52 < AC_ARG_WITH(cxx,
53 < [  --with-cxx=PROG               use PROG as C++ compiler [${CXX-icc}]],
54 < [CXX="${withval}"])
55 < AC_PROG_CXX([icc g++ c++])
56 <
57 < dnl **** define Fortran compiler
58 < F77=${F77-ifc}
59 < AC_ARG_WITH(f77,
60 < [  --with-f77=PROG              use PROG as Fortran compiler [${F77-ifc}]],
61 < [F77="${withval}"])
62 < AC_PROG_F77([ifc f90])
63 <
64 < dnl **** check if user wants to compile with debugging support
65 < AC_ARG_ENABLE(debug,
66 < [  --enable-debug               turn on debugging [no]],
67 < [case "${enableval}" in
68 <  yes) debug=true ;;
69 <  no)  debug=false ;;
70 <  *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
71 < esac],[debug=false])
72 <
73 <
74 < dnl **** Define CFLAGS etc empty to prevent configure from setting them
75 < CFLAGS=${CFLAGS-""}
76 < FFLAGS=${FFLAGS-""}
77 < LDFLAGS=${LDFLAGS-""}
78 < OPTIMIZE=${OPTIMIZE-""}
79 < DEBUG=${DEBUG-""}
80 <
81 <
82 < dnl **** Check for host type
29 > # who am i
30   AC_CANONICAL_HOST
31  
32 + dnl Checks for C compiler
33 + AC_PROG_CC([icc xlc gcc cc])
34  
35 < if test "x${CFLAGS}" = "x"
36 < then
37 <  if test "x${GCC}" = "xyes"
38 <  then
39 <    dnl **** default settings for gcc
40 <    DEBUG="-g -O2"
41 <    OPTIMIZE="-O2"
42 <    CFLAGS="-fno-common -Wall -pedantic -Wpointer-arith -Wnested-externs"
43 <
44 <    dnl **** check for strength-reduce bug
45 <    ACX_GCC_STRENGTH_REDUCE(CFLAGS="$CFLAGS -fno-strength-reduce")
97 <
98 <    dnl **** some arch-specific optimizations/settings for gcc
99 <    case "${host}" in
100 <      i486-*) CPU_FLAGS="-m486";;
101 <      i586-*) ACX_CHECK_CC_FLAGS(-mcpu=pentium,cpu_pentium,
102 <                 [CPU_FLAGS=-mcpu=pentium],
103 <                 [ACX_CHECK_CC_FLAGS(-mpentium,pentium,
104 <                         [CPU_FLAGS=-mpentium], [CPU_FLAGS=-m486])])
105 <              ;;
106 <      i686-*) ACX_CHECK_CC_FLAGS(-mcpu=pentiumpro,cpu_pentiumpro,
107 <                 [CPU_FLAGS=-mcpu=pentiumpro],
108 <                 [ACX_CHECK_CC_FLAGS(-mpentiumpro,pentiumpro,
109 <                         [CPU_FLAGS=-mpentiumpro], [CPU_FLAGS=-m486])])
110 <              ;;
111 <    esac
112 <
113 <    CFLAGS="$CPU_FLAGS $CFLAGS"
35 > dnl Checks for C++ compiler
36 > AC_PROG_CXX([icpc icc xlC CC g++ c++])
37 > dnl If we are not running g++ then we might need some other flags
38 > dnl to get the templates compiled correctly
39 > OOPSE_TEMPLATE_FLAGS=""
40 > if test $ac_cv_prog_gxx = no; then
41 >  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 <    case "${host}" in
116 <      alpha*-dec-osf4.*)
117 <        CFLAGS="-std1 -w0"
118 <        OPTIMIZE="-O2"
119 <        DEBUG="-g3 -O2"
120 <        ;;
121 <      hppa*-hp-hpux*)
122 <        CFLAGS="-Aa -D_HPUX_SOURCE"
123 <        OPTIMIZE="-O"
124 <        DEBUG="-g -O"
125 <        ;;
126 <      mips-sgi-irix6.[[4-9]]*)
127 <        CFLAGS="-w"
128 <        OPTIMIZE="-O2 -OPT:Olimit=0"
129 <        DEBUG="-g3 -O2 -OPT:Olimit=0"
130 <        ;;
131 <      mips-sgi-irix*)
132 <        CFLAGS="-fullwarn -woff 835"
133 <        OPTIMIZE="-O2 -Olimit 3500"
134 <        ;;
135 <      rs6000-ibm-aix*)
136 <        CFLAGS="-D_ALL_SOURCE"
137 <        OPTIMIZE="-O2"
138 <        DEBUG="-g -O2"
139 <        ;;
140 <      *)
141 <        CFLAGS=""
142 <        OPTIMIZE="-O"
143 <        DEBUG="-g"
144 <        ;;
145 <    esac
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 +    EXTRA_CC_FLAG=${EXTRA_CC_FLAG}" -LANG:std"
73 +  else
74 +    AC_MSG_RESULT(no)
75 +  fi
76   fi
77 + AC_SUBST(OOPSE_TEMPLATE_FLAGS)
78 + AC_SUBST(EXTRA_CC_FLAG)
79  
80 < case $debug in
150 <  true) CFLAGS="$DEBUG $CFLAGS";;
151 <  *) CFLAGS="$OPTIMIZE $CFLAGS";;
152 < esac
80 > dnl Fortran 90 compilation checks are next
81  
82 < dnl **** .exe/.obj file extensions
83 < AC_EXEEXT
84 < AC_OBJEXT
82 > AC_PROG_F90([ifc f90 xlf90 pgf90 epcf90 f95 xlf95 lf95 fort g95])
83 > dnl Check the flag for Fortran90 preprocessing
84 > ACX_PROG_F90_PREPFLAG
85 > dnl Check to see if a flag is required for preprocessing defines
86 > ACX_PROG_F90_PREPDEFFLAG
87 > AC_LANG_PUSH(Fortran 90)
88 > AC_LANG_PREPROC(Fortran 90)
89 > AC_F90_LIBRARY_LDFLAGS
90 > dnl How does Fortran mangle function names
91 > AC_F90_WRAPPERS
92 > AC_SUBST(F90_FUNC)
93 > AC_SUBST(F90_FUNC_)
94 > dnl Fortran 90 module suffix
95 > AC_CHECK_MODSUFFIX
96 > dnl Fortran 90 module path specifier
97 > AC_CHECK_MODDIRFLAG
98  
99 < OBJEXT=".$OBJEXT"
99 > dnl check for strong optimization options
100  
101 < AC_PROG_MAKE_SET
101 > case $debug in
102 >  1)
103 >     ;;
104 >  *)
105 >   ACX_PROG_CC_MAXOPT
106 >   ACX_PROG_CXX_MAXOPT
107 >   ACX_PROG_F90_MAXOPT
108 >     ;;
109 > esac
110  
111 < dnl **** Checks for programs.
111 > AC_PROG_INSTALL
112 > AC_PROG_LN_S
113 > AC_PROG_MAKE_SET
114 > AC_PROG_RANLIB
115 > AC_PROG_YACC
116 > AC_PROG_LEX
117   AC_CHECK_PROG(AR, ar, ar, NONE)
118   if test "$AR" = "NONE"; then
119    AC_MSG_ERROR(--> Can't find \`ar'!)
# Line 167 | Line 121 | AC_F77_LIBRARY_LDFLAGS
121    exit 1
122   fi
123  
124 < AC_F77_LIBRARY_LDFLAGS
124 > AC_MSG_CHECKING([for mpi-directory])
125 > AC_ARG_WITH(mpi_dir,
126 >              [  --with-mpi_dir=MPIDIR   give the path for MPI [/usr/local]],
127 >                MPI_DIR="$withval", MPI_DIR="/usr/local")
128 > AC_MSG_RESULT([$MPI_DIR])
129 > AC_SUBST([mpi_dir])
130  
131 < case $F77 in
132 <        ifc) fortran_machine_defs='Linux_ifc_machdep.$(O)' flibs_extra='-lPEPCF90' ;;
133 <        *) echo $F77; AC_MSG_ERROR([currently only ifc is supported as the fortran compiler. See README for details]) ;;
131 > AC_MSG_CHECKING([for mpi-lib-directory])
132 > AC_ARG_WITH(mpi_libdir,
133 >              [  --with-mpi-libdir=dir  give the path for MPI-libraries [MPI_DIR/lib]],
134 >                MPI_LIBDIR="$withval", MPI_LIBDIR="$MPI_DIR/lib")
135 > AC_MSG_RESULT([$MPI_LIBDIR])
136 > AC_SUBST([MPI_LIBDIR])
137 >
138 > AC_MSG_CHECKING([for mpi-inc-directory])
139 > AC_ARG_WITH(mpi_inc,
140 >              [  --with-mpi_inc=dir  give the path for MPI-include-files [MPI_DIR/include]],
141 >                MPI_INC="$withval", MPI_INC="$MPI_DIR/include")
142 > AC_MSG_RESULT([$MPI_INC])
143 > AC_SUBST([MPI_INC])
144 >
145 >
146 > AC_MSG_CHECKING([for MPI library])
147 > MPI_LIB=""
148 > case "$host" in
149 >  *-ibm-aix*)                dnl IBM/SP2 machines
150 >    dnl checking whether to use signal-based MPI
151 >
152 >    AC_MSG_CHECKING([whether to use signal-based MPI library])
153 >    AC_MSG_RESULT([$PACX_SIGNAL])
154 >    if test "x$PACX_SIGNAL" = "xyes" ; then
155 >      if test -f "$MPI_LIBDIR/libmpi.a" ; then
156 >        MPI_LIB="-lmpi"
157 >      elif test -f "$MPI_LIBDIR/libmpi.so" ; then
158 >        MPI_LIB="-lmpi"
159 >      elif test -f "$MPI_LIBDIR/libmpich.a" ; then
160 >        MPI_LIB="-lmpich"
161 >      else
162 >        AC_MSG_ERROR([neither libmpi nor libmpich found; check path for MPI package first...])
163 >      fi
164 >    else
165 >      if test -f "$MPI_LIBDIR/libmpi_r.a" ; then
166 >         MPI_LIB="-lmpi_r"
167 >      else
168 >         AC_MSG_ERROR([libmpi_r not found; check path for MPI package...])
169 >      fi
170 >    fi
171 >    AC_MSG_RESULT(found $MPI_LIB)
172 >  ;;
173 >  *)                         dnl All other machines
174 >    if test -f "$MPI_LIBDIR/libmpi.a" ; then
175 >      MPI_LIB="-lmpi"
176 >    elif test -f "$MPI_LIBDIR/libmpi.so" ; then
177 >      MPI_LIB="-lmpi"
178 >    elif test -f "$MPI_LIBDIR/libmpich.a" ; then
179 >      MPI_LIB="-lmpich"
180 >    else
181 >      AC_MSG_ERROR([neither libmpi nor libmpich found; check path for MPI package first...])
182 >    fi
183 >    AC_MSG_RESULT(found $MPI_LIB)
184 >  ;;
185   esac
186 < AC_SUBST([fortran_machine_defs])
177 < AC_SUBST([flibs_extra])
186 > AC_SUBST(MPI_LIB)
187  
188 < AC_ARG_WITH(mpi_f90_mods,
180 < [  --with-mpi_f90_mods=<dir>      specify the location of the MPI F90
181 <                                modules (default is
182 <                                /usr/local/include/f90choice],
183 <    [mpi_f90_mods="${withval}"],
184 <    [mpi_f90_mods="/usr/local/include/f90choice"] )
185 < AC_SUBST(mpi_f90_mods)
186 < if test -r $mpi_f90_mods/MPI.mod; then
187 <  AC_DEFINE(USE_MPI_F90_MODS, 1, [define whether we have the MPI f90 modules])
188 < else
189 <  AC_MSG_ERROR(--> Can't find MPI f90 modules!)
190 <  AC_CACHE_SAVE
191 <  exit 1
192 < fi
188 > ACX_MPI
189  
190 < AC_ARG_WITH(sprng_include,
191 < [  --with-sprng_include=<include dir>    specify the location of the sprng
196 <                                         headers (default is
197 <                                         /usr/local/include/sprng)],
198 <        [sprng_include="$withval"],
199 <        [sprng_include="/usr/local/include/sprng"] )
200 < AC_SUBST(sprng_include)
201 < AC_CHECK_HEADERS([$sprng_include/sprng.h],
202 <                 AC_DEFINE(USE_SPRNG, 1, [define whether we have the sprng libraries]),
203 <                 AC_MSG_ERROR(sprng header files not found.))
204 <                
205 < AC_ARG_WITH(sprng_libdir,
206 < [  --with-sprng_libdir=<library dir>    specify the location of the sprng
207 <                                        libraries (default is
208 <                                        /usr/local/lib)],
209 <        [sprng_libdir="$withval"],
210 <        [sprng_libdir="/usr/local/lib"] )
211 < AC_SUBST(sprng_libdir)
212 < AC_CHECK_FILE([$sprng_libdir/libsprng.a],,
213 <                 AC_MSG_ERROR(libsprng.a not found.))
190 > AM_PATH_SPRNG
191 > CHECK_MKL
192  
193 < AC_ARG_WITH(mpich_include,
216 < [  --with-mpich_include=<include dir>    specify the location of the mpich
217 <                                         headers (default is
218 <                                         /usr/local/include)],
219 <        [mpich_include="$withval"],
220 <        [mpich_include="/usr/local/include"] )
221 < AC_SUBST(mpich_include)
222 < AC_CHECK_HEADERS([$mpich_include/mpi.h],
223 <                 AC_DEFINE(HAVE_MPICH, 1, [define whether we have the mpich libraries]),
224 <                 AC_MSG_ERROR(mpich header files not found.))
225 <                
226 < AC_ARG_WITH(mpich_libdir,
227 < [ --with-mpich_libdir=<library dir>    specify the location of the mpich
228 <                                       libraries (default is /usr/local/lib)],
229 <        [mpich_libdir="$withval"],
230 <        [mpich_libdir="/usr/local/lib"] )
231 < AC_SUBST(mpich_libdir)
232 < AC_CHECK_FILE([$mpich_libdir/libmpich.a],,
233 <                 AC_MSG_ERROR(libmpi.a not found.))
193 > AC_CHECK_MPI_F90MOD
194  
195 + AC_EXEEXT
196 + AC_OBJEXT
197 + OBJEXT=".$OBJEXT"
198  
199 < AC_PROG_INSTALL
199 > OOPSE=oopse
200 >
201 > dnl **** define home dir of oopse
202 > if test "x${prefix}" = "xNONE"
203 > then
204 >  OOPSE_HOME=${ac_default_prefix}/oopse
205 > else
206 >  OOPSE_HOME=${prefix}/oopse
207 > fi
208 > AC_ARG_ENABLE(oopse-home,
209 > [  --enable-oopse-home=DIR      define oopse home dir [PREFIX/oopse]],
210 > [OOPSE_HOME="${enableval}"])
211 >
212   case "x$INSTALL" in
213     x/*) ;;
214     *) INSTALL=`pwd`/ac-tools/"shtool install -c" ;
# Line 242 | Line 217 | SUBDIRS="libBASS libmdtools src forceFields"
217   MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f"
218  
219   dnl **** Final list of subdirs
220 < SUBDIRS="libBASS libmdtools src forceFields"
220 > SUBDIRS="libBASS libmdtools src forceFields samples utils utils/sysbuilder staticProps"
221  
222 < dnl **** Create Make.conf
223 < AC_OUTPUT(Make.conf:ac-tools/Make.conf.in)
222 > dnl **** Define CFLAGS etc empty to prevent configure from setting them
223 > CFLAGS=${CFLAGS-""}
224 > CXXFLAGS=${CXXFLAGS-""}
225 > CPPFLAGS=${CPPFLAGS-""}
226 > FFLAGS=${FFLAGS-""}
227 > F90FLAGS=${F90FLAGS-""}
228 > LDFLAGS=${LDFLAGS-""}
229 > DEBUG=${DEBUG-"-g"}
230 >
231 > case $debug in
232 >  1)
233 >     FFLAGS="$DEBUG $FFLAGS"
234 >     F90FLAGS="$DEBUG $F90FLAGS"
235 >     ;;
236 >  *)
237 >     ;;
238 > esac
239 >
240 >
241 > AC_SUBST(EXEEXT)
242 > AC_SUBST(OBJEXT)
243 > AC_SUBST(BATEXT)
244 > AC_SUBST(MKINSTALLDIRS)
245 > AC_SUBST(OOPSE)
246 > AC_SUBST(OOPSE_HOME)
247 > AC_SUBST(SUBDIRS)
248 > AC_SUBST(CFLAGS)
249 > AC_SUBST(CXXFLAGS)
250 > AC_SUBST(CPPFLAGS)
251 > AC_SUBST(FFLAGS)
252 > AC_SUBST(F90FLAGS)
253 > AC_SUBST(LDFLAGS)
254 > AC_SUBST(PREPFLAG)
255 > AC_SUBST(PREPDEFFLAG)
256 > AC_CONFIG_HEADER([libmdtools/config.h])
257 > AC_CONFIG_FILES([Makefile
258 >        libBASS/Makefile libmdtools/Makefile src/Makefile utils/Makefile
259 >        utils/sysbuilder/Makefile  forceFields/Makefile samples/Makefile
260 >        staticProps/Makefile
261 >        samples/alkane/Makefile samples/argon/Makefile
262 >        samples/beadLipid/Makefile samples/lipid/Makefile
263 >        samples/metals/Makefile samples/water/Makefile
264 > ])
265 >
266 > AC_OUTPUT

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines