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 747 by gezelter, Fri Sep 5 21:28:52 2003 UTC vs.
Revision 896 by chuckv, Mon Jan 5 22:18:40 2004 UTC

# Line 11 | Line 11 | AC_PREFIX_DEFAULT("/usr/local")
11  
12   AC_PREFIX_DEFAULT("/usr/local")
13  
14 # what should I build?
15
16 AC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug], [Compile OOPSE in debug mode]), [DEBUG=1])
17
14   # set program name
15   PROGNAME="oopse"
16   AC_SUBST(PROGNAME)
17  
18 + # there are two ways to do debugging.  One with the --enable-debug flag
19 + # and one using the DEBUG environment variable
20 +
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])
24 >        AC_DEFINE(debug, 1, [Code compiled in debug mode])
25    msg="$msg, debug mode"
26   fi
27 < AC_SUBST(DEBUG)
27 > AC_SUBST(debug)
28  
29   # who am i
30   AC_CANONICAL_HOST
31  
32 < dnl Checks for programs.
32 > dnl Checks for C compiler
33   AC_PROG_CC([icc xlc gcc cc])
34 < ACX_PROG_CC_MAXOPT
35 < AC_PROG_CXX([icpc icc xlC g++ c++])
36 < ACX_PROG_CXX_MAXOPT
34 >
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 >    EXTRA_CC_FLAG=${EXTRA_CC_FLAG}" -LANG:std"
75 >  else
76 >    AC_MSG_RESULT(no)
77 >  fi
78 > fi
79 > AC_SUBST(OOPSE_TEMPLATE_FLAGS)
80 > AC_SUBST(EXTRA_CC_FLAG)
81 >
82 > dnl Fortran 90 compilation checks are next
83 >
84   AC_PROG_F90([ifc f90 xlf90 pgf90 epcf90 f95 xlf95 lf95 fort g95])
85 < ACX_PROG_F90_MAXOPT
86 < ACX_PROG_F90_PREPFLAG
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 + dnl check for strong optimization options
102 +
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   AC_PROG_INSTALL
114   AC_PROG_LN_S
115   AC_PROG_MAKE_SET
# Line 50 | Line 123 | AC_LANG_PUSH(Fortran 90)
123    exit 1
124   fi
125  
53 AC_LANG_PUSH(Fortran 90)
54 AC_LANG_PREPROC(Fortran 90)
55 AC_F90_LIBRARY_LDFLAGS
56 dnl how Fortran mangles function names
57 AC_F90_WRAPPERS
58 AC_SUBST(F90_FUNC)
59 AC_SUBST(F90_FUNC_)
60
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]],
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])
131 > AC_SUBST([mpi_dir])
132  
133   AC_MSG_CHECKING([for mpi-lib-directory])
134 < AC_ARG_WITH(MPI_LIBDIR,
135 <              [  --with-mpi-lib-dir=dir  give the path for MPI-libraries [MPI_DIR/lib]],
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=dir  give the path for MPI-include-files [MPI_DIR/include]],
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])
# Line 108 | Line 173 | case "$host" in
173      AC_MSG_RESULT(found $MPI_LIB)
174    ;;
175    *)                         dnl All other machines
176 <    if test -f "$MPI_LIBDIR/libmpi.a" ; then
177 <      MPI_LIB="-lmpi"
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/libmpich.a" ; then
181 <      MPI_LIB="-lmpich"
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
# Line 124 | Line 189 | AM_PATH_SPRNG
189  
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_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   AM_PATH_SPRNG
204   CHECK_MKL
129 AC_CHECK_MPI_F90MOD
205  
131 case $F90 in
132        ifc) fortran_machine_defs='Linux_ifc_machdep$(O)' ;;
133        *) fortran_machine_defs='' ;;
134 esac
135 AC_SUBST([fortran_machine_defs])
206  
207   AC_EXEEXT
208   AC_OBJEXT
# Line 159 | Line 229 | SUBDIRS="libBASS libmdtools src forceFields samples ut
229   MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f"
230  
231   dnl **** Final list of subdirs
232 < SUBDIRS="libBASS libmdtools src forceFields samples utils utils/sysbuilder"
232 > SUBDIRS="libBASS libmdtools src forceFields samples utils utils/sysbuilder staticProps third-party"
233  
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 < #LDFLAGS=${LDFLAGS-""}
240 < #OPTIMIZE=${OPTIMIZE-"-O"}
241 < #DEBUG=${DEBUG-"-g"}
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 <  true)
175 <     CFLAGS="$DEBUG $CFLAGS"
176 <     CXXFLAGS="$DEBUG $CXXFLAGS"
244 >  1)
245       FFLAGS="$DEBUG $FFLAGS"
246       F90FLAGS="$DEBUG $F90FLAGS"
247       ;;
248    *)
181     CFLAGS="$OPTIMIZE $CFLAGS"
182     CXXFLAGS="$OPTIMIZE $CXXFLAGS"
183     FFLAGS="$OPTIMIZE $FFLAGS"
184     F90FLAGS="$OPTIMIZE $F90FLAGS"
249       ;;
250   esac
251  
# Line 205 | Line 269 | AC_CONFIG_FILES([Makefile
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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines