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 652 by chuckv, Thu Jul 24 21:22:12 2003 UTC vs.
Revision 896 by chuckv, Mon Jan 5 22:18:40 2004 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(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"
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 >    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  
74 <    dnl **** check for strength-reduce bug
96 <    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"
74 >    EXTRA_CC_FLAG=${EXTRA_CC_FLAG}" -LANG:std"
75    else
76 <    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
76 >    AC_MSG_RESULT(no)
77    fi
78   fi
79 + AC_SUBST(OOPSE_TEMPLATE_FLAGS)
80 + AC_SUBST(EXTRA_CC_FLAG)
81  
82 < case $debug in
150 <  true) CFLAGS="$DEBUG $CFLAGS";;
151 <  *) CFLAGS="$OPTIMIZE $CFLAGS";;
152 < esac
82 > dnl Fortran 90 compilation checks are next
83  
84 < dnl **** .exe/.obj file extensions
85 < AC_EXEEXT
86 < AC_OBJEXT
84 > AC_PROG_F90([ifc f90 xlf90 pgf90 epcf90 f95 xlf95 lf95 fort g95])
85 > dnl Check the flag for Fortran90 preprocessing
86 > dnl ACX_PROG_F90_PREPFLAG
87 > dnl Check to see if a flag is required for preprocessing defines
88 > ACX_PROG_F90_PREPDEFFLAG
89 > AC_LANG_PUSH(Fortran 90)
90 > AC_LANG_PREPROC(Fortran 90)
91 > AC_F90_LIBRARY_LDFLAGS
92 > dnl How does Fortran mangle function names
93 > AC_F90_WRAPPERS
94 > AC_SUBST(F90_FUNC)
95 > AC_SUBST(F90_FUNC_)
96 > dnl Fortran 90 module suffix
97 > AC_CHECK_MODSUFFIX
98 > dnl Fortran 90 module path specifier
99 > AC_CHECK_MODDIRFLAG
100  
101 < OBJEXT=".$OBJEXT"
101 > dnl check for strong optimization options
102  
103 < AC_PROG_MAKE_SET
103 > case $debug in
104 >  1)
105 >     ;;
106 >  *)
107 >   ACX_PROG_CC_MAXOPT
108 >   ACX_PROG_CXX_MAXOPT
109 >   ACX_PROG_F90_MAXOPT
110 >     ;;
111 > esac
112  
113 < dnl **** Checks for programs.
113 > AC_PROG_INSTALL
114 > AC_PROG_LN_S
115 > AC_PROG_MAKE_SET
116 > AC_PROG_RANLIB
117 > AC_PROG_YACC
118 > AC_PROG_LEX
119   AC_CHECK_PROG(AR, ar, ar, NONE)
120   if test "$AR" = "NONE"; then
121    AC_MSG_ERROR(--> Can't find \`ar'!)
# Line 167 | Line 123 | fi
123    exit 1
124   fi
125  
126 < AC_F77_LIBRARY_LDFLAGS
126 > AC_MSG_CHECKING([for mpi-directory])
127 > AC_ARG_WITH(mpi_dir,
128 >              [  --with-mpi_dir=MPIDIR   give the path for MPI [/usr/local]],
129 >                MPI_DIR="$withval", MPI_DIR="/usr/local")
130 > AC_MSG_RESULT([$MPI_DIR])
131 > AC_SUBST([mpi_dir])
132  
133 < case $F77 in
134 <        ifc) fortran_machine_defs='Linux_ifc_machdep$(O)' flibs_extra='-lPEPCF90' ;;
135 <        *) echo $F77; AC_MSG_ERROR([currently only ifc is supported as the fortran compiler. See README for details]) ;;
133 > AC_MSG_CHECKING([for mpi-lib-directory])
134 > AC_ARG_WITH(mpi_libdir,
135 >              [  --with-mpi-libdir=dir  give the path for MPI-libraries [MPI_DIR/lib]],
136 >                MPI_LIBDIR="$withval", MPI_LIBDIR="$MPI_DIR/lib")
137 > AC_MSG_RESULT([$MPI_LIBDIR])
138 > AC_SUBST([MPI_LIBDIR])
139 >
140 > AC_MSG_CHECKING([for mpi-inc-directory])
141 > AC_ARG_WITH(mpi_inc,
142 >              [  --with-mpi_inc=dir  give the path for MPI-include-files [MPI_DIR/include]],
143 >                MPI_INC="$withval", MPI_INC="$MPI_DIR/include")
144 > AC_MSG_RESULT([$MPI_INC])
145 > AC_SUBST([MPI_INC])
146 >
147 >
148 > AC_MSG_CHECKING([for MPI library])
149 > MPI_LIB=""
150 > case "$host" in
151 >  *-ibm-aix*)                dnl IBM/SP2 machines
152 >    dnl checking whether to use signal-based MPI
153 >
154 >    AC_MSG_CHECKING([whether to use signal-based MPI library])
155 >    AC_MSG_RESULT([$PACX_SIGNAL])
156 >    if test "x$PACX_SIGNAL" = "xyes" ; then
157 >      if test -f "$MPI_LIBDIR/libmpi.a" ; then
158 >        MPI_LIB="-lmpi"
159 >      elif test -f "$MPI_LIBDIR/libmpi.so" ; then
160 >        MPI_LIB="-lmpi"
161 >      elif test -f "$MPI_LIBDIR/libmpich.a" ; then
162 >        MPI_LIB="-lmpich"
163 >      else
164 >        AC_MSG_ERROR([neither libmpi nor libmpich found; check path for MPI package first...])
165 >      fi
166 >    else
167 >      if test -f "$MPI_LIBDIR/libmpi_r.a" ; then
168 >         MPI_LIB="-lmpi_r"
169 >      else
170 >         AC_MSG_ERROR([libmpi_r not found; check path for MPI package...])
171 >      fi
172 >    fi
173 >    AC_MSG_RESULT(found $MPI_LIB)
174 >  ;;
175 >  *)                         dnl All other machines
176 >    if test -f "$MPI_LIBDIR/libmpich.a" ; then
177 >      MPI_LIB="-lmpich"
178 >    elif test -f "$MPI_LIBDIR/libmpi.so" ; then
179 >      MPI_LIB="-lmpi"
180 >    elif test -f "$MPI_LIBDIR/libmpi.a" ; then
181 >      MPI_LIB="-lmpi"
182 >    else
183 >      AC_MSG_ERROR([neither libmpi nor libmpich found; check path for MPI package first...])
184 >    fi
185 >    AC_MSG_RESULT(found $MPI_LIB)
186 >  ;;
187   esac
188 < AC_SUBST([fortran_machine_defs])
177 < AC_SUBST([flibs_extra])
188 > AC_SUBST(MPI_LIB)
189  
190 < AC_ARG_WITH(mpi_f90_mods,
191 < [  --with-mpi_f90_mods=<dir>      specify the location of the MPI F90
192 <                                modules (default is
193 <                                /usr/local/include/f90choice],
194 <    [mpi_f90_mods="${withval}"],
195 <    [mpi_f90_mods="/usr/local/include/f90choice"] )
185 < AC_SUBST(mpi_f90_mods)
186 < if test -r $mpi_f90_mods/MPI.mod || test -r $mpi_f90_mods/mpi.mod; then
187 <  AC_DEFINE(USE_MPI_F90_MODS, 1, [define whether we have the MPI f90 modules])
190 > ACX_MPI
191 >
192 > AC_CHECK_MPI_F90MOD
193 >
194 > if test "$HAVE_MPI_MOD" = 1; then
195 >        AC_DEFINE(MPI_MOD, 1, [have mpi module])
196   else
197 <  AC_MSG_ERROR(--> Can't find MPI f90 modules!)
198 <  AC_CACHE_SAVE
199 <  exit 1
197 >        AC_LANG([Fortran 90])
198 >        AC_CHECK_HEADERS(mpif.h)
199 >        AC_LANG_RESTORE()
200 >        AC_DEFINE(MPI_H, 1, [have mpi Fortran header file])
201   fi
202  
203 < AC_ARG_WITH(sprng_include,
204 < [  --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.))
203 > AM_PATH_SPRNG
204 > CHECK_MKL
205  
215 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.))
206  
207 + AC_EXEEXT
208 + AC_OBJEXT
209 + OBJEXT=".$OBJEXT"
210  
211 < AC_PROG_INSTALL
211 > OOPSE=oopse
212 >
213 > dnl **** define home dir of oopse
214 > if test "x${prefix}" = "xNONE"
215 > then
216 >  OOPSE_HOME=${ac_default_prefix}/oopse
217 > else
218 >  OOPSE_HOME=${prefix}/oopse
219 > fi
220 > AC_ARG_ENABLE(oopse-home,
221 > [  --enable-oopse-home=DIR      define oopse home dir [PREFIX/oopse]],
222 > [OOPSE_HOME="${enableval}"])
223 >
224   case "x$INSTALL" in
225     x/*) ;;
226     *) INSTALL=`pwd`/ac-tools/"shtool install -c" ;
# Line 242 | Line 229 | dnl **** Final list of subdirs
229   MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f"
230  
231   dnl **** Final list of subdirs
232 < SUBDIRS="libBASS libmdtools src forceFields samples utils"
232 > SUBDIRS="libBASS libmdtools src forceFields samples utils utils/sysbuilder staticProps third-party"
233  
234 < dnl **** Create Make.conf
235 < AC_OUTPUT(Make.conf:ac-tools/Make.conf.in)
234 > dnl **** Define CFLAGS etc empty to prevent configure from setting them
235 > CFLAGS=${CFLAGS-""}
236 > CXXFLAGS=${CXXFLAGS-""}
237 > CPPFLAGS=${CPPFLAGS-""}
238 > FFLAGS=${FFLAGS-""}
239 > F90FLAGS=${F90FLAGS-""}
240 > LDFLAGS=${LDFLAGS-""}
241 > DEBUG=${DEBUG-"-g"}
242 >
243 > case $debug in
244 >  1)
245 >     FFLAGS="$DEBUG $FFLAGS"
246 >     F90FLAGS="$DEBUG $F90FLAGS"
247 >     ;;
248 >  *)
249 >     ;;
250 > esac
251 >
252 >
253 > AC_SUBST(EXEEXT)
254 > AC_SUBST(OBJEXT)
255 > AC_SUBST(BATEXT)
256 > AC_SUBST(MKINSTALLDIRS)
257 > AC_SUBST(OOPSE)
258 > AC_SUBST(OOPSE_HOME)
259 > AC_SUBST(SUBDIRS)
260 > AC_SUBST(CFLAGS)
261 > AC_SUBST(CXXFLAGS)
262 > AC_SUBST(CPPFLAGS)
263 > AC_SUBST(FFLAGS)
264 > AC_SUBST(F90FLAGS)
265 > AC_SUBST(LDFLAGS)
266 > AC_SUBST(PREPFLAG)
267 > AC_SUBST(PREPDEFFLAG)
268 > AC_CONFIG_HEADER([libmdtools/config.h])
269 > AC_CONFIG_FILES([Makefile
270 >        libBASS/Makefile libmdtools/Makefile src/Makefile utils/Makefile
271 >        utils/sysbuilder/Makefile  forceFields/Makefile samples/Makefile
272 >        staticProps/Makefile
273 >        third-party/Makefile
274 >        samples/alkane/Makefile samples/argon/Makefile
275 >        samples/beadLipid/Makefile samples/lipid/Makefile
276 >        samples/metals/Makefile samples/water/Makefile
277 > ])
278 >
279 > AC_OUTPUT

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines