| 1 | #                                               -*- Autoconf -*- | 
|---|
| 2 | # Process this file with autoconf to produce a configure script. | 
|---|
| 3 |  | 
|---|
| 4 | AC_PREREQ(2.59) | 
|---|
| 5 | AC_INIT(MPQC, 2.3.1, [foo@molecuilder.de], [molecuilder], [http://www.molecuilder.de/]) | 
|---|
| 6 | AC_CONFIG_AUX_DIR([build-aux]) | 
|---|
| 7 | AC_CONFIG_SRCDIR([src/bin/mpqc/mpqc.cc]) | 
|---|
| 8 | AC_CONFIG_HEADERS([src/lib/scconfig.h]) | 
|---|
| 9 | AC_CONFIG_MACRO_DIR([m4]) | 
|---|
| 10 |  | 
|---|
| 11 | # Define these substitions here to keep all version information in one place. | 
|---|
| 12 | # For information on how to properly maintain the library version information, | 
|---|
| 13 | # refer to the libtool manual, section "Updating library version information": | 
|---|
| 14 | # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html | 
|---|
| 15 | AC_SUBST([MPQC_SO_VERSION], [8:0:1]) | 
|---|
| 16 | AC_SUBST([MPQC_API_VERSION], [2.3.1]) | 
|---|
| 17 |  | 
|---|
| 18 | define([sc_mmm_version],[2.3.1]) | 
|---|
| 19 | define([sc_buildid],[]) | 
|---|
| 20 | define([sc_so_version],[8:0:1]) | 
|---|
| 21 |  | 
|---|
| 22 | dnl Process this file with autoconf to produce a configure script. | 
|---|
| 23 | define([AC_CACHE_LOAD], )dnl for debugging configure.in | 
|---|
| 24 | define([AC_CACHE_SAVE], )dnl for debugging configure.in | 
|---|
| 25 |  | 
|---|
| 26 | AC_CANONICAL_SYSTEM | 
|---|
| 27 |  | 
|---|
| 28 | AC_DEFINE_UNQUOTED(HOST_ARCH, "$host", ["host"]) | 
|---|
| 29 | AC_DEFINE_UNQUOTED(TARGET_ARCH, "$target", ["target"]) | 
|---|
| 30 |  | 
|---|
| 31 | dnl define([default_prefix_dash],ifelse(sc_buildid, ,[],[-])) | 
|---|
| 32 | dnl define([default_prefix],builtin(format,"/usr/local/mpqc/%s%s%s", | 
|---|
| 33 | dnl                        sc_mmm_version,default_prefix_dash,sc_buildid)) | 
|---|
| 34 |  | 
|---|
| 35 | SC_MMM_VERSION=sc_mmm_version | 
|---|
| 36 |  | 
|---|
| 37 | SC_SO_VERSION=sc_so_version | 
|---|
| 38 | AC_SUBST(SC_SO_VERSION) | 
|---|
| 39 |  | 
|---|
| 40 | changequote(<<, >>)dnl | 
|---|
| 41 | SC_MAJOR_VERSION=`echo $SC_MMM_VERSION|sed 's/\([0-9]*\)\.[0-9]*\.[0-9]*/\1/'` | 
|---|
| 42 | SC_MINOR_VERSION=`echo $SC_MMM_VERSION|sed 's/[0-9]*\.\([0-9]*\)\.[0-9]*/\1/'` | 
|---|
| 43 | SC_MICRO_VERSION=`echo $SC_MMM_VERSION|sed 's/[0-9]*\.[0-9]*\.\([0-9]*\)/\1/'` | 
|---|
| 44 | changequote([, ])dnl | 
|---|
| 45 | AC_DEFINE_UNQUOTED(SC_MAJOR_VERSION,$SC_MAJOR_VERSION, ["major version number"]) | 
|---|
| 46 | AC_DEFINE_UNQUOTED(SC_MINOR_VERSION,$SC_MINOR_VERSION, ["minor version number"]) | 
|---|
| 47 | AC_DEFINE_UNQUOTED(SC_MICRO_VERSION,$SC_MICRO_VERSION, ["micro version number"]) | 
|---|
| 48 |  | 
|---|
| 49 | EXCLUDED_DIRS= | 
|---|
| 50 |  | 
|---|
| 51 | # Checks for programs. | 
|---|
| 52 | AC_PROG_CXX | 
|---|
| 53 | AC_PROG_INSTALL | 
|---|
| 54 |  | 
|---|
| 55 | # use doxygen | 
|---|
| 56 | DX_HTML_FEATURE(ON) | 
|---|
| 57 | DX_PS_FEATURE(OFF) | 
|---|
| 58 | DX_PDF_FEATURE(OFF) | 
|---|
| 59 | DX_INIT_DOXYGEN(MPQC, doxygen.cfg, ${docdir}) | 
|---|
| 60 |  | 
|---|
| 61 | # parallel-tests: use parallel test druver | 
|---|
| 62 | # color-tests: us coloring to indicate success/failure when available | 
|---|
| 63 | # tar-pax: use newer tar implementation with longer filename (>99 chars) | 
|---|
| 64 | AM_INIT_AUTOMAKE([dist-bzip2 1.5 parallel-tests color-tests tar-pax subdir-objects]) | 
|---|
| 65 |  | 
|---|
| 66 | dnl --------- Features --------- | 
|---|
| 67 |  | 
|---|
| 68 | AC_ARG_ENABLE(debug, | 
|---|
| 69 | [  --enable-debug          Compile with debugging options], | 
|---|
| 70 | [ | 
|---|
| 71 | case $enableval in | 
|---|
| 72 | yes) | 
|---|
| 73 | DEBUG=yes | 
|---|
| 74 | ;; | 
|---|
| 75 | no) | 
|---|
| 76 | DEBUG=no | 
|---|
| 77 | ;; | 
|---|
| 78 | opt) | 
|---|
| 79 | DEBUG=opt | 
|---|
| 80 | ;; | 
|---|
| 81 | *) | 
|---|
| 82 | AC_MSG_ERROR([Invalid value for --enable-debug ($enableval)]) | 
|---|
| 83 | ;; | 
|---|
| 84 | esac | 
|---|
| 85 | ],[ | 
|---|
| 86 | DEBUG=no | 
|---|
| 87 | ] | 
|---|
| 88 | ) | 
|---|
| 89 |  | 
|---|
| 90 | AC_ARG_ENABLE(strict-arch, | 
|---|
| 91 | [  --enable-strict-arch    Code might only work on target cpu type], | 
|---|
| 92 | [ | 
|---|
| 93 | case $enableval in | 
|---|
| 94 | yes) | 
|---|
| 95 | STRICT_ARCH=yes | 
|---|
| 96 | ;; | 
|---|
| 97 | no) | 
|---|
| 98 | STRICT_ARCH=no | 
|---|
| 99 | ;; | 
|---|
| 100 | *) | 
|---|
| 101 | AC_MSG_ERROR([Invalid value for --enable-strict-arch ($enableval)]) | 
|---|
| 102 | ;; | 
|---|
| 103 | esac | 
|---|
| 104 | ],[ | 
|---|
| 105 | STRICT_ARCH=no | 
|---|
| 106 | ] | 
|---|
| 107 | ) | 
|---|
| 108 |  | 
|---|
| 109 | enableproduction=no | 
|---|
| 110 | AC_ARG_ENABLE(production, | 
|---|
| 111 | [  --enable-production     Prepare for a production install.], | 
|---|
| 112 | [ | 
|---|
| 113 | case $enableval in | 
|---|
| 114 | yes) | 
|---|
| 115 | enableproduction=yes | 
|---|
| 116 | ;; | 
|---|
| 117 | no) | 
|---|
| 118 | ;; | 
|---|
| 119 | *) | 
|---|
| 120 | AC_MSG_ERROR([Invalid value for --enable-production ($enableval)]) | 
|---|
| 121 | ;; | 
|---|
| 122 | esac | 
|---|
| 123 | ]) | 
|---|
| 124 |  | 
|---|
| 125 | AC_ARG_ENABLE(sysv-ipc, | 
|---|
| 126 | [  --disable-sysv-ipc      Disable use of SysV IPC.], | 
|---|
| 127 | [ | 
|---|
| 128 | case $enableval in | 
|---|
| 129 | yes) | 
|---|
| 130 | SYSVIPC=yes | 
|---|
| 131 | ;; | 
|---|
| 132 | no) | 
|---|
| 133 | SYSVIPC=no | 
|---|
| 134 | ;; | 
|---|
| 135 | *) | 
|---|
| 136 | AC_MSG_ERROR([Invalid value for --enable-sysv-ipc ($enableval)]) | 
|---|
| 137 | ;; | 
|---|
| 138 | esac | 
|---|
| 139 | ],[ | 
|---|
| 140 | SYSVIPC=yes | 
|---|
| 141 | ] | 
|---|
| 142 | ) | 
|---|
| 143 |  | 
|---|
| 144 | AC_ARG_ENABLE(parallel, | 
|---|
| 145 | [  --disable-parallel      Compile for serial execution.], | 
|---|
| 146 | [ | 
|---|
| 147 | case $enableval in | 
|---|
| 148 | yes) | 
|---|
| 149 | PARALLEL=yes | 
|---|
| 150 | ;; | 
|---|
| 151 | no) | 
|---|
| 152 | PARALLEL=no | 
|---|
| 153 | ;; | 
|---|
| 154 | *) | 
|---|
| 155 | AC_MSG_ERROR([Invalid value for --enable-parallel ($enableval)]) | 
|---|
| 156 | ;; | 
|---|
| 157 | esac | 
|---|
| 158 | ],[ | 
|---|
| 159 | PARALLEL=yes | 
|---|
| 160 | ] | 
|---|
| 161 | ) | 
|---|
| 162 |  | 
|---|
| 163 | AC_ARG_ENABLE(always-use-mpi, | 
|---|
| 164 | [  --enable-always-use-mpi Causes MPI_Init to always be called from main], | 
|---|
| 165 | [ | 
|---|
| 166 | case $enableval in | 
|---|
| 167 | yes) | 
|---|
| 168 | ALWAYS_USE_MPI=yes | 
|---|
| 169 | ;; | 
|---|
| 170 | no) | 
|---|
| 171 | ALWAYS_USE_MPI=no | 
|---|
| 172 | ;; | 
|---|
| 173 | *) | 
|---|
| 174 | AC_MSG_ERROR([Invalid value for --enable-always-use-mpi ($enableval)]) | 
|---|
| 175 | ;; | 
|---|
| 176 | esac | 
|---|
| 177 | ],[ | 
|---|
| 178 | ALWAYS_USE_MPI=no | 
|---|
| 179 | ] | 
|---|
| 180 | ) | 
|---|
| 181 |  | 
|---|
| 182 | DEFAULT_PARALLEL=none | 
|---|
| 183 | AC_ARG_WITH(default-parallel, | 
|---|
| 184 | [  --with-default-parallel Default parallism model: none, mpi, armcimpi or mtmpi], | 
|---|
| 185 | DEFAULT_PARALLEL=$withval | 
|---|
| 186 | ) | 
|---|
| 187 | if test $DEFAULT_PARALLEL = mpi; then | 
|---|
| 188 | AC_DEFINE(DEFAULT_MPI, 1, ["use MPI as default"]) | 
|---|
| 189 | elif test $DEFAULT_PARALLEL = mtmpi; then | 
|---|
| 190 | AC_DEFINE(DEFAULT_MPI, 1, ["use MPI as default"]) | 
|---|
| 191 | AC_DEFINE(DEFAULT_MTMPI, 1, ["use multi-threaded MPI as default"]) | 
|---|
| 192 | elif test $DEFAULT_PARALLEL = armcimpi; then | 
|---|
| 193 | AC_DEFINE(DEFAULT_MPI, 1, ["use MPI as default"]) | 
|---|
| 194 | AC_DEFINE(DEFAULT_ARMCI, 1, ["use ARMCI as default"]) | 
|---|
| 195 | fi | 
|---|
| 196 |  | 
|---|
| 197 | SC_MPI_THREAD_LEVEL=MPI_THREAD_MULTIPLE | 
|---|
| 198 | AC_ARG_WITH(mpi-thread, | 
|---|
| 199 | [  --with-mpi-thread       Thread level for MPI (multiple,serialized,funneled,single)], | 
|---|
| 200 | [ | 
|---|
| 201 | case $withval in | 
|---|
| 202 | multiple) | 
|---|
| 203 | SC_MPI_THREAD_LEVEL=MPI_THREAD_MULTIPLE | 
|---|
| 204 | ;; | 
|---|
| 205 | serialized) | 
|---|
| 206 | SC_MPI_THREAD_LEVEL=MPI_THREAD_SERIALIZED | 
|---|
| 207 | ;; | 
|---|
| 208 | funneled) | 
|---|
| 209 | SC_MPI_THREAD_LEVEL=MPI_THREAD_FUNNELED | 
|---|
| 210 | ;; | 
|---|
| 211 | single) | 
|---|
| 212 | SC_MPI_THREAD_LEVEL=MPI_THREAD_SINGLE | 
|---|
| 213 | ;; | 
|---|
| 214 | *) | 
|---|
| 215 | AC_MSG_ERROR([Invalid value for --with-mpi-thread ($withval)]) | 
|---|
| 216 | ;; | 
|---|
| 217 | esac | 
|---|
| 218 | ] | 
|---|
| 219 | ) | 
|---|
| 220 | AC_DEFINE_UNQUOTED(SC_MPI_THREAD_LEVEL,$SC_MPI_THREAD_LEVEL, ["thread level for MPI"]) | 
|---|
| 221 |  | 
|---|
| 222 | AC_ARG_ENABLE(long-long, | 
|---|
| 223 | [  --disable-long-long     Disable use of long long.], | 
|---|
| 224 | [ | 
|---|
| 225 | case $enableval in | 
|---|
| 226 | yes) | 
|---|
| 227 | LONGLONG=yes | 
|---|
| 228 | ;; | 
|---|
| 229 | no) | 
|---|
| 230 | LONGLONG=no | 
|---|
| 231 | ;; | 
|---|
| 232 | *) | 
|---|
| 233 | AC_MSG_ERROR([Invalid value for --enable-long-long ($enableval)]) | 
|---|
| 234 | ;; | 
|---|
| 235 | esac | 
|---|
| 236 | ],[ | 
|---|
| 237 | LONGLONG=yes | 
|---|
| 238 | ] | 
|---|
| 239 | ) | 
|---|
| 240 |  | 
|---|
| 241 | AC_ARG_ENABLE(threads, | 
|---|
| 242 | [  --enable-threads        Compile allowing use of threads, if possible.], | 
|---|
| 243 | [ | 
|---|
| 244 | case $enableval in | 
|---|
| 245 | yes) | 
|---|
| 246 | THREADS=yes | 
|---|
| 247 | ;; | 
|---|
| 248 | no) | 
|---|
| 249 | THREADS=no | 
|---|
| 250 | ;; | 
|---|
| 251 | *) | 
|---|
| 252 | AC_MSG_ERROR([Invalid value for --enable-threads ($enableval)]) | 
|---|
| 253 | ;; | 
|---|
| 254 | esac | 
|---|
| 255 | ],[ | 
|---|
| 256 | THREADS=yes | 
|---|
| 257 | ] | 
|---|
| 258 | ) | 
|---|
| 259 |  | 
|---|
| 260 | AC_ARG_ENABLE(ref-debug, | 
|---|
| 261 | [  --enable-ref-debug      Check for reference count overwrites/overflows/etc], | 
|---|
| 262 | [ | 
|---|
| 263 | case $enableval in | 
|---|
| 264 | yes) | 
|---|
| 265 | ;; | 
|---|
| 266 | no) | 
|---|
| 267 | AC_DEFINE(REF_OPTIMIZE, 1, ["do not check for reference count overwrites"]) | 
|---|
| 268 | ;; | 
|---|
| 269 | *) | 
|---|
| 270 | AC_MSG_ERROR([Invalid value for --enable-ref-debug ($enableval)]) | 
|---|
| 271 | ;; | 
|---|
| 272 | esac | 
|---|
| 273 | ],[ | 
|---|
| 274 | if test $DEBUG = no -o $DEBUG = opt; then | 
|---|
| 275 | AC_DEFINE(REF_OPTIMIZE, 1, ["do not check for reference count overwrites"]) | 
|---|
| 276 | fi | 
|---|
| 277 | ] | 
|---|
| 278 | ) | 
|---|
| 279 |  | 
|---|
| 280 | AC_ARG_ENABLE(cross-compile, | 
|---|
| 281 | [  --enable-cross-compile  Rather than checking, assume cross compilation.], | 
|---|
| 282 | [ | 
|---|
| 283 | case $enableval in | 
|---|
| 284 | yes) | 
|---|
| 285 | cross_compiling=yes | 
|---|
| 286 | ;; | 
|---|
| 287 | no) | 
|---|
| 288 | ;; | 
|---|
| 289 | *) | 
|---|
| 290 | AC_MSG_ERROR([Invalid value for --enable-cross-compile ($enableval)]) | 
|---|
| 291 | ;; | 
|---|
| 292 | esac | 
|---|
| 293 | ]) | 
|---|
| 294 |  | 
|---|
| 295 | DOXYGEN_MAN=YES | 
|---|
| 296 | AC_ARG_ENABLE(doxygen-man, | 
|---|
| 297 | [  --disable-doxygen-man   Disable doxygen man pages.], | 
|---|
| 298 | [ | 
|---|
| 299 | case $enableval in | 
|---|
| 300 | yes) | 
|---|
| 301 | ;; | 
|---|
| 302 | no) | 
|---|
| 303 | DOXYGEN_MAN=NO | 
|---|
| 304 | ;; | 
|---|
| 305 | *) | 
|---|
| 306 | AC_MSG_ERROR([Invalid value for --(dis|en)able-doxygen-man ($enableval)]) | 
|---|
| 307 | ;; | 
|---|
| 308 | esac | 
|---|
| 309 | ] | 
|---|
| 310 | ) | 
|---|
| 311 | AC_SUBST(DOXYGEN_MAN) | 
|---|
| 312 |  | 
|---|
| 313 | AC_ARG_ENABLE(sourceforge, | 
|---|
| 314 | [  --enable-sourceforge    Enable SourceForge web page generation], | 
|---|
| 315 | [ | 
|---|
| 316 | case $enableval in | 
|---|
| 317 | yes) | 
|---|
| 318 | FOOTER_HTML=sf_footer.html | 
|---|
| 319 | ;; | 
|---|
| 320 | no) | 
|---|
| 321 | FOOTER_HTML=footer.html | 
|---|
| 322 | ;; | 
|---|
| 323 | *) | 
|---|
| 324 | AC_MSG_ERROR([Invalid value for --enable-sourceforge ($enableval)]) | 
|---|
| 325 | ;; | 
|---|
| 326 | esac | 
|---|
| 327 | ],[ | 
|---|
| 328 | FOOTER_HTML=footer.html | 
|---|
| 329 | ] | 
|---|
| 330 | ) | 
|---|
| 331 | AC_SUBST(FOOTER_HTML) | 
|---|
| 332 |  | 
|---|
| 333 | AC_ARG_ENABLE(components, | 
|---|
| 334 | [  --enable-components     Enable CCA components], | 
|---|
| 335 | [ | 
|---|
| 336 | case $enableval in | 
|---|
| 337 | yes) | 
|---|
| 338 | components=yes | 
|---|
| 339 | ;; | 
|---|
| 340 | no) | 
|---|
| 341 | components=no | 
|---|
| 342 | ;; | 
|---|
| 343 | *) | 
|---|
| 344 | AC_MSG_ERROR([Invalid value for --enable-components ($enableval)]) | 
|---|
| 345 | ;; | 
|---|
| 346 | esac | 
|---|
| 347 | ],[ | 
|---|
| 348 | components=no | 
|---|
| 349 | ] | 
|---|
| 350 | ) | 
|---|
| 351 | ENABLECCA=$components | 
|---|
| 352 | AC_SUBST(ENABLECCA) | 
|---|
| 353 |  | 
|---|
| 354 | BUILDID="sc_buildid" | 
|---|
| 355 | AC_ARG_WITH(build-id, | 
|---|
| 356 | [  --with-build-id         Gives an identifier for the build.], | 
|---|
| 357 | BUILDID=$withval | 
|---|
| 358 | ) | 
|---|
| 359 | AC_SUBST(BUILDID) | 
|---|
| 360 | AC_DEFINE_UNQUOTED(SC_BUILDID,"$BUILDID", ["build identifier"]) | 
|---|
| 361 |  | 
|---|
| 362 | DEFAULT_SC_MEMORY=32000000 | 
|---|
| 363 | AC_ARG_WITH(default-memory, | 
|---|
| 364 | [  --with-default-memory   Gives the default memory allocation.], | 
|---|
| 365 | DEFAULT_SC_MEMORY=$withval | 
|---|
| 366 | ) | 
|---|
| 367 | AC_DEFINE_UNQUOTED(DEFAULT_SC_MEMORY,$DEFAULT_SC_MEMORY, ["default memory allocation"]) | 
|---|
| 368 |  | 
|---|
| 369 | if test "$BUILDID"; then | 
|---|
| 370 | SC_VERSION="$SC_MMM_VERSION-$BUILDID" | 
|---|
| 371 | else | 
|---|
| 372 | SC_VERSION="$SC_MMM_VERSION" | 
|---|
| 373 | fi | 
|---|
| 374 |  | 
|---|
| 375 | AC_DEFINE_UNQUOTED(SC_VERSION, "$SC_VERSION", ["SC version"]) | 
|---|
| 376 | AC_SUBST(SC_VERSION) | 
|---|
| 377 |  | 
|---|
| 378 | ac_default_prefix="/usr/local/mpqc/$SC_VERSION" | 
|---|
| 379 |  | 
|---|
| 380 | AC_ARG_WITH(cc, | 
|---|
| 381 | [  --with-cc               Gives the name of the C compiler to use.], | 
|---|
| 382 | CC=$withval | 
|---|
| 383 | ) | 
|---|
| 384 |  | 
|---|
| 385 | AC_ARG_WITH(cxx, | 
|---|
| 386 | [  --with-cxx              Gives the name of the C++ compiler to use.], | 
|---|
| 387 | CXX=$withval | 
|---|
| 388 | ) | 
|---|
| 389 |  | 
|---|
| 390 | AC_ARG_WITH(f77, | 
|---|
| 391 | [  --with-f77              Gives the name of the FORTRAN 77 compiler to use.], | 
|---|
| 392 | F77=$withval | 
|---|
| 393 | ) | 
|---|
| 394 |  | 
|---|
| 395 | AC_ARG_WITH(cxx-optflags, | 
|---|
| 396 | [  --with-cxx-optflags     Optimization flags to use with the C++ compiler.], | 
|---|
| 397 | GIVEN_CXXOPTIONS_OPT=$withval | 
|---|
| 398 | ) | 
|---|
| 399 |  | 
|---|
| 400 | AC_ARG_WITH(cc-optflags, | 
|---|
| 401 | [  --with-cc-optflags      Optimization flags to use with the C compiler.], | 
|---|
| 402 | GIVEN_COPTIONS_OPT=$withval | 
|---|
| 403 | ) | 
|---|
| 404 |  | 
|---|
| 405 | DOT=yes | 
|---|
| 406 | AC_ARG_WITH(dot, | 
|---|
| 407 | [  --with-dot              Gives the path to the dot graph generator.], | 
|---|
| 408 | DOT=$withval | 
|---|
| 409 | ) | 
|---|
| 410 |  | 
|---|
| 411 | AC_ARG_WITH(ranlib, | 
|---|
| 412 | [  --with-ranlib           Gives the name of the ranlib program.], | 
|---|
| 413 | RANLIB=$withval | 
|---|
| 414 | ) | 
|---|
| 415 |  | 
|---|
| 416 | AC_ARG_WITH(ar, | 
|---|
| 417 | [  --with-ar               Names the archive creator.], | 
|---|
| 418 | AR=$withval | 
|---|
| 419 | ) | 
|---|
| 420 |  | 
|---|
| 421 | ARFLAGS=r | 
|---|
| 422 | AC_ARG_WITH(ar-flags, | 
|---|
| 423 | [  --with-ar-flags         Flags for the the archive creator.], | 
|---|
| 424 | ARFLAGS=$withval | 
|---|
| 425 | ) | 
|---|
| 426 | AC_SUBST(ARFLAGS) | 
|---|
| 427 |  | 
|---|
| 428 | AC_ARG_WITH(ld, | 
|---|
| 429 | [  --with-ld               Names the object linker.], | 
|---|
| 430 | LD=$withval | 
|---|
| 431 | ) | 
|---|
| 432 |  | 
|---|
| 433 | changequote(<<, >>)dnl | 
|---|
| 434 | LAUNCH="%MPQC% [-o %OUTPUT%] %INPUT%" | 
|---|
| 435 | changequote([, ])dnl | 
|---|
| 436 | AC_ARG_WITH(launch, | 
|---|
| 437 | [  --with-launch           The mpqcrun script launch string.], | 
|---|
| 438 | LAUNCH=$withval | 
|---|
| 439 | ) | 
|---|
| 440 | AC_SUBST(LAUNCH) | 
|---|
| 441 |  | 
|---|
| 442 | changequote(<<, >>)dnl | 
|---|
| 443 | CCALAUNCH="%CCAFE% --ccafe-rc %INPUT% --ccafe-remap-stdio --ccafe-outputdir %OUTPUT%"; | 
|---|
| 444 | changequote([, ])dnl | 
|---|
| 445 | AC_ARG_WITH(cca-launch, | 
|---|
| 446 | [  --with-cca-launch        The ccarun script launch string.], | 
|---|
| 447 | CCALAUNCH=$withval | 
|---|
| 448 | ) | 
|---|
| 449 | AC_SUBST(CCALAUNCH) | 
|---|
| 450 |  | 
|---|
| 451 | if test $prefix = $ac_default_prefix -o $prefix = NONE; then | 
|---|
| 452 | scdatadir=$datadir | 
|---|
| 453 | else | 
|---|
| 454 | #scdatadir=$datadir/mpqc/$SC_VERSION | 
|---|
| 455 | scdatadir=$datadir/molecuilder | 
|---|
| 456 | fi | 
|---|
| 457 | AC_ARG_WITH(sc-datadir, | 
|---|
| 458 | [  --with-sc-datadir       Specifies arch-independent install subdir.], | 
|---|
| 459 | scdatadir=$withval | 
|---|
| 460 | ) | 
|---|
| 461 | AC_SUBST(scdatadir) | 
|---|
| 462 |  | 
|---|
| 463 | AC_ARG_WITH(include, | 
|---|
| 464 | [  --with-include          Specifies include directories (-Idir1 -Idir2).], | 
|---|
| 465 | EXTRAINCLUDE=$withval | 
|---|
| 466 | CPPFLAGS=$withval | 
|---|
| 467 | echo Using extra include directories: $withval | 
|---|
| 468 | ) | 
|---|
| 469 |  | 
|---|
| 470 | template_instantiation=none | 
|---|
| 471 | AC_ARG_WITH(template, | 
|---|
| 472 | [  --with-template         Specifies template instantation model.], | 
|---|
| 473 | template_instantiation=$withval | 
|---|
| 474 | echo Using extra include directories: $withval | 
|---|
| 475 | ) | 
|---|
| 476 |  | 
|---|
| 477 | scincludedir=$includedir | 
|---|
| 478 | AC_ARG_WITH(sc-includedir, | 
|---|
| 479 | [  --with-sc-includedir    Specifies include file install subdir.], | 
|---|
| 480 | scincludedir=$withval | 
|---|
| 481 | ) | 
|---|
| 482 | AC_SUBST(scincludedir) | 
|---|
| 483 |  | 
|---|
| 484 | AC_ARG_WITH(libs, | 
|---|
| 485 | [  --with-libs             Specifies libraries (-llib1 -llib2).], | 
|---|
| 486 | LIBS=$withval | 
|---|
| 487 | echo Using extra libraries: $withval | 
|---|
| 488 | ) | 
|---|
| 489 |  | 
|---|
| 490 | XTRA_FLIBS= | 
|---|
| 491 | AC_ARG_WITH(extra-flibs, | 
|---|
| 492 | [  --with-extra-flibs      Specifies libs needing a F77 runtime (-llib1 -llib2).], | 
|---|
| 493 | XTRA_FLIBS=$withval | 
|---|
| 494 | echo Using extra FORTRAN libraries: $withval | 
|---|
| 495 | ) | 
|---|
| 496 |  | 
|---|
| 497 | have_flibs=no | 
|---|
| 498 | AC_ARG_WITH(flibs, | 
|---|
| 499 | [  --with-flibs            Specifies the F77 runtime (by default, will guess).], | 
|---|
| 500 | FLIBS=$withval | 
|---|
| 501 | have_flibs=yes | 
|---|
| 502 | echo Using FORTRAN runtime libraries: $withval | 
|---|
| 503 | ) | 
|---|
| 504 |  | 
|---|
| 505 | LDFLAGS= | 
|---|
| 506 | LIBDIRS= | 
|---|
| 507 | AC_ARG_WITH(libdirs, | 
|---|
| 508 | [  --with-libdirs          Specifies library directories (-Ldir1 -Ldir2).], | 
|---|
| 509 | LIBDIRS=$withval | 
|---|
| 510 | LDFLAGS=$withval | 
|---|
| 511 | echo Using extra library directories: $withval | 
|---|
| 512 | ) | 
|---|
| 513 |  | 
|---|
| 514 | AC_ARG_WITH(cca-chem-config, | 
|---|
| 515 | [  --with-cca-chem-config  Specifies full pathname of cca-chem-config script.], | 
|---|
| 516 | [ | 
|---|
| 517 | CCA_CHEM_CONFIG=$withval | 
|---|
| 518 | echo Using cca-chem-config: $withval | 
|---|
| 519 | ],[ | 
|---|
| 520 | if test "$components" == "yes"; then | 
|---|
| 521 | AC_PATH_PROG(CCA_CHEM_CONFIG,cca-chem-config,"not-found") | 
|---|
| 522 | fi | 
|---|
| 523 | ] | 
|---|
| 524 | ) | 
|---|
| 525 |  | 
|---|
| 526 | dnl --------- Want absolute path for srcdir, not relative. --------- | 
|---|
| 527 |  | 
|---|
| 528 | if test X$ac_srcdir_defaulted = Xyes; then | 
|---|
| 529 | case $srcdir in | 
|---|
| 530 | .|..|./*|../*) | 
|---|
| 531 | srcdir=`(cd $srcdir; pwd)` | 
|---|
| 532 | #srcdir=`(cd $srcdir; echo $PWD)` | 
|---|
| 533 | ;; | 
|---|
| 534 | esac | 
|---|
| 535 | fi | 
|---|
| 536 |  | 
|---|
| 537 | dnl --------- Get the path to the compile dir. --------- | 
|---|
| 538 |  | 
|---|
| 539 | compiledir=`pwd` | 
|---|
| 540 | AC_SUBST(compiledir) | 
|---|
| 541 |  | 
|---|
| 542 | dnl --------- Need actual paths for substitution outside of a makefile. --------- | 
|---|
| 543 |  | 
|---|
| 544 | if test $exec_prefix = "NONE"; then | 
|---|
| 545 | if test $prefix = "NONE"; then | 
|---|
| 546 | scbindir=$ac_default_prefix/bin; | 
|---|
| 547 | sclibdir=$ac_default_prefix/lib; | 
|---|
| 548 | else | 
|---|
| 549 | scbindir=$prefix/bin; | 
|---|
| 550 | sclibdir=$prefix/lib; | 
|---|
| 551 | fi | 
|---|
| 552 | else | 
|---|
| 553 | scbindir=$exec_prefix/bin | 
|---|
| 554 | sclibdir=$exec_prefix/lib | 
|---|
| 555 | fi | 
|---|
| 556 | AC_SUBST(scbindir) | 
|---|
| 557 | AC_SUBST(sclibdir) | 
|---|
| 558 |  | 
|---|
| 559 | dnl --------- Checks for programs. --------- | 
|---|
| 560 | AC_PROG_LN_S | 
|---|
| 561 | AC_PROG_INSTALL | 
|---|
| 562 | dnl obsolete because of LT_INIT | 
|---|
| 563 | dnl AC_PROG_RANLIB | 
|---|
| 564 | AC_PROG_CC | 
|---|
| 565 | dnl ac_prog_cxx's order isn't what i need | 
|---|
| 566 | AC_CHECK_PROGS(CXX, g++ c++ gcc CC cxx xlC_r, gcc) | 
|---|
| 567 | dnl sees if CXX is a GNU compiler | 
|---|
| 568 | AC_PROG_CXX | 
|---|
| 569 | if test ! "$F77" = no ; then | 
|---|
| 570 | AC_PROG_F77 | 
|---|
| 571 | if test "X$have_flibs" = Xno; then | 
|---|
| 572 | AC_F77_LIBRARY_LDFLAGS | 
|---|
| 573 | fi | 
|---|
| 574 | fi | 
|---|
| 575 | FLIBS="$XTRA_FLIBS $FLIBS" | 
|---|
| 576 | AC_PROG_CPP | 
|---|
| 577 | AC_PROG_CXXCPP | 
|---|
| 578 | AC_CHECK_PROG(AR,ar,ar) | 
|---|
| 579 | AC_CHECK_PROG(PERL,perl,perl) | 
|---|
| 580 | AC_CHECK_PROG(WISH,wish,/usr/bin/wish) | 
|---|
| 581 |  | 
|---|
| 582 | dnl --------- use libtool --------------------- | 
|---|
| 583 |  | 
|---|
| 584 | LT_INIT([static]) | 
|---|
| 585 | AC_SUBST([LIBTOOL_DEPS]) | 
|---|
| 586 |  | 
|---|
| 587 | dnl The lack of certain tools is a show stopper | 
|---|
| 588 |  | 
|---|
| 589 | changequote(<<, >>)dnl | 
|---|
| 590 |  | 
|---|
| 591 | if [ X$PERL = X ]; then | 
|---|
| 592 | echo "Could not find the program perl.  It can be obtained at" | 
|---|
| 593 | echo "ftp://prep.ai.mit.edu/pub/gnu" | 
|---|
| 594 | exit 1 | 
|---|
| 595 | fi | 
|---|
| 596 |  | 
|---|
| 597 | changequote([, ])dnl | 
|---|
| 598 |  | 
|---|
| 599 | dnl --------- Check for the graph generator used by doxygen | 
|---|
| 600 |  | 
|---|
| 601 | DOT_PATH="" | 
|---|
| 602 | if test X$DOT = Xno; then | 
|---|
| 603 | HAVE_DOT=NO | 
|---|
| 604 | elif test X$DOT = Xyes; then | 
|---|
| 605 | AC_CHECK_PROG(HAVE_DOT,dot,YES,NO) | 
|---|
| 606 | else | 
|---|
| 607 | HAVE_DOT=YES | 
|---|
| 608 | DOT_PATH=$DOT | 
|---|
| 609 | fi | 
|---|
| 610 | AC_SUBST(DOT_PATH) | 
|---|
| 611 | AC_SUBST(HAVE_DOT) | 
|---|
| 612 |  | 
|---|
| 613 | dnl -------- Checks for cross compiling. ---------- | 
|---|
| 614 |  | 
|---|
| 615 | # obsolete starting at autoconf 2.12 | 
|---|
| 616 | #if test X$cross_compiling != Xyes; then | 
|---|
| 617 | #AC_C_CROSS | 
|---|
| 618 | #fi | 
|---|
| 619 |  | 
|---|
| 620 | #if test X$cross_compiling = Xyes -a X$target = X$host; then | 
|---|
| 621 | #  AC_MSG_ERROR([Cross compiling, but target is host (use --host).]) | 
|---|
| 622 | #fi | 
|---|
| 623 |  | 
|---|
| 624 | dnl -------- Checks for compiler/linker options. ---------- | 
|---|
| 625 |  | 
|---|
| 626 | # options needed only for optimization | 
|---|
| 627 | COPTIONS_OPT=-O | 
|---|
| 628 | # options needed only for debugging | 
|---|
| 629 | COPTIONS_DBG=-g | 
|---|
| 630 | # options that are always needed | 
|---|
| 631 | COPTIONS_MISC= | 
|---|
| 632 |  | 
|---|
| 633 | # options needed only for optimization | 
|---|
| 634 | CXXOPTIONS_OPT=-O | 
|---|
| 635 | # options needed only for debugging | 
|---|
| 636 | CXXOPTIONS_DBG=-g | 
|---|
| 637 | # options that are always needed | 
|---|
| 638 | CXXOPTIONS_MISC= | 
|---|
| 639 |  | 
|---|
| 640 | OBJSUF=o | 
|---|
| 641 | LIBSUF=a | 
|---|
| 642 |  | 
|---|
| 643 | dnl -- check how dependency information is built -- | 
|---|
| 644 |  | 
|---|
| 645 | # The GNU compilers work with: | 
|---|
| 646 | CCDEPENDSUF=none | 
|---|
| 647 | CXXDEPENDSUF=none | 
|---|
| 648 | CCDEPENDFLAGS=-M | 
|---|
| 649 | CXXDEPENDFLAGS=-M | 
|---|
| 650 |  | 
|---|
| 651 | /bin/rm -f depcheck.u depcheck.c depcheck.o | 
|---|
| 652 |  | 
|---|
| 653 | # Check for an IBM visual age C compiler | 
|---|
| 654 | echo "#include <stdio.h>" > depcheck.c | 
|---|
| 655 | $CC $CPPFLAGS $CFLAGS -M depcheck.c > /dev/null 2>&1 | 
|---|
| 656 | if test -f depcheck.u; then | 
|---|
| 657 | CCDEPENDSUF=u | 
|---|
| 658 | fi | 
|---|
| 659 | /bin/rm -f depcheck.u depcheck.c depcheck.o | 
|---|
| 660 |  | 
|---|
| 661 | # Check for an IBM visual age C++ compiler | 
|---|
| 662 | echo "#include <iostream>" > depcheck.cc | 
|---|
| 663 | $CXX $CPPFLAGS $CXXFLAGS -M -E depcheck.cc > /dev/null 2>&1 | 
|---|
| 664 | if test -f depcheck.u; then | 
|---|
| 665 | CXXDEPENDSUF=u | 
|---|
| 666 | CXXDEPENDFLAGS="-M -E" | 
|---|
| 667 | fi | 
|---|
| 668 | /bin/rm -f depcheck.u depcheck.cc depcheck.o | 
|---|
| 669 |  | 
|---|
| 670 | dnl -- special misc options -- | 
|---|
| 671 |  | 
|---|
| 672 | AC_MSG_CHECKING([for miscellaneous flags]) | 
|---|
| 673 | case $target in | 
|---|
| 674 | *-cray-unicos*) | 
|---|
| 675 | if test ! X$GXX = Xyes; then | 
|---|
| 676 | CXXOPTIONS_MISC="$CXXOPTIONS_MISC -h new_for_init" | 
|---|
| 677 | fi | 
|---|
| 678 | AC_MSG_RESULT(cray) | 
|---|
| 679 | ;; | 
|---|
| 680 | *) | 
|---|
| 681 | AC_MSG_RESULT(none) | 
|---|
| 682 | ;; | 
|---|
| 683 | esac | 
|---|
| 684 |  | 
|---|
| 685 | dnl -- special optimization options -- | 
|---|
| 686 |  | 
|---|
| 687 | AC_MSG_CHECKING([for special optimization options]) | 
|---|
| 688 | case $target in | 
|---|
| 689 | rs6000-ibm-aix3.2.* | rs6000-ibm-aix4.* | powerpc-ibm-aix4.* | powerpc-ibm-aix5.*) | 
|---|
| 690 | if test X$GCC != Xyes; then | 
|---|
| 691 | COPTIONS_OPT="-O -qnolm" | 
|---|
| 692 | fi | 
|---|
| 693 | if test X$GXX != Xyes; then | 
|---|
| 694 | CXXOPTIONS_OPT="-O -qnolm -qrtti" | 
|---|
| 695 | fi | 
|---|
| 696 | AC_MSG_RESULT("rs6000 or powerpc") | 
|---|
| 697 | ;; | 
|---|
| 698 | alphaev6-*) | 
|---|
| 699 | if test X$GCC = Xyes; then | 
|---|
| 700 | COPTIONS_OPT="-O3 -mcpu=ev6" | 
|---|
| 701 | else | 
|---|
| 702 | COPTIONS_OPT="-O5 -arch ev6" | 
|---|
| 703 | fi | 
|---|
| 704 | if test X$GXX = Xyes; then | 
|---|
| 705 | CXXOPTIONS_OPT="-O3 -mcpu=ev6" | 
|---|
| 706 | else | 
|---|
| 707 | CXXOPTIONS_OPT="-O5 -arch ev6" | 
|---|
| 708 | fi | 
|---|
| 709 | AC_MSG_RESULT("alphaev6") | 
|---|
| 710 | ;; | 
|---|
| 711 | alphaev56-*) | 
|---|
| 712 | if test X$GCC = Xyes; then | 
|---|
| 713 | COPTIONS_OPT="-O3 -mcpu=ev56" | 
|---|
| 714 | else | 
|---|
| 715 | COPTIONS_OPT="-O5 -arch ev56" | 
|---|
| 716 | fi | 
|---|
| 717 | if test X$GXX = Xyes; then | 
|---|
| 718 | CXXOPTIONS_OPT="-O3 -mcpu=ev56" | 
|---|
| 719 | else | 
|---|
| 720 | CXXOPTIONS_OPT="-O5 -arch ev56" | 
|---|
| 721 | fi | 
|---|
| 722 | AC_MSG_RESULT("alphaev56") | 
|---|
| 723 | ;; | 
|---|
| 724 | mips*-sgi-irix5*) | 
|---|
| 725 | if test X$GCC != Xyes; then | 
|---|
| 726 | COPTIONS_OPT="-O -Olimit 2000" | 
|---|
| 727 | fi | 
|---|
| 728 | AC_MSG_RESULT("mips*-sgi-irix5") | 
|---|
| 729 | ;; | 
|---|
| 730 | changequote(<<, >>)dnl | 
|---|
| 731 | mips*-sgi-irix6.[01]*) | 
|---|
| 732 | changequote([, ])dnl | 
|---|
| 733 | if test X$GCC != Xyes; then | 
|---|
| 734 | COPTIONS_OPT="-O2 -TENV:use_fp \ | 
|---|
| 735 | -OPT:const_copy_limit=20000:fold_arith_limit=20000:global_limit=20000" | 
|---|
| 736 | fi | 
|---|
| 737 | if test X$GXX != Xyes; then | 
|---|
| 738 | CXXOPTIONS_OPT="-O2 -TENV:use_fp \ | 
|---|
| 739 | -OPT:const_copy_limit=20000:fold_arith_limit=20000:global_limit=20000" | 
|---|
| 740 | fi | 
|---|
| 741 | AC_MSG_RESULT("mips*-sgi-irix6.0 or mips*-sgi-irix6.1") | 
|---|
| 742 | ;; | 
|---|
| 743 | mips*-sgi-irix*) | 
|---|
| 744 | if test X$GCC != Xyes; then | 
|---|
| 745 | COPTIONS_OPT="-O2 -OPT:Olimit=0" | 
|---|
| 746 | fi | 
|---|
| 747 | if test X$GXX != Xyes; then | 
|---|
| 748 | CXXOPTIONS_OPT="-O2 -OPT:Olimit=0" | 
|---|
| 749 | fi | 
|---|
| 750 | AC_MSG_RESULT("mips*-sgi-irix") | 
|---|
| 751 | ;; | 
|---|
| 752 | changequote(<<, >>)dnl | 
|---|
| 753 | i[56]86-*) | 
|---|
| 754 | changequote([, ])dnl | 
|---|
| 755 | if test X$GCC = Xyes; then | 
|---|
| 756 | COPTIONS_OPT="-O2" | 
|---|
| 757 | fi | 
|---|
| 758 | if test X$GXX = Xyes; then | 
|---|
| 759 | CXXOPTIONS_OPT="-O2" | 
|---|
| 760 | fi | 
|---|
| 761 | AC_MSG_RESULT("i586 or i686") | 
|---|
| 762 | ;; | 
|---|
| 763 | i860-intel-*) | 
|---|
| 764 | if test X$GCC != Xyes; then | 
|---|
| 765 | COPTIONS_OPT="-O3 -Knoieee" | 
|---|
| 766 | fi | 
|---|
| 767 | AC_MSG_RESULT("i860") | 
|---|
| 768 | ;; | 
|---|
| 769 | *) | 
|---|
| 770 | AC_MSG_RESULT("none") | 
|---|
| 771 | ;; | 
|---|
| 772 | esac | 
|---|
| 773 |  | 
|---|
| 774 | dnl -- special architecture options -- | 
|---|
| 775 |  | 
|---|
| 776 | case $target_cpu in | 
|---|
| 777 | i786) | 
|---|
| 778 | opt_target_cpu=pentium4 | 
|---|
| 779 | ;; | 
|---|
| 780 | *) | 
|---|
| 781 | opt_target_cpu=$target_cpu | 
|---|
| 782 | ;; | 
|---|
| 783 | esac | 
|---|
| 784 |  | 
|---|
| 785 | if test X$GXX == Xyes; then | 
|---|
| 786 | AC_MSG_CHECKING([for C++ cpu tuning flag]) | 
|---|
| 787 | AC_LANG_SAVE | 
|---|
| 788 | AC_LANG_CPLUSPLUS | 
|---|
| 789 | CXXFLAGS_SAV=$CXXFLAGS | 
|---|
| 790 | CXXFLAGS="-mtune=$opt_target_cpu $CXXFLAGS_SAV" | 
|---|
| 791 | AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int main(){}])],cxx_tuneflag="-mtune",cxx_tuneflag="-mcpu") | 
|---|
| 792 | CXXFLAGS=$CXXFLAGS_SAV | 
|---|
| 793 | AC_LANG_RESTORE | 
|---|
| 794 | AC_MSG_RESULT($cxx_tuneflag) | 
|---|
| 795 | fi | 
|---|
| 796 |  | 
|---|
| 797 | if test X$GCC == Xyes; then | 
|---|
| 798 | AC_MSG_CHECKING([for C cpu tuning flag]) | 
|---|
| 799 | CFLAGS_SAV=$CFLAGS | 
|---|
| 800 | CFLAGS="-mtune=$opt_target_cpu $CFLAGS_SAV" | 
|---|
| 801 | AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int main(){}])],cc_tuneflag="-mtune",cc_tuneflag="-mcpu") | 
|---|
| 802 | CFLAGS=$CFLAGS_SAV | 
|---|
| 803 | AC_MSG_RESULT($cc_tuneflag) | 
|---|
| 804 | fi | 
|---|
| 805 |  | 
|---|
| 806 | AC_MSG_CHECKING([for special architecture options]) | 
|---|
| 807 | case $target in | 
|---|
| 808 | *-solaris2*) | 
|---|
| 809 | if test X$GCC != Xyes; then | 
|---|
| 810 | CCDEPENDFLAGS="-xM" | 
|---|
| 811 | fi | 
|---|
| 812 | if test X$GXX != Xyes; then | 
|---|
| 813 | CXXDEPENDFLAGS="-xM" | 
|---|
| 814 | fi | 
|---|
| 815 | ;; | 
|---|
| 816 | rs6000-ibm-aix* | powerpc-ibm-aix*) | 
|---|
| 817 | if test X$GCC != Xyes; then | 
|---|
| 818 | LDFLAGS="$LDFLAGS -bmaxdata:0x70000000" | 
|---|
| 819 | fi | 
|---|
| 820 | AC_MSG_RESULT(rs6000 or powerpc) | 
|---|
| 821 | ;; | 
|---|
| 822 | i686-intel-cougar*) | 
|---|
| 823 | COPTIONS_MISC="$COPTIONS_MISC -mcougar" | 
|---|
| 824 | CXXOPTIONS_MISC="$CXXOPTIONS_MISC -mcougar" | 
|---|
| 825 | EXTRADEFINES="-D_REENTRANT $EXTRADEFINES" | 
|---|
| 826 | if test X$cross_compiling = Xyes; then | 
|---|
| 827 | AR=tflop-ar | 
|---|
| 828 | fi | 
|---|
| 829 | AC_MSG_RESULT(teraflop cougar) | 
|---|
| 830 | ;; | 
|---|
| 831 | changequote(<<, >>)dnl | 
|---|
| 832 | i[4567]86-* | pentium-* | pentium4-* | pentiumpro-* | k6-* | athlon-*) | 
|---|
| 833 | changequote([, ])dnl | 
|---|
| 834 |  | 
|---|
| 835 | if test X$STRICT_ARCH = Xyes; then | 
|---|
| 836 | cxx_cpu_arch_option="-march=$opt_target_cpu" | 
|---|
| 837 | cc_cpu_arch_option="-march=$opt_target_cpu" | 
|---|
| 838 | else | 
|---|
| 839 | cxx_cpu_arch_option="$cxx_tuneflag=$opt_target_cpu" | 
|---|
| 840 | cc_cpu_arch_option="$cc_tuneflag=$opt_target_cpu" | 
|---|
| 841 | fi | 
|---|
| 842 | if test X$GCC = Xyes; then | 
|---|
| 843 | COPTIONS_OPT="$COPTIONS_OPT $cc_cpu_arch_option" | 
|---|
| 844 | fi | 
|---|
| 845 | if test X$GXX = Xyes; then | 
|---|
| 846 | CXXOPTIONS_OPT="$CXXOPTIONS_OPT $cxx_cpu_arch_option" | 
|---|
| 847 | fi | 
|---|
| 848 | AC_MSG_RESULT(IA-32: $cpu_arch_option) | 
|---|
| 849 | ;; | 
|---|
| 850 | i860-intel-puma*) | 
|---|
| 851 | if test X$GCC = Xyes; then | 
|---|
| 852 | COPTIONS_MISC="$COPTIONS_MISC -mpuma" | 
|---|
| 853 | else | 
|---|
| 854 | COPTIONS_MISC="$COPTIONS_MISC -D__PUMAGON__" | 
|---|
| 855 | COPTIONS_MISC="$COPTIONS_MISC -L$PARAGON_XDEV/paragon/lib-coff/puma" | 
|---|
| 856 | COPTIONS_MISC="$COPTIONS_MISC -YS,$PARAGON_XDEV/paragon/lib-coff/puma" | 
|---|
| 857 | COPTIONS_MISC="$COPTIONS_MISC -lpuma -lm -lkmath" | 
|---|
| 858 | COPTIONS_MISC="$COPTIONS_MISC $PARAGON_XDEV/paragon/lib-coff/puma/libstubs.o" | 
|---|
| 859 | fi | 
|---|
| 860 | if test X$GXX = Xyes; then | 
|---|
| 861 | CXXOPTIONS_MISC="$CXXOPTIONS_MISC -mpuma" | 
|---|
| 862 | fi | 
|---|
| 863 | if test X$cross_compiling = Xyes; then | 
|---|
| 864 | AR=ar860 | 
|---|
| 865 | fi | 
|---|
| 866 | AC_MSG_RESULT(paragon puma) | 
|---|
| 867 | ;; | 
|---|
| 868 | i860-intel-sunmos*) | 
|---|
| 869 | if test X$GCC = Xyes; then | 
|---|
| 870 | COPTIONS_MISC="$COPTIONS_MISC -msunmos" | 
|---|
| 871 | else | 
|---|
| 872 | COPTIONS_MISC="$COPTIONS_MISC -DSUNMOS -D__PUMAGON__" | 
|---|
| 873 | COPTIONS_MISC="$COPTIONS_MISC -L$PARAGON_XDEV/paragon/lib-coff/sunmos" | 
|---|
| 874 | COPTIONS_MISC="$COPTIONS_MISC -Wl,-d0x4000000,-k" | 
|---|
| 875 | COPTIONS_MISC="$COPTIONS_MISC -YS,$PARAGON_XDEV/paragon/lib-coff/sunmos" | 
|---|
| 876 | COPTIONS_MISC="$COPTIONS_MISC -lm -lsunmos -lm" | 
|---|
| 877 | fi | 
|---|
| 878 | if test X$GXX = Xyes; then | 
|---|
| 879 | CXXOPTIONS_MISC="$CXXOPTIONS_MISC -msunmos" | 
|---|
| 880 | fi | 
|---|
| 881 | if test X$cross_compiling = Xyes; then | 
|---|
| 882 | AR=ar860 | 
|---|
| 883 | fi | 
|---|
| 884 | AC_MSG_RESULT(paragon sunmos) | 
|---|
| 885 | ;; | 
|---|
| 886 | i860-intel-osf*) | 
|---|
| 887 | if test X$GCC = Xyes; then | 
|---|
| 888 | COPTIONS_MISC="$COPTIONS_MISC -mnx" | 
|---|
| 889 | fi | 
|---|
| 890 | if test X$GXX = Xyes; then | 
|---|
| 891 | CXXOPTIONS_MISC="$CXXOPTIONS_MISC -mnx" | 
|---|
| 892 | fi | 
|---|
| 893 | if test X$cross_compiling = Xyes; then | 
|---|
| 894 | AR=ar860 | 
|---|
| 895 | fi | 
|---|
| 896 | AC_MSG_RESULT(paragon osf) | 
|---|
| 897 | ;; | 
|---|
| 898 | *) | 
|---|
| 899 | AC_MSG_RESULT("none") | 
|---|
| 900 | ;; | 
|---|
| 901 | esac | 
|---|
| 902 |  | 
|---|
| 903 | dnl -- check for overriden optimization options -- | 
|---|
| 904 |  | 
|---|
| 905 | if test -n "$GIVEN_COPTIONS_OPT"; then | 
|---|
| 906 | COPTIONS_OPT=$GIVEN_COPTIONS_OPT | 
|---|
| 907 | AC_MSG_NOTICE("overriding C optimization flags with $COPTIONS_OPT") | 
|---|
| 908 | fi | 
|---|
| 909 |  | 
|---|
| 910 | if test -n "$GIVEN_CXXOPTIONS_OPT"; then | 
|---|
| 911 | CXXOPTIONS_OPT=$GIVEN_CXXOPTIONS_OPT | 
|---|
| 912 | AC_MSG_NOTICE("overriding C++ optimization flags with $CXXOPTIONS_OPT") | 
|---|
| 913 | fi | 
|---|
| 914 |  | 
|---|
| 915 | dnl ----------- check for C++ typename --------------- | 
|---|
| 916 | dnl This is done before template flags are set to avoid | 
|---|
| 917 | dnl undefined symbol problems. | 
|---|
| 918 |  | 
|---|
| 919 | AC_LANG_SAVE | 
|---|
| 920 | AC_LANG_CPLUSPLUS | 
|---|
| 921 | AC_MSG_CHECKING("for C++ typename keyword") | 
|---|
| 922 | AC_TRY_LINK([ | 
|---|
| 923 | class X { public: typedef int t; X(){} }; | 
|---|
| 924 | template <class T> void f(T i) {typename T::t x;} | 
|---|
| 925 | ],[ | 
|---|
| 926 | X g; | 
|---|
| 927 | f(g); | 
|---|
| 928 | ],[ | 
|---|
| 929 | AC_DEFINE(HAVE_TYPENAME, 1, ["use typename keyword"]) | 
|---|
| 930 | AC_MSG_RESULT("yes") | 
|---|
| 931 | ], | 
|---|
| 932 | AC_MSG_RESULT("no") | 
|---|
| 933 | AC_DEFINE(typename, [], ["remove usage of absent typename keyword by empty define"]) | 
|---|
| 934 | ); | 
|---|
| 935 | AC_LANG_RESTORE | 
|---|
| 936 |  | 
|---|
| 937 | dnl  ----------- check for C++ restrict extension --------------- | 
|---|
| 938 |  | 
|---|
| 939 | AC_LANG_SAVE | 
|---|
| 940 | AC_LANG_CPLUSPLUS | 
|---|
| 941 | AC_TRY_LINK(,[double *restrict x=0;], | 
|---|
| 942 | AC_DEFINE(CXX_RESTRICT, 1, ["c++ restricted extensions"]) | 
|---|
| 943 | AC_DEFINE(restrictxx, [restrict], ["convert keyword for c++ restricted extensions"]), | 
|---|
| 944 |  | 
|---|
| 945 | AC_DEFINE(restrictxx, [], ["convert keyword to none for c++ restricted extensions"]), | 
|---|
| 946 | ) | 
|---|
| 947 | AC_LANG_RESTORE | 
|---|
| 948 |  | 
|---|
| 949 | dnl ---------- Checks for C++ header files. ----------- | 
|---|
| 950 |  | 
|---|
| 951 | AC_LANG_SAVE | 
|---|
| 952 | AC_LANG_CPLUSPLUS | 
|---|
| 953 | AC_CHECK_HEADERS(iostream sstream) | 
|---|
| 954 | AC_LANG_RESTORE | 
|---|
| 955 |  | 
|---|
| 956 | AC_MSG_CHECKING(iostream name) | 
|---|
| 957 | if test x$ac_cv_header_iostream = xyes; then | 
|---|
| 958 | iostream=iostream | 
|---|
| 959 | else | 
|---|
| 960 | iostream=iostream.h | 
|---|
| 961 | fi | 
|---|
| 962 | AC_MSG_RESULT($iostream) | 
|---|
| 963 |  | 
|---|
| 964 | dnl ----------- check for namespace std --------------- | 
|---|
| 965 |  | 
|---|
| 966 | AC_LANG_SAVE | 
|---|
| 967 | AC_LANG_CPLUSPLUS | 
|---|
| 968 | AC_MSG_CHECKING("for namespace std") | 
|---|
| 969 | AC_TRY_LINK([ | 
|---|
| 970 | #include <$iostream> | 
|---|
| 971 | using namespace std; | 
|---|
| 972 | ],[ | 
|---|
| 973 | ostream &o = cout; | 
|---|
| 974 | o << endl; | 
|---|
| 975 | ],[ | 
|---|
| 976 | AC_DEFINE(USING_NAMESPACE_STD, 1, ["using namespace std"]) | 
|---|
| 977 | NAMESPACE_STD=std:: | 
|---|
| 978 | AC_MSG_RESULT("yes") | 
|---|
| 979 | ], | 
|---|
| 980 | NAMESPACE_STD= | 
|---|
| 981 | AC_MSG_RESULT("no") | 
|---|
| 982 | ); | 
|---|
| 983 | AC_LANG_RESTORE | 
|---|
| 984 |  | 
|---|
| 985 | dnl ----------- check for GNU libc++-v3 prerelease bug --------------- | 
|---|
| 986 |  | 
|---|
| 987 | if test X$GXX = Xyes; then | 
|---|
| 988 | AC_LANG_SAVE | 
|---|
| 989 | AC_LANG_CPLUSPLUS | 
|---|
| 990 | AC_MSG_CHECKING("for GNU libc++-v3 prerelease bug") | 
|---|
| 991 | AC_TRY_LINK([ | 
|---|
| 992 | #include <stdio.h> | 
|---|
| 993 | #include <$iostream> | 
|---|
| 994 | ],[ | 
|---|
| 995 | ],[ | 
|---|
| 996 | AC_MSG_RESULT("no") | 
|---|
| 997 | ], | 
|---|
| 998 | EXTRADEFINES="$EXTRADEFINES -D_ISOC99_SOURCE=1" | 
|---|
| 999 | AC_MSG_RESULT("yes") | 
|---|
| 1000 | ); | 
|---|
| 1001 | AC_LANG_RESTORE | 
|---|
| 1002 | fi | 
|---|
| 1003 |  | 
|---|
| 1004 | dnl -- other options -- | 
|---|
| 1005 |  | 
|---|
| 1006 | if test $DEBUG = yes; then | 
|---|
| 1007 | CFLAGS="$COPTIONS_DBG $COPTIONS_MISC" | 
|---|
| 1008 | CXXFLAGS="$CXXOPTIONS_DBG $CXXOPTIONS_MISC" | 
|---|
| 1009 | LDFLAGS="$LDFLAGS -g" | 
|---|
| 1010 | elif test $DEBUG = opt; then | 
|---|
| 1011 | CFLAGS="$COPTIONS_DBG $COPTIONS_OPT $COPTIONS_MISC" | 
|---|
| 1012 | CXXFLAGS="$CXXOPTIONS_DBG $CXXOPTIONS_OPT $CXXOPTIONS_MISC" | 
|---|
| 1013 | LDFLAGS="$LDFLAGS -g" | 
|---|
| 1014 | else | 
|---|
| 1015 | CFLAGS="$COPTIONS_OPT $COPTIONS_MISC" | 
|---|
| 1016 | CXXFLAGS="$CXXOPTIONS_OPT $CXXOPTIONS_MISC" | 
|---|
| 1017 | fi | 
|---|
| 1018 |  | 
|---|
| 1019 | AC_SUBST(EXTRAINCLUDE) | 
|---|
| 1020 |  | 
|---|
| 1021 | AC_SUBST(CFLAGS) | 
|---|
| 1022 | AC_SUBST(CXXFLAGS) | 
|---|
| 1023 |  | 
|---|
| 1024 | AC_SUBST(LDFLAGS) | 
|---|
| 1025 | AC_SUBST(LIBDIRS) | 
|---|
| 1026 |  | 
|---|
| 1027 | AC_SUBST(OBJSUF) | 
|---|
| 1028 | AC_SUBST(LIBSUF) | 
|---|
| 1029 | AC_SUBST(CCDEPENDSUF) | 
|---|
| 1030 | AC_SUBST(CXXDEPENDSUF) | 
|---|
| 1031 | AC_SUBST(CCDEPENDFLAGS) | 
|---|
| 1032 | AC_SUBST(CXXDEPENDFLAGS) | 
|---|
| 1033 |  | 
|---|
| 1034 | dnl -------- Checks for architecture specific features. -------- | 
|---|
| 1035 | dnl (Doesn't work for cross compilation.) | 
|---|
| 1036 | dnl AC_CHECK_SIZEOF(void*) | 
|---|
| 1037 |  | 
|---|
| 1038 | dnl This version works on more machines without the need to run | 
|---|
| 1039 | dnl a test program. | 
|---|
| 1040 | AC_DEFUN([SC_C_BIGENDIAN], | 
|---|
| 1041 | [AC_CHECK_HEADERS(fp.h endian.h machine/endian.h sys/endian.h sys/machine.h) | 
|---|
| 1042 | AC_CACHE_CHECK(whether byte ordering is bigendian, sc_cv_c_bigendian, | 
|---|
| 1043 | [sc_cv_c_bigendian=unknown | 
|---|
| 1044 | # See if sys/param.h defines the BYTE_ORDER macro. | 
|---|
| 1045 | AC_TRY_COMPILE([#include "confdefs.h" | 
|---|
| 1046 | #ifdef HAVE_FP_H | 
|---|
| 1047 | #include <fp.h> | 
|---|
| 1048 | #endif | 
|---|
| 1049 | #ifdef HAVE_ENDIAN_H | 
|---|
| 1050 | #include <endian.h> | 
|---|
| 1051 | #endif | 
|---|
| 1052 | #ifdef HAVE_MACHINE_ENDIAN_H | 
|---|
| 1053 | #include <machine/endian.h> | 
|---|
| 1054 | #endif | 
|---|
| 1055 | #ifdef HAVE_SYS_ENDIAN_H | 
|---|
| 1056 | #include <sys/endian.h> | 
|---|
| 1057 | #endif | 
|---|
| 1058 | #ifdef HAVE_SYS_MACHINE_H | 
|---|
| 1059 | #include <sys/machine.h> | 
|---|
| 1060 | #endif | 
|---|
| 1061 | #include <sys/types.h> | 
|---|
| 1062 | #include <sys/param.h>], [ | 
|---|
| 1063 | #if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN | 
|---|
| 1064 | bogus endian macros | 
|---|
| 1065 | #endif], [# It does; now see whether it defined to BIG_ENDIAN or not. | 
|---|
| 1066 | AC_TRY_COMPILE([#include "confdefs.h" | 
|---|
| 1067 | #ifdef HAVE_FP_H | 
|---|
| 1068 | #include <fp.h> | 
|---|
| 1069 | #endif | 
|---|
| 1070 | #ifdef HAVE_MP_H | 
|---|
| 1071 | #include <mp.h> | 
|---|
| 1072 | #endif | 
|---|
| 1073 | #ifdef HAVE_ENDIAN_H | 
|---|
| 1074 | #include <endian.h> | 
|---|
| 1075 | #endif | 
|---|
| 1076 | #ifdef HAVE_MACHINE_ENDIAN_H | 
|---|
| 1077 | #include <machine/endian.h> | 
|---|
| 1078 | #endif | 
|---|
| 1079 | #ifdef HAVE_SYS_ENDIAN_H | 
|---|
| 1080 | #include <sys/endian.h> | 
|---|
| 1081 | #endif | 
|---|
| 1082 | #ifdef HAVE_SYS_MACHINE_H | 
|---|
| 1083 | #include <sys/machine.h> | 
|---|
| 1084 | #endif | 
|---|
| 1085 | #include <sys/types.h> | 
|---|
| 1086 | #include <sys/param.h>], [ | 
|---|
| 1087 | #if BYTE_ORDER != BIG_ENDIAN | 
|---|
| 1088 | not big endian | 
|---|
| 1089 | #endif], sc_cv_c_bigendian=yes, sc_cv_c_bigendian=no)]) | 
|---|
| 1090 | if test $sc_cv_c_bigendian = unknown; then | 
|---|
| 1091 | AC_TRY_RUN([main () { | 
|---|
| 1092 | /* Are we little or big endian?  From Harbison&Steele.  */ | 
|---|
| 1093 | union | 
|---|
| 1094 | { | 
|---|
| 1095 | long l; | 
|---|
| 1096 | char c[sizeof (long)]; | 
|---|
| 1097 | } u; | 
|---|
| 1098 | u.l = 1; | 
|---|
| 1099 | exit (u.c[sizeof (long) - 1] == 1); | 
|---|
| 1100 | }], sc_cv_c_bigendian=no, sc_cv_c_bigendian=yes, | 
|---|
| 1101 | AC_MSG_ERROR([Could not determine endianness and cross compiling]) | 
|---|
| 1102 | ) | 
|---|
| 1103 | fi]) | 
|---|
| 1104 | if test $sc_cv_c_bigendian = yes; then | 
|---|
| 1105 | AC_DEFINE(WORDS_BIGENDIAN, 1, ["use big endian encoding"]) | 
|---|
| 1106 | fi | 
|---|
| 1107 | ]) | 
|---|
| 1108 |  | 
|---|
| 1109 | SC_C_BIGENDIAN | 
|---|
| 1110 |  | 
|---|
| 1111 | dnl --------- Checks for libraries. --------- | 
|---|
| 1112 | dnl -- libpthread should be linked in last. | 
|---|
| 1113 | dnl -- Check on pthread_join since pthread_create, but not pthread_join, | 
|---|
| 1114 | dnl -- seems to be in libc on IRIX and we must generate a -lpthread in LIBS. | 
|---|
| 1115 | if test "(" X$PARALLEL = Xyes -a X$THREADS != Xno ")" -o X$THREADS = Xyes; then | 
|---|
| 1116 |  | 
|---|
| 1117 | AC_MSG_CHECKING([pthreads]) | 
|---|
| 1118 | dnl see if posix threads are automatically linked ... | 
|---|
| 1119 | AC_LANG_SAVE | 
|---|
| 1120 | AC_LANG_CPLUSPLUS | 
|---|
| 1121 | LIBSSAV="$LIBS" | 
|---|
| 1122 | AC_TRY_LINK([#include <pthread.h>],[pthread_join(0,0);],[ | 
|---|
| 1123 | HAVE_PTHREAD=yes],[ | 
|---|
| 1124 | HAVE_PTHREAD=no]) | 
|---|
| 1125 | AC_LANG_RESTORE | 
|---|
| 1126 |  | 
|---|
| 1127 | dnl see if posix threads are in -lpthread | 
|---|
| 1128 | if test $HAVE_PTHREAD = no; then | 
|---|
| 1129 | AC_LANG_SAVE | 
|---|
| 1130 | AC_LANG_CPLUSPLUS | 
|---|
| 1131 | LIBSSAV="$LIBS" | 
|---|
| 1132 | LIBS="$LIBS -lpthread" | 
|---|
| 1133 | AC_TRY_LINK([#include <pthread.h>],[pthread_join(0,0);],[ | 
|---|
| 1134 | HAVE_PTHREAD=yes],[ | 
|---|
| 1135 | HAVE_PTHREAD=no | 
|---|
| 1136 | LIBS="$LIBSSAV"]) | 
|---|
| 1137 | AC_LANG_RESTORE | 
|---|
| 1138 | fi | 
|---|
| 1139 |  | 
|---|
| 1140 | dnl see if posix threads are in -lpthreads | 
|---|
| 1141 | if test $HAVE_PTHREAD = no; then | 
|---|
| 1142 | AC_LANG_SAVE | 
|---|
| 1143 | AC_LANG_CPLUSPLUS | 
|---|
| 1144 | LIBSSAV="$LIBS" | 
|---|
| 1145 | LIBS="$LIBS -lpthreads" | 
|---|
| 1146 | AC_TRY_LINK([#include <pthread.h>],[pthread_join(0,0);],[ | 
|---|
| 1147 | HAVE_PTHREAD=yes],[ | 
|---|
| 1148 | HAVE_PTHREAD=no | 
|---|
| 1149 | LIBS="$LIBSSAV"]) | 
|---|
| 1150 | AC_LANG_RESTORE | 
|---|
| 1151 | fi | 
|---|
| 1152 | AM_CONDITIONAL(COND_PTHREAD, [test X$HAVE_PTHREAD = Xyes]) | 
|---|
| 1153 |  | 
|---|
| 1154 | AC_MSG_RESULT($HAVE_PTHREAD) | 
|---|
| 1155 | fi | 
|---|
| 1156 | if test X$HAVE_PTHREAD = Xyes; then | 
|---|
| 1157 | AC_DEFINE(HAVE_PTHREAD, 1, ["use pthreads"]) | 
|---|
| 1158 | EXTRADEFINES="-D_REENTRANT $EXTRADEFINES" | 
|---|
| 1159 | AC_CHECK_FUNC(pthread_attr_getstacksize, [HAVE_PTHREAD_ATTR_GETINHERITSCHED=yes], [HAVE_PTHREAD_ATTR_GETINHERITSCHED=no]) | 
|---|
| 1160 | AC_CHECK_FUNC(pthread_attr_setstacksize, [HAVE_PTHREAD_ATTR_GETSCHEDPARAM=yes], [HAVE_PTHREAD_ATTR_GETSCHEDPARAM=no]) | 
|---|
| 1161 | AC_CHECK_FUNC(pthread_attr_setscope, [HAVE_PTHREAD_ATTR_GETSCHEDPOLICY=yes], [HAVE_PTHREAD_ATTR_GETSCHEDPOLICY=no]) | 
|---|
| 1162 | AC_CHECK_FUNC(pthread_attr_getscope, [HAVE_PTHREAD_ATTR_GETSCOPE=yes], [HAVE_PTHREAD_ATTR_GETSCOPE=no]) | 
|---|
| 1163 | AC_CHECK_FUNC(pthread_attr_setinheritsched, [HAVE_PTHREAD_ATTR_GETSTACKSIZE=yes], [HAVE_PTHREAD_ATTR_GETSTACKSIZE=no]) | 
|---|
| 1164 | AC_CHECK_FUNC(pthread_attr_getinheritsched, [HAVE_PTHREAD_ATTR_SETINHERITSCHED=yes], [HAVE_PTHREAD_ATTR_SETINHERITSCHED=no]) | 
|---|
| 1165 | AC_CHECK_FUNC(pthread_attr_setschedpolicy, [HAVE_PTHREAD_ATTR_SETSCHEDPARAM=yes], [HAVE_PTHREAD_ATTR_SETSCHEDPARAM=no]) | 
|---|
| 1166 | AC_CHECK_FUNC(pthread_attr_getschedpolicy, [HAVE_PTHREAD_ATTR_SETSCHEDPOLICY=yes], [HAVE_PTHREAD_ATTR_SETSCHEDPOLICY=no]) | 
|---|
| 1167 | AC_CHECK_FUNC(pthread_attr_setschedparam, [HAVE_PTHREAD_ATTR_SETSCOPE=yes], [HAVE_PTHREAD_ATTR_SETSCOPE=no]) | 
|---|
| 1168 | AC_CHECK_FUNC(pthread_attr_getschedparam, [HAVE_PTHREAD_ATTR_SETSTACKSIZE=yes], [HAVE_PTHREAD_ATTR_SETSTACKSIZE=no]) | 
|---|
| 1169 | AC_CHECK_FUNC(sched_get_priority_max, [HAVE_SCHED_GET_PRIORITY_MAX=yes], [HAVE_SCHED_GET_PRIORITY_MAX=no]) | 
|---|
| 1170 | AC_CHECK_FUNC(sched_get_priority_min, [HAVE_SCHED_GET_PRIORITY_MIN=yes], [HAVE_SCHED_GET_PRIORITY_MIN=no]) | 
|---|
| 1171 | fi | 
|---|
| 1172 | AC_DEFINE(HAVE_PTHREAD_ATTR_GETINHERITSCHED, [$HAVE_PTHREAD_ATTR_GETINHERITSCHED], ["use pthread_attr_getstacksize"]) | 
|---|
| 1173 | AC_DEFINE(HAVE_PTHREAD_ATTR_GETSCHEDPARAM, [$HAVE_PTHREAD_ATTR_GETSCHEDPARAM], ["use pthread_attr_setstacksize"]) | 
|---|
| 1174 | AC_DEFINE(HAVE_PTHREAD_ATTR_GETSCHEDPOLICY, [$HAVE_PTHREAD_ATTR_GETSCHEDPOLICY], ["use pthread_attr_setscope"]) | 
|---|
| 1175 | AC_DEFINE(HAVE_PTHREAD_ATTR_GETSCOPE, [$HAVE_PTHREAD_ATTR_GETSCOPE], ["use pthread_attr_getscope"]) | 
|---|
| 1176 | AC_DEFINE(HAVE_PTHREAD_ATTR_GETSTACKSIZE, [$HAVE_PTHREAD_ATTR_GETSTACKSIZE], ["use pthread_attr_setinheritsched"]) | 
|---|
| 1177 | AC_DEFINE(HAVE_PTHREAD_ATTR_SETINHERITSCHED, [$HAVE_PTHREAD_ATTR_SETINHERITSCHED], ["use pthread_attr_getinheritsched"]) | 
|---|
| 1178 | AC_DEFINE(HAVE_PTHREAD_ATTR_SETSCHEDPARAM, [$HAVE_PTHREAD_ATTR_SETSCHEDPARAM], ["use pthread_attr_setschedpolicy"]) | 
|---|
| 1179 | AC_DEFINE(HAVE_PTHREAD_ATTR_SETSCHEDPOLICY, [$HAVE_PTHREAD_ATTR_SETSCHEDPOLICY], ["use pthread_attr_getschedpolicy"]) | 
|---|
| 1180 | AC_DEFINE(HAVE_PTHREAD_ATTR_SETSCOPE, [$HAVE_PTHREAD_ATTR_SETSCOPE], ["use pthread_attr_setschedparam"]) | 
|---|
| 1181 | AC_DEFINE(HAVE_PTHREAD_ATTR_SETSTACKSIZE, [$HAVE_PTHREAD_ATTR_SETSTACKSIZE], ["use pthread_attr_getschedparam"]) | 
|---|
| 1182 | AC_DEFINE(HAVE_SCHED_GET_PRIORITY_MAX, [$HAVE_SCHED_GET_PRIORITY_MAX], ["use sched_get_priority_max"]) | 
|---|
| 1183 | AC_DEFINE(HAVE_SCHED_GET_PRIORITY_MIN, [$HAVE_SCHED_GET_PRIORITY_MIN], ["use sched_get_priority_max"]) | 
|---|
| 1184 |  | 
|---|
| 1185 | AC_CHECK_LIB(dl,main) | 
|---|
| 1186 | dnl commented out for Cray X1 (-lsun falsely detected) | 
|---|
| 1187 | dnl AC_CHECK_LIB(sun,main) | 
|---|
| 1188 | AC_CHECK_LIB(m,main) | 
|---|
| 1189 | dnl AC_CHECK_LIB(fl,main) | 
|---|
| 1190 | AC_CHECK_HEADER(perf.h,[ | 
|---|
| 1191 | AC_CHECK_LIB(perf,perf_set_config,[ | 
|---|
| 1192 | HAVE_PERF=yes | 
|---|
| 1193 | LIBS="-lperf $LIBS" | 
|---|
| 1194 | AC_DEFINE(HAVE_PERF, 1, ["use perf"]) | 
|---|
| 1195 | ]) | 
|---|
| 1196 | ] | 
|---|
| 1197 | ) | 
|---|
| 1198 |  | 
|---|
| 1199 | AC_CHECK_HEADER(execinfo.h,HAVE_EXECINFO_H_INC=1) | 
|---|
| 1200 | AC_CHECK_FUNC(backtrace, HAVE_BACKTRACE_FUNC=1) | 
|---|
| 1201 | AC_CHECK_FUNC(backtrace_symbols_fd, HAVE_BACKTRACE_SYMBOLS_FD_FUNC=1) | 
|---|
| 1202 | if test -n "$HAVE_EXECINFO_H_INC" -a -n "$HAVE_BACKTRACE_FUNC"  -a -n "$HAVE_BACKTRACE_SYMBOLS_FD_FUNC"; then | 
|---|
| 1203 | AC_DEFINE(HAVE_BACKTRACE, 1, ["use backtrace"]) | 
|---|
| 1204 | fi | 
|---|
| 1205 |  | 
|---|
| 1206 | if test X$PARALLEL = Xyes; then | 
|---|
| 1207 |  | 
|---|
| 1208 | dnl ----- check for the mpi library | 
|---|
| 1209 | AC_LANG_SAVE | 
|---|
| 1210 | AC_LANG_CPLUSPLUS | 
|---|
| 1211 | dnl Must use try_link since check_header runs cpp which doesn't | 
|---|
| 1212 | dnl always find mpi.h (if mpicc and no -I is used for example) | 
|---|
| 1213 | AC_MSG_CHECKING(for mpi.h) | 
|---|
| 1214 | AC_TRY_LINK([#include <mpi.h>],[],have_mpi_h=yes,have_mpi_h=no) | 
|---|
| 1215 | AC_MSG_RESULT($have_mpi_h) | 
|---|
| 1216 | if test "$have_mpi_h" = yes; then | 
|---|
| 1217 | AC_CHECK_FUNC(MPI_Init,HAVE_MPI=yes,HAVE_MPI=no) | 
|---|
| 1218 | if test "$HAVE_MPI" = no; then | 
|---|
| 1219 | AC_CHECK_LIB(mpi,MPI_Init,[HAVE_MPI=yes;LIBS="-lmpi $LIBS"]) | 
|---|
| 1220 | fi | 
|---|
| 1221 | if test "$HAVE_MPI" = no; then | 
|---|
| 1222 | AC_CHECK_LIB(mpich,MPI_Init,[HAVE_MPI=yes;LIBS="-lmpich $LIBS"]) | 
|---|
| 1223 | fi | 
|---|
| 1224 | fi | 
|---|
| 1225 | if test X$HAVE_MPI = Xyes; then | 
|---|
| 1226 | AC_DEFINE(HAVE_MPI, 1, ["have MPI"]) | 
|---|
| 1227 | AC_CHECK_FUNC(MPI_File_open, | 
|---|
| 1228 | [HAVE_MPIIO=yes;AC_DEFINE(HAVE_MPIIO, 1, ["have MPI IO extensions"])]) | 
|---|
| 1229 | AC_CHECK_FUNC(MPI_Init_thread, | 
|---|
| 1230 | [AC_DEFINE(HAVE_MPI_INIT_THREAD, 1, ["have MPI init thread"])]) | 
|---|
| 1231 | HAVE_MPIPP=no; | 
|---|
| 1232 | AC_CHECK_LIB(mpi++,MPI_Abort,[HAVE_MPIPP=yes;LIBS="-lmpi++ $LIBS"]) | 
|---|
| 1233 | if test X$HAVE_MPIPP = Xno; then | 
|---|
| 1234 | AC_CHECK_LIB(pmpich++,MPI_Abort,[HAVE_MPIPP=yes;LIBS="-lpmpich++ $LIBS"]) | 
|---|
| 1235 | fi | 
|---|
| 1236 | AC_DEFINE(HAVE_MPIPP, 1, ["have MPI PP"]) | 
|---|
| 1237 | fi | 
|---|
| 1238 | AC_LANG_RESTORE | 
|---|
| 1239 | fi | 
|---|
| 1240 | AM_CONDITIONAL(COND_MPI, [test X$HAVE_MPI = Xyes]) | 
|---|
| 1241 |  | 
|---|
| 1242 | if test X$HAVE_MPI != Xyes -a $ALWAYS_USE_MPI = yes; then | 
|---|
| 1243 | AC_MSG_ERROR([--enable-always-use-mpi is set but MPI is not available]) | 
|---|
| 1244 | elif test $ALWAYS_USE_MPI = yes; then | 
|---|
| 1245 | AC_DEFINE(ALWAYS_USE_MPI, 1, ["always use MPI"]) | 
|---|
| 1246 | fi | 
|---|
| 1247 |  | 
|---|
| 1248 | dnl ------ check for the armci library | 
|---|
| 1249 | AC_LANG_SAVE | 
|---|
| 1250 | AC_LANG_CPLUSPLUS | 
|---|
| 1251 | AC_CHECK_HEADER(armci.h,[ | 
|---|
| 1252 | AC_CHECK_FUNC(ARMCI_Init,HAVE_ARMCI=yes,[ | 
|---|
| 1253 | AC_CHECK_LIB(armci,ARMCI_Init,[HAVE_ARMCI=yes;LIBS="-larmci $LIBS"]) | 
|---|
| 1254 | ]) | 
|---|
| 1255 | ]) | 
|---|
| 1256 | AC_LANG_RESTORE | 
|---|
| 1257 |  | 
|---|
| 1258 | if test X$HAVE_ARMCI = Xyes; then | 
|---|
| 1259 | AC_DEFINE(HAVE_ARMCI, 1, ["use ARMCI"]) | 
|---|
| 1260 | fi | 
|---|
| 1261 | AM_CONDITIONAL(COND_ARMCI, [test X$HAVE_ARMCI = Xyes]) | 
|---|
| 1262 |  | 
|---|
| 1263 | if test $DEFAULT_PARALLEL = mtmpi -a X$HAVE_MPI != Xyes; then | 
|---|
| 1264 | AC_MSG_ERROR([--with-default-parallel=mtmpi but MPI not available]) | 
|---|
| 1265 | fi | 
|---|
| 1266 | if test $DEFAULT_PARALLEL = armcimpi -a X$HAVE_MPI != Xyes; then | 
|---|
| 1267 | AC_MSG_ERROR([--with-default-parallel=armcimpi but MPI not available]) | 
|---|
| 1268 | fi | 
|---|
| 1269 | if test $DEFAULT_PARALLEL = armcimpi -a X$HAVE_ARMCI != Xyes; then | 
|---|
| 1270 | AC_MSG_ERROR([--with-default-parallel=armcimpi but ARMCI not available]) | 
|---|
| 1271 | fi | 
|---|
| 1272 |  | 
|---|
| 1273 | AC_SUBST(HAVE_PERF) | 
|---|
| 1274 | AC_SUBST(HAVE_MPI) | 
|---|
| 1275 | AC_SUBST(ALWAYS_USE_MPI) | 
|---|
| 1276 | AC_SUBST(HAVE_ARMCI) | 
|---|
| 1277 | AC_SUBST(HAVE_MPIIO) | 
|---|
| 1278 | AC_SUBST(EXTRADEFINES) | 
|---|
| 1279 |  | 
|---|
| 1280 | dnl ---------- Checks for header files. ----------- | 
|---|
| 1281 |  | 
|---|
| 1282 | AC_HEADER_STDC | 
|---|
| 1283 | AC_CHECK_HEADERS(fcntl.h limits.h sys/ioctl.h sys/time.h unistd.h pwd.h) | 
|---|
| 1284 | AC_CHECK_HEADERS(sys/times.h sys/resource.h time.h machine/fpu.h asm/fpu.h) | 
|---|
| 1285 | AC_CHECK_HEADERS(termios.h sys/stat.h sys/types.h dlfcn.h stdint.h) | 
|---|
| 1286 |  | 
|---|
| 1287 | dnl -- Checks for typedefs, structures, and compiler characteristics. -- | 
|---|
| 1288 | AC_C_CONST | 
|---|
| 1289 | AC_TYPE_SIZE_T | 
|---|
| 1290 | AC_STRUCT_TM | 
|---|
| 1291 |  | 
|---|
| 1292 | dnl --------- Checks for library functions. --------- | 
|---|
| 1293 | AC_TYPE_SIGNAL | 
|---|
| 1294 | AC_FUNC_VPRINTF | 
|---|
| 1295 | AC_CHECK_FUNCS(strerror sigfillset signal system getpwuid geteuid) | 
|---|
| 1296 | AC_CHECK_FUNCS(gethostname time ctime) | 
|---|
| 1297 | AC_CHECK_FUNCS(setrlimit setenv) | 
|---|
| 1298 |  | 
|---|
| 1299 | dnl --------- Check for an isnan and make sure it can be used | 
|---|
| 1300 | dnl           with iostream (it can't on OS X) | 
|---|
| 1301 | AC_LANG_SAVE | 
|---|
| 1302 | AC_LANG_CPLUSPLUS | 
|---|
| 1303 | AC_MSG_CHECKING(isnan and iostream) | 
|---|
| 1304 | AC_LINK_IFELSE([AC_LANG_PROGRAM([ | 
|---|
| 1305 | #include <iostream> | 
|---|
| 1306 | #include <math.h>],[isnan(1.0); return 0; | 
|---|
| 1307 | ])], | 
|---|
| 1308 | AC_DEFINE(HAVE_ISNAN,1, ["isnan available"]) | 
|---|
| 1309 | AC_MSG_RESULT(yes), | 
|---|
| 1310 | AC_MSG_RESULT(no) | 
|---|
| 1311 | ) | 
|---|
| 1312 | AC_LANG_RESTORE | 
|---|
| 1313 |  | 
|---|
| 1314 | dnl --------- Check for the glibc extensions to C99 fenv.h. --------- | 
|---|
| 1315 |  | 
|---|
| 1316 | AC_CHECK_HEADERS(fenv.h) | 
|---|
| 1317 | AC_CHECK_FUNCS(feenableexcept fedisableexcept) | 
|---|
| 1318 |  | 
|---|
| 1319 | dnl --------- Checks for a C++ linkable fchdir. --------- | 
|---|
| 1320 | AC_LANG_SAVE | 
|---|
| 1321 | AC_LANG_CPLUSPLUS | 
|---|
| 1322 | AC_MSG_CHECKING([fchdir]) | 
|---|
| 1323 | AC_TRY_COMPILE([#include <unistd.h>],[ | 
|---|
| 1324 | fchdir(0); | 
|---|
| 1325 | ],[HAVE_FCHDIR=yes | 
|---|
| 1326 | AC_DEFINE(HAVE_FCHDIR, 1, ["have fchdir"]) | 
|---|
| 1327 | AC_MSG_RESULT(yes)],[ | 
|---|
| 1328 | AC_MSG_RESULT(no) | 
|---|
| 1329 | HAVE_FCHDIR=no | 
|---|
| 1330 | ]) | 
|---|
| 1331 | AC_LANG_RESTORE | 
|---|
| 1332 | AC_SUBST(HAVE_FCHDIR) | 
|---|
| 1333 |  | 
|---|
| 1334 | dnl --------- Check for ios::fmtflags. --------- | 
|---|
| 1335 |  | 
|---|
| 1336 | AC_LANG_SAVE | 
|---|
| 1337 | AC_LANG_CPLUSPLUS | 
|---|
| 1338 | AC_MSG_CHECKING([ios::fmtflags]) | 
|---|
| 1339 | AC_TRY_COMPILE([#include <$iostream>],[ | 
|---|
| 1340 | $NAMESPACE_STD ios::fmtflags flags; | 
|---|
| 1341 | ],[HAVE_IOS_FMTFLAGS=yes | 
|---|
| 1342 | AC_DEFINE(HAVE_IOS_FMTFLAGS, 1, ["have iostream format flags"]) | 
|---|
| 1343 | AC_MSG_RESULT(yes)],[ | 
|---|
| 1344 | AC_MSG_RESULT(no) | 
|---|
| 1345 | HAVE_IOS_FMTFLAGS=no | 
|---|
| 1346 | ]) | 
|---|
| 1347 | AC_LANG_RESTORE | 
|---|
| 1348 | AC_SUBST(HAVE_IOS_FMTFLAGS) | 
|---|
| 1349 |  | 
|---|
| 1350 | dnl --------- check for long long  --------- | 
|---|
| 1351 |  | 
|---|
| 1352 | if test X"$LONGLONG" = Xyes; then | 
|---|
| 1353 | AC_LANG_SAVE | 
|---|
| 1354 | AC_LANG_CPLUSPLUS | 
|---|
| 1355 | AC_MSG_CHECKING(long long) | 
|---|
| 1356 | AC_TRY_COMPILE([],[ | 
|---|
| 1357 | long long i; | 
|---|
| 1358 | ],[AC_DEFINE(HAVE_LONG_LONG, 1, ["have long long"]) | 
|---|
| 1359 | AC_MSG_RESULT(yes)],[ | 
|---|
| 1360 | AC_MSG_RESULT(no) | 
|---|
| 1361 | ]) | 
|---|
| 1362 | AC_LANG_RESTORE | 
|---|
| 1363 | fi | 
|---|
| 1364 |  | 
|---|
| 1365 | dnl --------- Check for sgetn. --------- | 
|---|
| 1366 |  | 
|---|
| 1367 | AC_LANG_SAVE | 
|---|
| 1368 | AC_LANG_CPLUSPLUS | 
|---|
| 1369 | AC_MSG_CHECKING([sgetn]) | 
|---|
| 1370 | AC_TRY_COMPILE([#include <$iostream>],[ | 
|---|
| 1371 | char *c=0; | 
|---|
| 1372 | $NAMESPACE_STD streambuf *s=0; s->sgetn(c,0); | 
|---|
| 1373 | ],[HAVE_SGETN=yes | 
|---|
| 1374 | AC_DEFINE(HAVE_SGETN, 1, ["have sgetn"]) | 
|---|
| 1375 | AC_MSG_RESULT(yes)],[ | 
|---|
| 1376 | AC_MSG_RESULT(no) | 
|---|
| 1377 | HAVE_SGETN=no | 
|---|
| 1378 | ]) | 
|---|
| 1379 | AC_LANG_RESTORE | 
|---|
| 1380 | AC_SUBST(HAVE_SGETN) | 
|---|
| 1381 |  | 
|---|
| 1382 | dnl --------- Check for pubseekoff. --------- | 
|---|
| 1383 |  | 
|---|
| 1384 | AC_LANG_SAVE | 
|---|
| 1385 | AC_LANG_CPLUSPLUS | 
|---|
| 1386 | AC_MSG_CHECKING([pubseekoff]) | 
|---|
| 1387 | AC_TRY_COMPILE([#include <$iostream>],[ | 
|---|
| 1388 | $NAMESPACE_STD cout.rdbuf()->pubseekoff(0,$NAMESPACE_STD ios::beg, | 
|---|
| 1389 | $NAMESPACE_STD ios::out); | 
|---|
| 1390 | ],[HAVE_PUBSEEKOFF=yes | 
|---|
| 1391 | AC_DEFINE(HAVE_PUBSEEKOFF, 1, ["have pubseekoff"]) | 
|---|
| 1392 | AC_MSG_RESULT(yes)],[ | 
|---|
| 1393 | AC_MSG_RESULT(no) | 
|---|
| 1394 | HAVE_PUBSEEKOFF=no | 
|---|
| 1395 | ]) | 
|---|
| 1396 | AC_LANG_RESTORE | 
|---|
| 1397 | AC_SUBST(HAVE_PUBSEEKOFF) | 
|---|
| 1398 |  | 
|---|
| 1399 | dnl --------- Check for seekoff. --------- | 
|---|
| 1400 |  | 
|---|
| 1401 | AC_LANG_SAVE | 
|---|
| 1402 | AC_LANG_CPLUSPLUS | 
|---|
| 1403 | AC_MSG_CHECKING([seekoff]) | 
|---|
| 1404 | AC_TRY_COMPILE([#include <$iostream>],[ | 
|---|
| 1405 | $NAMESPACE_STD cout.rdbuf()->seekoff(0,$NAMESPACE_STD ios::beg, | 
|---|
| 1406 | $NAMESPACE_STD ios::out); | 
|---|
| 1407 | ],[HAVE_SEEKOFF=yes | 
|---|
| 1408 | AC_DEFINE(HAVE_SEEKOFF, 1, ["have seekoff"]) | 
|---|
| 1409 | AC_MSG_RESULT(yes)],[ | 
|---|
| 1410 | AC_MSG_RESULT(no) | 
|---|
| 1411 | HAVE_SEEKOFF=no | 
|---|
| 1412 | ]) | 
|---|
| 1413 | AC_LANG_RESTORE | 
|---|
| 1414 | AC_SUBST(HAVE_SEEKOFF) | 
|---|
| 1415 |  | 
|---|
| 1416 | dnl --------- Check for signal handler argument lists. --------- | 
|---|
| 1417 |  | 
|---|
| 1418 | AC_LANG_SAVE | 
|---|
| 1419 | AC_LANG_CPLUSPLUS | 
|---|
| 1420 | AC_MSG_CHECKING([signal handler needs ellipsis]) | 
|---|
| 1421 | AC_TRY_LINK([ | 
|---|
| 1422 | #include <signal.h> | 
|---|
| 1423 | extern "C" { | 
|---|
| 1424 | typedef void (*signal_handler)(...); | 
|---|
| 1425 | void handler(int); | 
|---|
| 1426 | } | 
|---|
| 1427 | void handler(int) {} | 
|---|
| 1428 | ],[ | 
|---|
| 1429 | signal(SIGINT, (signal_handler)handler); | 
|---|
| 1430 | ], | 
|---|
| 1431 | AC_DEFINE(SIGHASELLIP, 1, ["signal handler needs ellipsis"]) AC_MSG_RESULT(yes), | 
|---|
| 1432 | AC_MSG_RESULT(no)) | 
|---|
| 1433 | AC_LANG_RESTORE | 
|---|
| 1434 |  | 
|---|
| 1435 | dnl --------- Checks for rand functions --------- | 
|---|
| 1436 |  | 
|---|
| 1437 | AC_LANG_SAVE | 
|---|
| 1438 | AC_LANG_CPLUSPLUS | 
|---|
| 1439 | AC_CHECK_FUNCS(drand48) | 
|---|
| 1440 | AC_LANG_RESTORE | 
|---|
| 1441 |  | 
|---|
| 1442 | dnl --------- Checks for SYSV IPC. --------- | 
|---|
| 1443 |  | 
|---|
| 1444 | if test "X$SYSVIPC" = Xyes; then | 
|---|
| 1445 | AC_CHECK_FUNCS(shmget semget) | 
|---|
| 1446 | AC_CHECK_HEADERS(sys/ipc.h sys/sem.h sys/shm.h) | 
|---|
| 1447 | AC_MSG_CHECKING([for SYSV IPC]) | 
|---|
| 1448 | if test X$ac_cv_func_shmget = Xyes -a \ | 
|---|
| 1449 | X$ac_cv_func_semget = Xyes -a \ | 
|---|
| 1450 | X$ac_cv_header_sys_ipc_h = Xyes -a \ | 
|---|
| 1451 | X$ac_cv_header_sys_sem_h = Xyes -a \ | 
|---|
| 1452 | X$ac_cv_header_sys_shm_h = Xyes; then | 
|---|
| 1453 | HAVE_SYSV_IPC=yes | 
|---|
| 1454 | AC_DEFINE(HAVE_SYSV_IPC, 1, ["use SYSVIPC"]) | 
|---|
| 1455 | else | 
|---|
| 1456 | HAVE_SYSV_IPC=no | 
|---|
| 1457 | fi | 
|---|
| 1458 | AC_MSG_RESULT($HAVE_SYSV_IPC) | 
|---|
| 1459 | AC_SUBST(HAVE_SYSV_IPC) | 
|---|
| 1460 | else | 
|---|
| 1461 | HAVE_SYSV_IPC=no | 
|---|
| 1462 | AC_SUBST(HAVE_SYSV_IPC) | 
|---|
| 1463 | fi | 
|---|
| 1464 | AM_CONDITIONAL(COND_SYSV_IPC, [test "X$HAVE_SYSV_IPC" = Xyes]) | 
|---|
| 1465 |  | 
|---|
| 1466 | AC_LANG_SAVE | 
|---|
| 1467 | AC_LANG_CPLUSPLUS | 
|---|
| 1468 | AC_MSG_CHECKING([if semctl requires semun]) | 
|---|
| 1469 | AC_TRY_LINK([ | 
|---|
| 1470 | #include <sys/types.h> | 
|---|
| 1471 | #include <sys/ipc.h> | 
|---|
| 1472 | #include <sys/sem.h> | 
|---|
| 1473 | ],[ | 
|---|
| 1474 | int val = 0; | 
|---|
| 1475 | semctl(0,0,0,val); | 
|---|
| 1476 | ],[ | 
|---|
| 1477 | case $target in | 
|---|
| 1478 | *-sgi-irix*) | 
|---|
| 1479 | AC_DEFINE(SEMCTL_REQUIRES_SEMUN, 1, ["semctl requires semun"]) AC_MSG_RESULT(sgi-irix -- yes) | 
|---|
| 1480 | ;; | 
|---|
| 1481 | *) | 
|---|
| 1482 | AC_MSG_RESULT(no) | 
|---|
| 1483 | ;; | 
|---|
| 1484 | esac | 
|---|
| 1485 | ], | 
|---|
| 1486 | AC_DEFINE(SEMCTL_REQUIRES_SEMUN, 1, ["semctl requires semun"]) AC_MSG_RESULT(yes)) | 
|---|
| 1487 | AC_LANG_RESTORE | 
|---|
| 1488 | AC_DEFINE(SHMTYPE, [char *], ["type to use in shared memory"]) | 
|---|
| 1489 |  | 
|---|
| 1490 | dnl ----------- See if Fortran works -------------- | 
|---|
| 1491 |  | 
|---|
| 1492 | AC_MSG_CHECKING(if fortran compiler works) | 
|---|
| 1493 | if test -n "$F77" -a "$F77" != no ; then | 
|---|
| 1494 | /bin/rm -f ffunc.f flink.c | 
|---|
| 1495 | echo "      program main" > ffunc.f | 
|---|
| 1496 | echo "      end" >> ffunc.f | 
|---|
| 1497 | if $F77 -o ffunc ffunc.f 1>&5 2>&5; then | 
|---|
| 1498 | AC_MSG_RESULT(yes) | 
|---|
| 1499 | else | 
|---|
| 1500 | AC_MSG_RESULT(no) | 
|---|
| 1501 | AC_MSG_FAILURE(fortran compiler does not work) | 
|---|
| 1502 | fi | 
|---|
| 1503 | /bin/rm -f ffunc ffunc.f | 
|---|
| 1504 | fi | 
|---|
| 1505 |  | 
|---|
| 1506 | dnl ----------- Fortran symbol names -------------- | 
|---|
| 1507 |  | 
|---|
| 1508 | AC_MSG_CHECKING(fortran symbols) | 
|---|
| 1509 | if test -n "$F77" -a "$F77" != no ; then | 
|---|
| 1510 | /bin/rm -f ffunc.f flink.c | 
|---|
| 1511 | echo "      subroutine ffunc()" > ffunc.f | 
|---|
| 1512 | echo "      return" >> ffunc.f | 
|---|
| 1513 | echo "      end" >> ffunc.f | 
|---|
| 1514 | $F77 -c ffunc.f 1>/dev/null 2>/dev/null | 
|---|
| 1515 | echo "main(){ FF(); return 0; }" > flink.c | 
|---|
| 1516 | if $CC -o flink -DFF=ffunc flink.c ffunc.o $LDFLAGS $LIBS 1>/dev/null 2>/dev/null; then | 
|---|
| 1517 | AC_MSG_RESULT(same as C) | 
|---|
| 1518 | F77_SYMBOLS=symbol | 
|---|
| 1519 | elif $CC -o flink -DFF=ffunc_ flink.c ffunc.o $LDFLAGS $LIBS 1>/dev/null 2>/dev/null; then | 
|---|
| 1520 | AC_MSG_RESULT(lowercase with underscore) | 
|---|
| 1521 | F77_SYMBOLS=symbol_ | 
|---|
| 1522 | elif $CC -o flink -DFF=FFUNC flink.c ffunc.o $LDFLAGS $LIBS 1>/dev/null 2>/dev/null; then | 
|---|
| 1523 | AC_MSG_RESULT(uppercase) | 
|---|
| 1524 | F77_SYMBOLS=SYMBOL | 
|---|
| 1525 | elif $CC -o flink -DFF=FFUNC_ flink.c ffunc.o $LDFLAGS $LIBS 1>/dev/null 2>/dev/null; then | 
|---|
| 1526 | AC_MSG_RESULT(uppercase with underscore) | 
|---|
| 1527 | F77_SYMBOLS=SYMBOL_ | 
|---|
| 1528 | else | 
|---|
| 1529 | AC_MSG_RESULT(giving up) | 
|---|
| 1530 | AC_MSG_ERROR(could not determine F77 symbol names) | 
|---|
| 1531 | fi | 
|---|
| 1532 | /bin/rm -f ffunc.f ffunc.o flink flink.c flink.o ffunc | 
|---|
| 1533 | else | 
|---|
| 1534 | F77_SYMBOLS=symbol_ | 
|---|
| 1535 | AC_MSG_RESULT(guessing lowercase with underscore) | 
|---|
| 1536 | fi | 
|---|
| 1537 | AC_SUBST(F77_SYMBOLS) | 
|---|
| 1538 |  | 
|---|
| 1539 | dnl ----------- check for FORTRAN libraries -------------- | 
|---|
| 1540 |  | 
|---|
| 1541 | AC_LANG_SAVE | 
|---|
| 1542 | AC_LANG_CPLUSPLUS | 
|---|
| 1543 | LIBSSAV="$LIBS" | 
|---|
| 1544 | LIBS="$LIBSSAV $FLIBS" | 
|---|
| 1545 |  | 
|---|
| 1546 | LIBBLAS="" | 
|---|
| 1547 | F77_DGEMM=`$PERL $srcdir/bin/mkf77sym.pl.in -method $F77_SYMBOLS DAXPY` | 
|---|
| 1548 | AC_CHECK_FUNC($F77_DGEMM,HAVE_BLAS=yes,[ | 
|---|
| 1549 | AC_CHECK_LIB(essl,$F77_DGEMM,[HAVE_BLAS=yes;LIBBLAS="-lessl"], | 
|---|
| 1550 | AC_CHECK_LIB(blas,$F77_DGEMM,[HAVE_BLAS=yes;LIBBLAS="-lblas"]) | 
|---|
| 1551 | )] | 
|---|
| 1552 | ) | 
|---|
| 1553 | if test X$HAVE_BLAS != Xyes; then | 
|---|
| 1554 | LIBSSAV2="$LIBS" | 
|---|
| 1555 | LIBS="-latlas $LIBS" | 
|---|
| 1556 | AC_CHECK_LIB(f77blas,$F77_DGEMM,[HAVE_BLAS=yes;LIBBLAS="-lf77blas -latlas"], | 
|---|
| 1557 | LIBS="$LIBSSAV2") | 
|---|
| 1558 | fi | 
|---|
| 1559 | AC_SUBST(HAVE_BLAS) | 
|---|
| 1560 | if test X$HAVE_BLAS != Xyes; then | 
|---|
| 1561 | echo "WARNING: Could not link to the BLAS library.  It can be obtained at" | 
|---|
| 1562 | echo "http://www.netlib.org/blas.  Use --with-libdirs and/or --with-libs" | 
|---|
| 1563 | echo "to specify the name of the library." | 
|---|
| 1564 | AC_MSG_ERROR([BLAS is required to complete the build]) | 
|---|
| 1565 | fi | 
|---|
| 1566 |  | 
|---|
| 1567 | LIBS="$LIBSSAV $LIBBLAS $FLIBS" | 
|---|
| 1568 |  | 
|---|
| 1569 | LIBLAPACK="" | 
|---|
| 1570 | F77_DGESVD=`$PERL $srcdir/bin/mkf77sym.pl.in -method $F77_SYMBOLS DGESVD` | 
|---|
| 1571 | AC_CHECK_FUNC($F77_DGESVD,HAVE_LAPACK=yes,[ | 
|---|
| 1572 | AC_CHECK_LIB(lapack,$F77_DGESVD,[HAVE_LAPACK=yes;LIBLAPACK="-llapack"] | 
|---|
| 1573 | )] | 
|---|
| 1574 | ) | 
|---|
| 1575 | AC_DEFINE(HAVE_LAPACK, [$HAVE_LAPACK], ["use lapack"]) | 
|---|
| 1576 | if test X$HAVE_LAPACK != Xyes; then | 
|---|
| 1577 | echo "Could not link to the LAPACK library.  It can be obtained at" | 
|---|
| 1578 | echo "http://www.netlib.org/lapack.  Use --with-libdirs and/or --with-libs" | 
|---|
| 1579 | echo "to specify the name of the library." | 
|---|
| 1580 | AC_MSG_ERROR([LAPACK is required to complete the build]) | 
|---|
| 1581 | fi | 
|---|
| 1582 |  | 
|---|
| 1583 | FLIBS="$LIBLAPACK $LIBBLAS $FLIBS" | 
|---|
| 1584 | AC_LANG_RESTORE | 
|---|
| 1585 |  | 
|---|
| 1586 | dnl ----------- check for Scalable BLAS library -------------- | 
|---|
| 1587 |  | 
|---|
| 1588 | LIBSSAV="$LIBS" | 
|---|
| 1589 | LIBS="$LIBS $FLIBS" | 
|---|
| 1590 | HAVE_SCALABLE_BLAS=no | 
|---|
| 1591 | AC_CHECK_FUNC(sB_init, | 
|---|
| 1592 | HAVE_SCALABLE_BLAS=yes,[ | 
|---|
| 1593 | AC_CHECK_LIB(sB_BLAS,sB_init,[ | 
|---|
| 1594 | HAVE_SCALABLE_BLAS=yes | 
|---|
| 1595 | LIBSSAV="-lsB_BLAS $LIBSSAV" | 
|---|
| 1596 | ])] | 
|---|
| 1597 | ) | 
|---|
| 1598 | LIBS="$LIBSSAV" | 
|---|
| 1599 | if test $HAVE_SCALABLE_BLAS = yes; then | 
|---|
| 1600 | AC_DEFINE(HAVE_SCALABLE_BLAS, 1, ["have scalabale blas"]) | 
|---|
| 1601 | fi | 
|---|
| 1602 |  | 
|---|
| 1603 | dnl ----------- NIAMA library checks -------------- | 
|---|
| 1604 |  | 
|---|
| 1605 | AC_LANG_SAVE | 
|---|
| 1606 | AC_LANG_CPLUSPLUS | 
|---|
| 1607 | AC_CHECK_PROG(NIAMACFG,niama-config,niama-config) | 
|---|
| 1608 | if test X$NIAMACFG != X; then | 
|---|
| 1609 | LIBSSAV="$LIBS" | 
|---|
| 1610 | CPPSAV="$CPPFLAGS" | 
|---|
| 1611 | NIAMALIBS="`niama-config --libs` `niama-config --corbalibs`" | 
|---|
| 1612 | CPPFLAGS="$CPPFLAGS `niama-config --cppflags`" | 
|---|
| 1613 | LIBS="$NIAMALIBS $LIBS" | 
|---|
| 1614 | AC_TRY_LINK([ | 
|---|
| 1615 | #include <niama.h> | 
|---|
| 1616 | ],[ | 
|---|
| 1617 | exit(0); | 
|---|
| 1618 | ],[ | 
|---|
| 1619 | AC_DEFINE(HAVE_NIAMA, 1, ["have NIAMA"]) | 
|---|
| 1620 | ],[ | 
|---|
| 1621 | LIBS="$LIBSSAV" | 
|---|
| 1622 | CPPFLAGS="$CPPSAV" | 
|---|
| 1623 | ] | 
|---|
| 1624 | ) | 
|---|
| 1625 | fi | 
|---|
| 1626 | AC_LANG_RESTORE | 
|---|
| 1627 |  | 
|---|
| 1628 | dnl ----------- libint library checks -------------- | 
|---|
| 1629 |  | 
|---|
| 1630 | AC_LANG_SAVE | 
|---|
| 1631 | AC_LANG_CPLUSPLUS | 
|---|
| 1632 | AC_CHECK_HEADERS(libint/libint.h, | 
|---|
| 1633 | HAVE_LIBINT_LIBINT_H=yes | 
|---|
| 1634 | AC_CHECK_LIB(int,init_libint_base, | 
|---|
| 1635 | HAVE_LIBINT=yes | 
|---|
| 1636 | AC_DEFINE(HAVE_LIBINT, 1, ["have libint"]) | 
|---|
| 1637 | AC_SUBST(HAVE_LIBINT) | 
|---|
| 1638 | LIBS="-lint $LIBS" | 
|---|
| 1639 | ), | 
|---|
| 1640 | HAVE_LIBINT_LIBINT_H=no | 
|---|
| 1641 | ) | 
|---|
| 1642 | AC_LANG_RESTORE | 
|---|
| 1643 | AC_DEFINE(HAVE_LIBINT_LIBINT_H, [$HAVE_LIBINT_LIBINT_H], ["use libint.h"]) | 
|---|
| 1644 | AM_CONDITIONAL([COND_LIBINT], [test x"$HAVE_LIBINT" = x"1"]) | 
|---|
| 1645 |  | 
|---|
| 1646 | dnl ----------- libr12 library checks -------------- | 
|---|
| 1647 |  | 
|---|
| 1648 | AC_LANG_SAVE | 
|---|
| 1649 | AC_LANG_CPLUSPLUS | 
|---|
| 1650 | AC_CHECK_HEADERS(libr12/libr12.h, | 
|---|
| 1651 | HAVE_LIBR12_LIBR12_H=yes | 
|---|
| 1652 | AC_CHECK_LIB(r12,init_libr12_base, | 
|---|
| 1653 | HAVE_LIBR12=yes | 
|---|
| 1654 | AC_DEFINE(HAVE_LIBR12, 1, ["have libr12"]) | 
|---|
| 1655 | AC_SUBST(HAVE_LIBR12) | 
|---|
| 1656 | LIBS="-lr12 $LIBS" | 
|---|
| 1657 | ), | 
|---|
| 1658 | HAVE_LIBR12_LIBR12_H=no | 
|---|
| 1659 | ) | 
|---|
| 1660 | AC_LANG_RESTORE | 
|---|
| 1661 | AC_DEFINE(HAVE_LIBR12_LIBR12_H, [$HAVE_LIBR12_LIBR12_H], ["use libr12.h"]) | 
|---|
| 1662 | AM_CONDITIONAL([COND_LIBR12], [test x"$HAVE_LIBR12" = x"1"]) | 
|---|
| 1663 |  | 
|---|
| 1664 | dnl ----------- libderiv library checks -------------- | 
|---|
| 1665 |  | 
|---|
| 1666 | AC_LANG_SAVE | 
|---|
| 1667 | AC_LANG_CPLUSPLUS | 
|---|
| 1668 | AC_CHECK_HEADERS(libderiv/libderiv.h, | 
|---|
| 1669 | HAVE_LIBDERIV_LIBDERIV_H=yes | 
|---|
| 1670 | AC_CHECK_LIB(deriv,init_libderiv_base, | 
|---|
| 1671 | HAVE_LIBDERIV=yes | 
|---|
| 1672 | AC_DEFINE(HAVE_LIBDERIV, 1, ["have libderiv"]) | 
|---|
| 1673 | AC_SUBST(HAVE_LIBDERIV) | 
|---|
| 1674 | LIBS="-lderiv $LIBS" | 
|---|
| 1675 | ), | 
|---|
| 1676 | HAVE_LIBDERIV_LIBDERIV_H=no | 
|---|
| 1677 | ) | 
|---|
| 1678 | AC_LANG_RESTORE | 
|---|
| 1679 | AC_DEFINE(HAVE_LIBDERIV_LIBDERIV_H, [$HAVE_LIBDERIV_LIBDERIV_H], ["use libderiv.h"]) | 
|---|
| 1680 | AM_CONDITIONAL([COND_LIBDERIV], [test x"$HAVE_LIBDERIV" = x"1"]) | 
|---|
| 1681 |  | 
|---|
| 1682 | dnl ----------- make sure we have everything for cints and mbptr12 ---------- | 
|---|
| 1683 |  | 
|---|
| 1684 | if test ! X$HAVE_LIBR12 = Xyes -o ! X$HAVE_LIBINT = Xyes; then | 
|---|
| 1685 | EXCLUDED_DIRS="-x SRC_LIB_CHEMISTRY_QC_CINTS -x SRC_LIB_CHEMISTRY_QC_MBPTR12 $EXCLUDED_DIRS" | 
|---|
| 1686 | fi | 
|---|
| 1687 |  | 
|---|
| 1688 | dnl --------- Template instantiation. --------- | 
|---|
| 1689 |  | 
|---|
| 1690 | if test $template_instantiation = auto; then | 
|---|
| 1691 | AC_MSG_CHECKING(choosing template instantiation method) | 
|---|
| 1692 | if test X$GXX = Xyes; then | 
|---|
| 1693 | AC_MSG_RESULT("gcc (none)") | 
|---|
| 1694 | else | 
|---|
| 1695 | case $target in | 
|---|
| 1696 | *-sgi-irix6.0*) | 
|---|
| 1697 | AC_MSG_RESULT("*-sgi-irix6.0* (none)") | 
|---|
| 1698 | ;; | 
|---|
| 1699 | *-sgi-irix*) | 
|---|
| 1700 | template_instantiation=ptused | 
|---|
| 1701 | AC_MSG_RESULT("*-sgi-irix* (ptused)") | 
|---|
| 1702 | ;; | 
|---|
| 1703 | *-cray-unicos*) | 
|---|
| 1704 | template_instantiation=craysimp | 
|---|
| 1705 | AC_MSG_RESULT("*-cray-unicos* (craysimp)") | 
|---|
| 1706 | ;; | 
|---|
| 1707 | *-dec-osf*) | 
|---|
| 1708 | template_instantiation=repodir | 
|---|
| 1709 | AC_MSG_RESULT("*-dec-osf* (repodir)") | 
|---|
| 1710 | ;; | 
|---|
| 1711 | alpha*) | 
|---|
| 1712 | template_instantiation=repodir | 
|---|
| 1713 | AC_MSG_RESULT("alpha* non-GNU C++ (repodir)") | 
|---|
| 1714 | ;; | 
|---|
| 1715 | *-solaris*) | 
|---|
| 1716 | template_instantiation=sunexpl | 
|---|
| 1717 | AC_MSG_RESULT("*-solaris* (sunexpl)") | 
|---|
| 1718 | ;; | 
|---|
| 1719 | *) | 
|---|
| 1720 | AC_MSG_RESULT("generic non GNU (none)") | 
|---|
| 1721 | ;; | 
|---|
| 1722 | esac | 
|---|
| 1723 | fi | 
|---|
| 1724 | fi | 
|---|
| 1725 |  | 
|---|
| 1726 | if test $template_instantiation = auto; then | 
|---|
| 1727 | template_instantiation=none | 
|---|
| 1728 | fi | 
|---|
| 1729 |  | 
|---|
| 1730 | AC_MSG_CHECKING(template instantiation flags) | 
|---|
| 1731 | TMPLINST=no | 
|---|
| 1732 | TMPLREPO= | 
|---|
| 1733 | TMPLINLIB=no | 
|---|
| 1734 | case $template_instantiation in | 
|---|
| 1735 | repodir) | 
|---|
| 1736 | TMPLREPO=cxx_repository | 
|---|
| 1737 | TMPLINLIB=yes | 
|---|
| 1738 | ;; | 
|---|
| 1739 | craysimp) | 
|---|
| 1740 | CXXFLAGS="$CXXFLAGS -h simple_templates" | 
|---|
| 1741 | ;; | 
|---|
| 1742 | gnurepo) | 
|---|
| 1743 | TMPLINST=yes | 
|---|
| 1744 | CXXFLAGS="$CXXFLAGS -frepo" | 
|---|
| 1745 | AC_MSG_RESULT(gnurepo) | 
|---|
| 1746 | ;; | 
|---|
| 1747 | gnuexpl) | 
|---|
| 1748 | # automatic template instantiation causes problems with libstc++-v3 | 
|---|
| 1749 | CXXFLAGS="$CXXFLAGS -fno-implicit-templates" | 
|---|
| 1750 | EXPLICIT_TEMPLATE_INSTANTIATION=yes | 
|---|
| 1751 | AC_DEFINE(EXPLICIT_TEMPLATE_INSTANTIATION, 1, ["template instantiation flags"]) | 
|---|
| 1752 | ;; | 
|---|
| 1753 | sunexpl) | 
|---|
| 1754 | CXXFLAGS="$CXXFLAGS -instances=explicit" | 
|---|
| 1755 | AC_DEFINE(EXPLICIT_TEMPLATE_INSTANTIATION, 1, ["template instantiation flags"]) | 
|---|
| 1756 | ;; | 
|---|
| 1757 | ptused) | 
|---|
| 1758 | CXXFLAGS="$CXXFLAGS -ptused" | 
|---|
| 1759 | ;; | 
|---|
| 1760 | none) | 
|---|
| 1761 | AC_MSG_RESULT(none) | 
|---|
| 1762 | ;; | 
|---|
| 1763 | *) | 
|---|
| 1764 | AC_MSG_RESULT($template_instantiation) | 
|---|
| 1765 | AC_MSG_ERROR(unknown template instantiation method) | 
|---|
| 1766 | esac | 
|---|
| 1767 |  | 
|---|
| 1768 | AC_SUBST(TMPLINST) | 
|---|
| 1769 | AC_SUBST(TMPLREPO) | 
|---|
| 1770 | AC_SUBST(TMPLINLIB) | 
|---|
| 1771 |  | 
|---|
| 1772 | dnl --------- Checks that must be done last. --------- | 
|---|
| 1773 |  | 
|---|
| 1774 | AC_MSG_CHECKING([for special flags that must be set last]) | 
|---|
| 1775 | case $target in | 
|---|
| 1776 | i860-intel-puma*) | 
|---|
| 1777 | LDFLAGS="$LDFLAGS -mpuma -mnoieee" | 
|---|
| 1778 | AC_MSG_RESULT(paragon puma) | 
|---|
| 1779 | ;; | 
|---|
| 1780 | i686-intel-cougar*) | 
|---|
| 1781 | LDFLAGS="$LDFLAGS -mcougar -mnoieee" | 
|---|
| 1782 | AC_MSG_RESULT(teraflop cougar) | 
|---|
| 1783 | ;; | 
|---|
| 1784 | i860-intel-sunmos*) | 
|---|
| 1785 | LDFLAGS="$LDFLAGS -msunmos -mnoieee" | 
|---|
| 1786 | AC_MSG_RESULT(paragon sunmos) | 
|---|
| 1787 | ;; | 
|---|
| 1788 | i860-intel-osf*) | 
|---|
| 1789 | LDFLAGS="$LDFLAGS -mnx -mnoieee" | 
|---|
| 1790 | AC_MSG_RESULT(osf paragon) | 
|---|
| 1791 | ;; | 
|---|
| 1792 | *) | 
|---|
| 1793 | AC_MSG_RESULT(none) | 
|---|
| 1794 | ;; | 
|---|
| 1795 | esac | 
|---|
| 1796 |  | 
|---|
| 1797 | dnl --------- Shared library configuration. --------- | 
|---|
| 1798 |  | 
|---|
| 1799 | enablelibtool=yes | 
|---|
| 1800 | AC_ARG_ENABLE(libtool, | 
|---|
| 1801 | [  --disable-libtool       Do not use libtool.], | 
|---|
| 1802 | [ | 
|---|
| 1803 | case $enableval in | 
|---|
| 1804 | yes) | 
|---|
| 1805 | ;; | 
|---|
| 1806 | no) | 
|---|
| 1807 | enablelibtool=no | 
|---|
| 1808 | ;; | 
|---|
| 1809 | *) | 
|---|
| 1810 | AC_MSG_ERROR([Invalid value for --(dis|en)able-libtool ($enableval)]) | 
|---|
| 1811 | ;; | 
|---|
| 1812 | esac | 
|---|
| 1813 | ]) | 
|---|
| 1814 |  | 
|---|
| 1815 | if test "$enablelibtool" = yes; then | 
|---|
| 1816 |  | 
|---|
| 1817 | dnl by default make only static libraries | 
|---|
| 1818 | AC_DISABLE_SHARED | 
|---|
| 1819 | AC_PROG_LIBTOOL | 
|---|
| 1820 |  | 
|---|
| 1821 | OBJSUF=lo | 
|---|
| 1822 | LIBSUF=la | 
|---|
| 1823 |  | 
|---|
| 1824 | else | 
|---|
| 1825 |  | 
|---|
| 1826 | enable_shared=no | 
|---|
| 1827 |  | 
|---|
| 1828 | fi | 
|---|
| 1829 |  | 
|---|
| 1830 | if test "$enable_shared" = "no"; then | 
|---|
| 1831 | OBJSUF=o | 
|---|
| 1832 | LIBSUF=a | 
|---|
| 1833 | fi | 
|---|
| 1834 |  | 
|---|
| 1835 | ENABLESHARED=$enable_shared | 
|---|
| 1836 | AC_SUBST(ENABLESHARED) | 
|---|
| 1837 |  | 
|---|
| 1838 | dnl --------- CCA component configuration --------- | 
|---|
| 1839 |  | 
|---|
| 1840 | have_condcca="false" | 
|---|
| 1841 | if test $components == "yes"; then | 
|---|
| 1842 |  | 
|---|
| 1843 | if test $HAVE_MPI == "yes" && | 
|---|
| 1844 | test $HAVE_MPIPP == "no"; then | 
|---|
| 1845 | AC_MSG_ERROR([libmpi++ needed for mpi cca components]) | 
|---|
| 1846 | fi | 
|---|
| 1847 |  | 
|---|
| 1848 | if test -z $CCA_CHEM_CONFIG && ! test -x $CCA_CHEM_CONFIG; then | 
|---|
| 1849 | AC_MSG_ERROR([cca-chem-config is required to build CCA component code]) | 
|---|
| 1850 | fi | 
|---|
| 1851 |  | 
|---|
| 1852 | CCA_CHEM_INCLUDE=`$CCA_CHEM_CONFIG --includedir` | 
|---|
| 1853 | CCA_CHEM_LIB=`$CCA_CHEM_CONFIG --libdir` | 
|---|
| 1854 | CCA_CHEM_PREFIX=`$CCA_CHEM_CONFIG --prefix` | 
|---|
| 1855 | CCA_CHEM_REPO=$CCA_CHEM_PREFIX/repo | 
|---|
| 1856 | AC_SUBST(CCA_CHEM_INCLUDE) | 
|---|
| 1857 | AC_SUBST(CCA_CHEM_LIB) | 
|---|
| 1858 | AC_SUBST(CCA_CHEM_REPO) | 
|---|
| 1859 |  | 
|---|
| 1860 | CCAFE_CONFIG=`$CCA_CHEM_CONFIG --ccafe-config` | 
|---|
| 1861 | ENABLE_PYTHON="no" # no need for python checks | 
|---|
| 1862 | AC_CHECK_CCA() | 
|---|
| 1863 |  | 
|---|
| 1864 | LIBS="-L$CCAFE_LIB $LIBS" | 
|---|
| 1865 | CCA_CHEM_INCLUDE=-I$CCA_CHEM_INCLUDE | 
|---|
| 1866 | BABEL_INCLUDE=-I$BABEL_INCLUDE | 
|---|
| 1867 | CCA_SPEC_BABEL_INCLUDE=-I$CCA_SPEC_BABEL_INCLUDE | 
|---|
| 1868 | CCAFE_INCLUDE="-I$CCAFE_INCLUDE -I$CCAFE_INCLUDE/dc/babel/babel-cca/server" | 
|---|
| 1869 | CPPFLAGS="$CPPFLAGS $BABEL_INCLUDE $CCA_SPEC_BABEL_INCLUDE $CCA_CHEM_INCLUDE $CCAFE_INCLUDE" | 
|---|
| 1870 |  | 
|---|
| 1871 | AC_CHECK_HEADER(sidl.h, | 
|---|
| 1872 | AC_DEFINE(HAVE_SIDL_HEADERS, 1, ["have sidl"]), | 
|---|
| 1873 | AC_MSG_ERROR([problem with babel headers]) ) | 
|---|
| 1874 | AC_CHECK_HEADER(gov_cca_IOR.h, | 
|---|
| 1875 | AC_DEFINE(HAVE_CCA_SPEC_BABEL_HEADERS, 1, ["have CCA spec babel headers"]), | 
|---|
| 1876 | AC_MSG_ERROR([problem with cca-spec-babel headers]) ) | 
|---|
| 1877 | AC_CHECK_HEADER(Chemistry_QC_Model_IOR.h, | 
|---|
| 1878 | AC_DEFINE(HAVE_CCA_CHEM_HEADERS, 1, ["have CCA chem headers"]), | 
|---|
| 1879 | AC_MSG_ERROR([problem with cca-chem-generic headers]) ) | 
|---|
| 1880 |  | 
|---|
| 1881 | have_condcca="true" | 
|---|
| 1882 | else | 
|---|
| 1883 | EXCLUDED_DIRS="-x LIB_CCA -x SRC_LIB_CHEMISTRY_CCA -x SRC_LIB_CHEMISTRY_QC_INTCCA $EXCLUDED_DIRS" | 
|---|
| 1884 | fi | 
|---|
| 1885 | AM_CONDITIONAL(COND_CCA, [test x"$have_condcca" = x"true"]) | 
|---|
| 1886 |  | 
|---|
| 1887 | dnl --------- Find the list of all sc libraries. --------- | 
|---|
| 1888 |  | 
|---|
| 1889 | SCLIBS=`$PERL $srcdir/bin/listlibs.pl -I$srcdir/src/lib -DLIBSUF=$LIBSUF $srcdir/src/lib` | 
|---|
| 1890 | AC_SUBST(SCLIBS) | 
|---|
| 1891 |  | 
|---|
| 1892 | dnl --------- Define the library directory macros. --------- | 
|---|
| 1893 |  | 
|---|
| 1894 | if test "$enableproduction" = "no"; then | 
|---|
| 1895 | # abs_srcdir is not available, only srcdir, which is insufficient | 
|---|
| 1896 | abs_srcdir=$(readlink -m "${srcdir}") | 
|---|
| 1897 | AC_DEFINE_DIR(SRC_SCLIBDIR, abs_srcdir/lib, ["source SC libdir"]) | 
|---|
| 1898 | fi | 
|---|
| 1899 | AC_DEFINE_DIR(INSTALLED_SCLIBDIR, prefix/lib, ["install SC libdir"]) | 
|---|
| 1900 | AC_DEFINE_DIR(SCDATADIR, scdatadir, ["SC data dir"]) | 
|---|
| 1901 |  | 
|---|
| 1902 | dnl --------- Create the stub Makefiles. --------- | 
|---|
| 1903 |  | 
|---|
| 1904 | dnl $PERL $srcdir/bin/objectdir.pl $EXCLUDED_DIRS $srcdir | 
|---|
| 1905 |  | 
|---|
| 1906 | ### output files | 
|---|
| 1907 | AC_CONFIG_FILES([ | 
|---|
| 1908 | bin/mkf77sym.pl | 
|---|
| 1909 | ]) | 
|---|
| 1910 | AC_CONFIG_FILES([ | 
|---|
| 1911 | doc/doxygen.cfg | 
|---|
| 1912 | ]) | 
|---|
| 1913 | AC_CONFIG_FILES([ | 
|---|
| 1914 | Makefile | 
|---|
| 1915 | lib/Makefile | 
|---|
| 1916 | src/lib/Makefile | 
|---|
| 1917 | src/bin/mpqc/Makefile | 
|---|
| 1918 | ]) | 
|---|
| 1919 | AC_CONFIG_TESTDIR([src/bin/mpqc/validate]) | 
|---|
| 1920 | AC_CONFIG_TESTDIR(src/lib) | 
|---|
| 1921 | AC_CONFIG_TESTDIR(src/lib/validate) | 
|---|
| 1922 | AC_CONFIG_FILES([ | 
|---|
| 1923 | src/lib/validate/Makefile | 
|---|
| 1924 | ]) | 
|---|
| 1925 | AC_CONFIG_FILES([ | 
|---|
| 1926 | src/bin/mpqc/validate/atlocal | 
|---|
| 1927 | src/bin/mpqc/validate/Makefile | 
|---|
| 1928 | ]) | 
|---|
| 1929 | AC_CONFIG_FILES([src/bin/mpqc/validate/molecuilder_mpqc], [chmod +x src/bin/mpqc/validate/molecuilder_mpqc]) | 
|---|
| 1930 | AC_CONFIG_FILES([src/lib/test_env.sh], [chmod +x src/lib/test_env.sh]) | 
|---|
| 1931 |  | 
|---|
| 1932 | AC_OUTPUT | 
|---|
| 1933 |  | 
|---|
| 1934 |  | 
|---|