ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-4/ac-tools/configure.in
Revision: 2027
Committed: Tue Feb 15 06:11:22 2005 UTC (19 years, 4 months ago) by gezelter
File size: 7005 byte(s)
Log Message:
bugfixing residentMem

File Contents

# Content
1 dnl **** Process this file with autoconf to produce a configure script.
2
3 AC_INIT(OOPSE, 2.0, gezelter@nd.edu, oopse)
4 AC_CONFIG_AUX_DIR(ac-tools)
5
6 builtin(include, ac-tools/fortran90.m4)
7 builtin(include, ac-tools/aclocal.m4)
8
9 AC_CONFIG_SRCDIR([src/applications/oopse/oopse.cpp])
10
11 AC_PREFIX_DEFAULT("/usr/local")
12
13 # set program name
14 PROGNAME="oopse"
15 AC_SUBST(PROGNAME)
16
17 # there are two ways to do debugging. One with the --enable-debug flag
18 # and one using the DEBUG environment variable
19
20 debug=0
21 AC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug], [Compile OOPSE in debug mode]), [debug=1])
22 if test "${DEBUG}"; then
23 AC_DEFINE(debug, 1, [Code compiled in debug mode])
24 msg="$msg, debug mode"
25 fi
26 AC_SUBST(debug)
27
28 # who am i
29 AC_CANONICAL_HOST
30
31
32
33 dnl Checks for C compiler
34 AC_PROG_CC([icc xlc gcc cc])
35
36 dnl Checks for C++ compiler
37 AC_PROG_CXX([icpc icc xlc++ xlC CC g++ c++])
38
39 dnl If we are not running g++ then we might need some other flags
40 dnl to get the templates compiled correctly
41 OOPSE_TEMPLATE_FLAGS=""
42 if test $ac_cv_prog_gxx = no; then
43 AC_MSG_CHECKING([checking whether ${CXX} accepts -ptused -no_prelink])
44 echo 'void f(){}' > conftest.cc
45 if test -z "`${CXX} -ptused -no_prelink -c conftest.cc 2>&1`"; then
46 AC_MSG_RESULT(yes)
47 OOPSE_TEMPLATE_FLAGS="-ptused -no_prelink"
48 else
49 AC_MSG_RESULT(no)
50 fi
51 rm -f conftest*
52 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
80 fi
81 AC_SUBST(OOPSE_TEMPLATE_FLAGS)
82 AC_SUBST(EXTRA_CC_FLAG)
83
84 dnl Fortran 90 compilation checks are next
85
86 AC_PROG_F90([ifort ifc f90 xlf90 pgf90 epcf90 f95 xlf95 lf95 fort g95])
87 dnl Check the flag for Fortran90 preprocessing
88 ACX_PROG_F90_PREPFLAG
89 dnl Check to see if a flag is required for preprocessing defines
90 ACX_PROG_F90_PREPDEFFLAG
91 AC_LANG_PUSH(Fortran 90)
92 AC_LANG_PREPROC(Fortran 90)
93 AC_F90_LIBRARY_LDFLAGS
94 dnl How does Fortran mangle function names
95 AC_F90_WRAPPERS
96 AC_SUBST(F90_FUNC)
97 AC_SUBST(F90_FUNC_)
98 dnl Fortran 90 module suffix
99 AC_CHECK_MODSUFFIX
100 dnl Fortran 90 module path specifier
101 AC_CHECK_MODDIRFLAG
102 AC_F90_MODULE_NAMES
103 pat=`echo $ac_cv_f90_module_names | sed 's/.*\(%.*%\).*/\1/'`
104 F90_MODULE_NAMES=empty
105 case $pat in
106 %MODULE%)
107 F90_MODULE_NAMES=UPPER ;;
108 %Module%)
109 F90_MODULE_NAMES=Mixed ;;
110 %module%)
111 F90_MODULE_NAMES=lower ;;
112 *)
113 F90_MODULE_NAMES=unknown ;;
114 esac
115 AC_SUBST(F90_MODULE_NAMES)
116 AC_LANG_POP
117
118 AC_LANG_PUSH(C)
119 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)
120 AC_CHECK_FUNCS(pstat_getstatic sysmp getsysinfo sysctl table)
121 # special check for _system_configuration because AIX <4.3.2 do not
122 # contain the `physmem' member.
123 AC_MSG_CHECKING([for external symbol _system_configuration])
124 AC_TRY_COMPILE([#include <sys/systemcfg.h>],
125 [double x = _system_configuration.physmem;],
126 [AC_MSG_RESULT([yes])
127 AC_DEFINE(HAVE__SYSTEM_CONFIGURATION, 1,
128 [Define if you have the _system_configuration variable.])],
129 [AC_MSG_RESULT([no])])
130
131 dnl check for system getopt
132 adl_FUNC_GETOPT_LONG
133
134 dnl check for strong optimization options
135
136 case $debug in
137 1)
138 ;;
139 *)
140 ACX_PROG_CC_MAXOPT
141 ACX_PROG_CXX_MAXOPT
142 ACX_PROG_F90_MAXOPT
143 ;;
144 esac
145
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
226 BB_ENABLE_DOXYGEN
227
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
271 AC_SUBST(EXEEXT)
272 AC_SUBST(OBJEXT)
273 AC_SUBST(BATEXT)
274 AC_SUBST(MKINSTALLDIRS)
275 AC_SUBST(OOPSE)
276 AC_SUBST(OOPSE_HOME)
277 AC_SUBST(SUBDIRS)
278 AC_SUBST(CFLAGS)
279 AC_SUBST(CXXFLAGS)
280 AC_SUBST(CPPFLAGS)
281 AC_SUBST(FFLAGS)
282 AC_SUBST(F90FLAGS)
283 AC_SUBST(LDFLAGS)
284 AC_SUBST(PREPFLAG)
285 AC_SUBST(PREPDEFFLAG)
286 AC_SUBST(F90_MODULE_NAMES)
287 AC_CONFIG_HEADER([src/config.h])
288 AC_CONFIG_FILES([make/Makefile src/utils/Makefile])
289
290 AC_OUTPUT