ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-3.0/ac-tools/configure.in
Revision: 1509
Committed: Wed Sep 29 17:57:47 2004 UTC (19 years, 9 months ago) by gezelter
File size: 5324 byte(s)
Log Message:
updates

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_LANG_POP
103
104 dnl check for system getopt
105 AC_LANG_PUSH(C)
106 adl_FUNC_GETOPT_LONG
107
108 dnl check for strong optimization options
109
110 case $debug in
111 1)
112 ;;
113 *)
114 ACX_PROG_CC_MAXOPT
115 ACX_PROG_CXX_MAXOPT
116 ACX_PROG_F90_MAXOPT
117 ;;
118 esac
119
120 AC_PROG_INSTALL
121 AC_PROG_LN_S
122 AC_PROG_MAKE_SET
123 AC_PROG_RANLIB
124 AC_PROG_YACC
125 AC_PROG_LEX
126 AC_CHECK_PROG(AR, ar, ar, NONE)
127 if test "$AR" = "NONE"; then
128 AC_MSG_ERROR(--> Can't find \`ar'!)
129 AC_CACHE_SAVE
130 exit 1
131 fi
132
133
134 AC_ARG_WITH(mpi,
135 [AC_HELP_STRING([--with-mpi=<prefix>],
136 [compile with MPI installed in <prefix> [default=no]])],
137 with_mpi=$withval,
138 with_mpi="no")
139
140 case "x$with_mpi" in
141 xyes | "x") USE_MPI=yes;;
142 xno) USE_MPI=no ;;
143 *) MPI="$with_mpi"; USE_MPI=yes ;;
144 esac
145 if test "$USE_MPI" = "yes" -a -z "$with_mpi"; then
146 MPI="/usr/local"
147 fi
148 if test "$USE_MPI" = "yes"; then
149 ACX_MPI
150 fi
151 AC_SUBST(USE_MPI)
152
153 AC_ARG_WITH(sprng,
154 [AC_HELP_STRING([--with-sprng=<prefix>],
155 [compile with SPRNG installed in <prefix> [default=/usr/local]])],
156 with_sprng=$withval,
157 with_sprng="/usr/local")
158
159 case "x$with_sprng" in
160 xyes | "x") USE_SPRNG=yes;;
161 xno) USE_SPRNG=no ;;
162 *) SPRNG="$with_sprng"; USE_SPRNG=yes ;;
163 esac
164 if test "$USE_SPRNG" = "yes" -a -z "$with_sprng"; then
165 SPRNG="/usr/local"
166 fi
167 if test "$USE_SPRNG" = "yes"; then
168 ACX_SPRNG
169 fi
170 AC_SUBST(USE_SPRNG)
171
172
173 CHECK_MKL
174
175
176 AC_EXEEXT
177 AC_OBJEXT
178 OBJEXT=".$OBJEXT"
179
180 OOPSE=oopse
181
182 dnl **** define home dir of oopse
183 if test "x${prefix}" = "xNONE"
184 then
185 OOPSE_HOME=${ac_default_prefix}/oopse
186 else
187 OOPSE_HOME=${prefix}/oopse
188 fi
189 AC_ARG_ENABLE(oopse-home,
190 [ --enable-oopse-home=DIR define oopse home dir [PREFIX/oopse]],
191 [OOPSE_HOME="${enableval}"])
192
193 case "x$INSTALL" in
194 x/*) ;;
195 *) INSTALL=`pwd`/ac-tools/"shtool install -c" ;
196 esac
197
198 MKINSTALLDIRS=`pwd`/ac-tools/"shtool mkdir -p -f"
199
200 dnl **** Define CFLAGS etc empty to prevent configure from setting them
201 CFLAGS=${CFLAGS-""}
202 CXXFLAGS=${CXXFLAGS-""}
203 CPPFLAGS=${CPPFLAGS-""}
204 FFLAGS=${FFLAGS-""}
205 F90FLAGS=${F90FLAGS-""}
206 LDFLAGS=${LDFLAGS-""}
207 DEBUG=${DEBUG-"-g"}
208
209 case $debug in
210 1)
211 FFLAGS="$DEBUG $FFLAGS"
212 F90FLAGS="$DEBUG $F90FLAGS"
213 ;;
214 *)
215 ;;
216 esac
217
218
219 AC_SUBST(EXEEXT)
220 AC_SUBST(OBJEXT)
221 AC_SUBST(BATEXT)
222 AC_SUBST(MKINSTALLDIRS)
223 AC_SUBST(OOPSE)
224 AC_SUBST(OOPSE_HOME)
225 AC_SUBST(SUBDIRS)
226 AC_SUBST(CFLAGS)
227 AC_SUBST(CXXFLAGS)
228 AC_SUBST(CPPFLAGS)
229 AC_SUBST(FFLAGS)
230 AC_SUBST(F90FLAGS)
231 AC_SUBST(LDFLAGS)
232 AC_SUBST(PREPFLAG)
233 AC_SUBST(PREPDEFFLAG)
234 AC_CONFIG_HEADER([src/config.h])
235 AC_CONFIG_FILES([make/Makefile])
236
237 AC_OUTPUT