dnl Process this file with autoconf 2.13 to produce a configure script dnl for the CCAFFEINE software installation. dnl autconf configure.in > configure #-------------------------------------------------------------------- # Disable caching since it seems to get in the way # more times than it helps us. #-------------------------------------------------------------------- define([AC_CACHE_LOAD], )dnl define([AC_CACHE_SAVE], )dnl # Make sure we're us. AC_INIT(cxx/dc/user_iface/CmdLineCommonInternal.h) AC_PREREQ(2.13) AC_PREFIX_DEFAULT([`pwd`]) # record the args to configure in a var CCAFE_CONFIG_ARGS(CONFIG_ARGS) # load a portable pushd CCAFE_PUSHD #------------------------------------------------------------------------------ # whine about deprecated switches early #------------------------------------------------------------------------------ # trap old --with-babel configurations CCAFE_BABEL_OBSOLETE # trap old --with-cca configurations CCAFE_CCA_OBSOLETE # --------- # issue reminders about env vars which make make our life bad # if abused. # --------- echo "Checking for environment variables that may affect the configure/make:" dccafe_var_checks=`cat varlist.in | grep '=' | sed 's/=.*//' | grep -v ^#` for dccafe_var_line in $dccafe_var_checks ; do dccafe_var_name=`echo $dccafe_var_line | sed 's/[ , ]//'` if test "$dccafe_var_name" = "SHELL" ; then continue; # ignore SHELL. fi CCAFE_ENV_CHECK($dccafe_var_name, [predefined. Hope it is correct.] , [no. OK.]) done echo "Done checking for environment variables." # $Header: /cvs/ccaffeine/repository/dccafe/configure.in,v 1.130 2005/05/10 22:24:09 baallan Exp $ # created: Ben Allan 5/2000, Sandia national laboratories/California. # # We have a lot to configure for if we were doing a purely static build, namely: # - where we are. # - AWK, LN, MAKE, RANLIB (required) # - CC, CPP, CXX, CXXCPP (required) # - F77, F90, LEX, YACC (optional) # - CCA spec babel (required) # - MPI (optional) # - BLAS/LAPACK # - GMAKE (still required for older OS not having 'include' statements) # - TCLSH (optional) # - Dynamic Loading (not optional) # - non-blocking io # - purify (optional) # - parasoft (optional) # - siloon (optional python scripting) #------------------------------------------------------------------------------ # Directory where we keep the autoconf stuff and some HPC environment folklore. # # Some folklore is keyed to hostname, which is probably a very bad # idea in the long run, but provides examples for frustrated alpha users. # Most of it is keyed to the answers supplied by AC_CANONICAL_SYSTEM. # # We wish MPICH was adapted to use autoconf 2.x so we could steal # conveniently everything they deduce about fortran, mpi, threads, # etc in their configure scripts and extend it to our compilers. #------------------------------------------------------------------------------ AC_CONFIG_AUX_DIR(config) CCA_BUNDLE_TAG #------------------------------------------------------------------------------ # Check for host type early so that host specific things can be done. #------------------------------------------------------------------------------ AC_CANONICAL_HOST target_os=unknown OS_ARCH=OS_UNKNOWN case "$host" in *powerpc-apple-darwin*) OS_ARCH=MACOSX ;; *powerpc-apple-Darwin*) OS_ARCH=MACOSX ;; esac # the next macro recomputes target_os anyway. AC_CANONICAL_SYSTEM case "$target_os" in *arwin*) OS_ARCH=OS_MACOSX ;; *linux*) OS_ARCH=OS_LINUX ;; *Linux*) OS_ARCH=OS_LINUX ;; *LINUX*) OS_ARCH=OS_LINUX ;; *aix*) OS_ARCH=OS_AIX ;; *irix*) OS_ARCH=OS_IRIX ;; *olaris*) OS_ARCH=OS_SUNOS5 ;; esac AC_ARG_PROGRAM #------------------------------------------------------------------------------ # End host type configuration. #------------------------------------------------------------------------------ CCAFE_MAJOR_VERSION=0 CCAFE_MINOR_VERSION=5 CCAFE_PATCH_LEVEL=7 CCAFE_VERSION=$CCAFE_MAJOR_VERSION.$CCAFE_MINOR_VERSION.$CCAFE_PATCH_LEVEL CCAFE_VERSION_UNDERBAR=${CCAFE_MAJOR_VERSION}_${CCAFE_MINOR_VERSION}_${CCAFE_PATCH_LEVEL} VERSION=${CCAFE_VERSION} PKG_NAME=ccafe-$VERSION VER_SUFFIX=_$CCAFE_VERSION_UNDERBAR if test "x$program_suffix" != "xNONE" ; then PROGRAM_SUFFIX=$program_suffix fi if test "${exec_prefix}" = "NONE" -a "${prefix}" != "NONE"; then exec_prefix=$prefix fi if test "${prefix}" = "NONE"; then prefix=`pwd` fi if test "${exec_prefix}" = "NONE"; then exec_prefix=`pwd` fi CCAFE_AC_PREFIX($prefix) CCAFE_AC_EXEC_PREFIX($exec_prefix) pkgdatadir=$datadir/$PKG_NAME pkgdocdir=$datadir/doc/$PKG_NAME pkglibdir=$libdir/$PKG_NAME pkgincludedir=$includedir/$PKG_NAME HAVE_BABEL=0 HAVE_CLASSIC=0 HAVE_NEO=0 # source tree vars CCAFE_ROOT=`pwd` CCAFE_CXX_ROOT="$CCAFE_ROOT/cxx" # The next two lines entirely quoted to keep autoconf/m4 # from messing with the [] in the regex. [CCAFE_PARENT=`echo $CCAFE_ROOT | sed 's%[^/][^/]*$%%' | sed 's%\/$%%'`] [CCAFE_ANCESTOR=`echo $CCAFE_PARENT | sed 's%[^/][^/]*$%%' | sed 's%\/$%%'`] [CCAFE_GRANDPARENT=$CCAFE_ANCESTOR] [CCAFE_GREATGRANDPARENT=`echo $CCAFE_GRANDPARENT | sed 's%[^/][^/]*$%%' | sed 's%\/$%%'`] # install tree vars CCAFE_INSTALL_ROOT=$prefix CSB=cca-spec-babel dnl a dummy value for some case handling if babel is not found CCASPEC_BABEL_VERSION=NONE cca_babel_dirs="$prefix/$CSB:$CCATUT_HOME/$CSB:$TOP/$CSB:$CCAFE_PARENT/$CSB:$CCAFE_GRANDPARENT/$CSB:$CCAFE_GREATGRANDPARENT/$CSB:$CCAFE_ANCESTOR/$CSB:$HOME/$CSB:$HOME/cca/$CSB:/home/alice/CCA/$CSB:/usr/local/$CSB" cca_babel_install_dirs="$prefix:$CCATUT_HOME:$TOP:$CCAFE_PARENT:$CCAFE_GRANDPARENT:$CCAFE_GREATGRANDPARENT:$CCAFE_ANCESTOR:$HOME:$HOME/cca:/home/alice/CCA:/usr/local" #------------------------------------------------------------------------------ # BABEL_ROOT/BABEL_CCA_ROOT: See if the user gave us the location of cca-spec-babel # We have to do this one first, because it tells us where babel itself # is (that the spec was built with) and because babel limits which compilers # we can use. If we don't have cca-spec-babel, we don't have babel period. # If we let the user specify babel separately, we will get impenetrable bug # reports when they have an old cca-spec-babel (w/old babel) and a new # dccafe built with a new babel. # CCAFE_CHECK_CCA_SPEC_BABEL must default to yes if unspecified # in order for this logic below to be correct. #------------------------------------------------------------------------------ ccaspec_lastwarn="Babel CCA spec location indeterminate. Use --with-csb-config=/where/is/cca-spec-babel-config if wanted, or use --with-cca-babel=no if not wanted." CCAFE_CSB_CONFIG_FORCE CCA_SPEC_BABEL_CONFIG(BABEL_CCA_ROOT_INSTALLED, $cca_babel_install_dirs:$cca_babel_dirs, bin/cca-spec-babel-config, $ccaspec_lastwarn, BABEL_CCA_INSTALLED_CONFIG) if test "x$BABEL_CCA_INSTALLED_CONFIG" = "xno" -o "x$BABEL_CCA_ROOT_INSTALLED" = "xno" ; then AC_MSG_RESULT([ no. Babel/SIDL unavailable or user requested to omit babel.]) # AC_MSG_RESULT([BABEL_CCA_INSTALLED_CONFIG: $BABEL_CCA_INSTALLED_CONFIG]) # AC_MSG_RESULT([BABEL_CCA_ROOT_INSTALLED: $BABEL_CCA_ROOT_INSTALLED]) AC_MSG_RESULT([ Did not find cca-spec-babel. If it is wanted Please specify it with --with-csb-config. e.g: --with-csb-config=/path/to/bin/cca-spec-babel-config[-\$version] ]) HAVE_BABEL=0 BABEL_CCA_INSTALLED=0 else AC_MSG_RESULT([$BABEL_CCA_ROOT_INSTALLED]) dnl suck in the variables from the spec . `$BABEL_CCA_INSTALLED_CONFIG --var CCASPEC_VARS_SH` HAVE_BABEL=1 BABEL_CCA_INSTALLED=1 BABEL_CCA_CONFIG=`$BABEL_CCA_INSTALLED_CONFIG --var CCASPEC_MAKEINCL` [CCAFE_BABEL_JAVA_HOME1=`echo $CCASPEC_BABEL_JAVA | sed 's%/[^/]*$%%'`] [CCAFE_BABEL_JAVA_HOME=`echo $CCAFE_BABEL_JAVA_HOME1 | sed 's%/bin$%%'`] CC=$CCASPEC_BABEL_CC CXX=$CCASPEC_BABEL_CXX F77=$CCASPEC_BABEL_F77 JAR=$CCASPEC_BABEL_JAR JAVA=$CCASPEC_BABEL_JAVA JAVAC=$CCASPEC_BABEL_JAVAC JAVAH=$CCASPEC_BABEL_JAVAH BABEL_PROGRAM=CCASPEC_BABEL_BABEL fi case "$with_cca_babel" in no) ;; yes) ;; *) if test "x$with_cca_babel" != "x$BABEL_CCA_ROOT_INSTALLED" ; then AC_MSG_ERROR([value specified to --with-cca-babel ($with_cca_babel) was insufficient. Found another possibility: ($BABEL_CCA_ROOT_INSTALLED). Rerun configure with a corrected argument.]) fi ;; esac if test "x$HAVE_BABEL" = "x1" ; then case "$CCASPEC_BABEL_VERSION" in dnl version 0.7.[0,4] 0.7.*) CCAFFEINE_SIDL_START_0="version gov 0.1; version cca 0.6 ;" CCAFFEINE_SIDL_START_1="version ccaffeine 0.3 ;" CCAFFEINE_SIDL_START_2="package ccaffeine {" CCAFEEG_SIDL_START_0="version ccafe_eg 0.1 ;" CCAFEEG_SIDL_START_1="package ccafe_eg {" CCAFE0_SIDL_START_0="version ccafe0 0.0;" CCAFE0_SIDL_START_1="package ccafe0 {" CCAFE1_SIDL_START_0="version ccafe1 0.1 ;" CCAFE1_SIDL_START_1="package ccafe1 {" CCAFE2_SIDL_START_0="version ccafe2 0.1 ;" CCAFE2_SIDL_START_1="package ccafe2 {" CCAFE3_SIDL_START_0="version ccafe3 0.0;" CCAFE3_SIDL_START_1="package ccafe3 {" CCAFE4_SIDL_START_0="version ccafe4 0.0;" CCAFE4_SIDL_START_1="package ccafe4 {" CCAFE5_SIDL_START_0="version ccafe5 0.0;" CCAFE5_SIDL_START_1="package ccafe5 {" CCAFE6_SIDL_START_0="version ccafe6 0.0;" CCAFE6_SIDL_START_1="package ccafe6 {" ;; dnl version 0.8 and we hope later... (includes NONE deliberately) *) CCAFFEINE_SIDL_START_0="" CCAFFEINE_SIDL_START_1="" CCAFFEINE_SIDL_START_2="package ccaffeine version 0.3 {" CCAFEEG_SIDL_START_0="" CCAFEEG_SIDL_START_1="package ccafe_eg version 0.1 {" CCAFE0_SIDL_START_0="" CCAFE0_SIDL_START_1="package ccafe0 version 0.0 {" CCAFE1_SIDL_START_0="" CCAFE1_SIDL_START_1="package ccafe1 version 0.1 {" CCAFE2_SIDL_START_0="" CCAFE2_SIDL_START_1="package ccafe2 version 0.1 {" CCAFE3_SIDL_START_0="" CCAFE3_SIDL_START_1="package ccafe3 version 0.0 {" CCAFE4_SIDL_START_0="" CCAFE4_SIDL_START_1="package ccafe4 version 0.0 {" CCAFE5_SIDL_START_0="" CCAFE5_SIDL_START_1="package ccafe5 version 0.0 {" CCAFE6_SIDL_START_0="" CCAFE6_SIDL_START_1="package ccafe6 version 0.0 {" ;; esac fi dnl end of have_babel=1 test AC_SUBST(CCAFFEINE_SIDL_START_0) AC_SUBST(CCAFFEINE_SIDL_START_1) AC_SUBST(CCAFFEINE_SIDL_START_2) AC_SUBST(CCAFEEG_SIDL_START_0) AC_SUBST(CCAFEEG_SIDL_START_1) AC_SUBST(CCAFE0_SIDL_START_0) AC_SUBST(CCAFE0_SIDL_START_1) AC_SUBST(CCAFE1_SIDL_START_0) AC_SUBST(CCAFE1_SIDL_START_1) AC_SUBST(CCAFE2_SIDL_START_0) AC_SUBST(CCAFE2_SIDL_START_1) AC_SUBST(CCAFE3_SIDL_START_0) AC_SUBST(CCAFE3_SIDL_START_1) AC_SUBST(CCAFE4_SIDL_START_0) AC_SUBST(CCAFE4_SIDL_START_1) AC_SUBST(CCAFE5_SIDL_START_0) AC_SUBST(CCAFE5_SIDL_START_1) AC_SUBST(CCAFE6_SIDL_START_0) AC_SUBST(CCAFE6_SIDL_START_1) BABEL_CCA_ROOT=$BABEL_CCA_ROOT_INSTALLED BABEL_ROOT=$CCASPEC_BABEL_ROOT BABEL_FLAGS='--suppress-timestamp -E' AC_SUBST(BABEL_CCA_ROOT) AC_SUBST(BABEL_CCA_INSTALLED) AC_SUBST(HAVE_BABEL) AC_SUBST(BABEL_ROOT) AC_SUBST(BABEL_CCA_CONFIG) CCAFE_CCA_SPEC_BABEL_CONFIG=$BABEL_CCA_INSTALLED_CONFIG AC_SUBST(CCAFE_CCA_SPEC_BABEL_CONFIG) dnl Babel python tests AC_ARG_WITH(babel-python, [ --with-babel-python Generate Babel Python code for Ccaffeine. ] , , [with_babel_python=no]) case "$with_babel_python" in yes) CCAFE_BUILD_PY=1 INSTALL_PYTHON=install-python ;; *) CCAFE_BUILD_PY= INSTALL_PYTHON=install-dummy ;; esac AC_SUBST(CCAFE_BUILD_PY) AC_SUBST(INSTALL_PYTHON) dnl End Babel python tests # cca spec (must contain installed spec) # classic spec ccafe_cca_spec_dirs=" $CCAFE_PARENT/cca-spec-classic $CCATUT_HOME/cca-spec-classic $prefix/cca-spec-classic /usr/local/cca-spec-classic " ccafe_cca_spec_install_dirs=" $prefix $CCAFE_PARENT $CCATUT_HOME /usr/local " #------------------------------------------------------------------------------ # CLASSIC_CCA_ROOT: See if the user gave us the location of cca-spec # then search $ccafe_cca_spec_dirs. # One of these directories must be # present and contain the correct files, or else the user # must give the directory that contains the correct files. #------------------------------------------------------------------------------ #BAA cca_classic_dirs=$ccafe_cca_spec_dirs cca_classic_install_dirs=$ccafe_cca_spec_install_dirs classic_warn="Classic CCA spec not found." # check for the --with giving full path of config script. CCA_CLASSIC_CONFIG_FORCE # get the --with-cca-classic input and make sure it's good. CCA_SPEC_CLASSIC_CONFIG(CLASSIC_CCA_ROOT_INSTALLED, $cca_classic_install_dirs:$cca_classic_dirs, bin/cca-spec-classic-config, $classic_warn, CLASSIC_CCA_INSTALLED_CONFIG) if test "x$CLASSIC_CCA_INSTALLED_CONFIG" = "xno" -o "x$CLASSIC_CCA_ROOT_INSTALLED" = "xno" ; then dnl dnl the following two when not debugging HAVE_CLASSIC=0 CLASSIC_CCA_INSTALLED=0 dnl AC_MSG_RESULT([CLASSIC_CCA_INSTALLED_CONFIG: $CLASSIC_CCA_INSTALLED_CONFIG]) dnl AC_MSG_RESULT([CLASSIC_CCA_ROOT_INSTALLED: $CLASSIC_CCA_ROOT_INSTALLED]) AC_MSG_WARN([Building ccaffeine without the classic spec. If you think it really is there, try specifying: --with-classic-config=/path/to/bin/cca-spec-classic-config-\$version and maybe also --with-cca-classic=INSTALL_PREFIX_of_cca-spec-classic. ]) else AC_MSG_RESULT([$CLASSIC_CCA_ROOT_INSTALLED]) dnl suck in the variables from the spec . `$CLASSIC_CCA_INSTALLED_CONFIG --var CLASSIC_VARS_SH` HAVE_CLASSIC=1 CLASSIC_CCA_INSTALLED=1 CLASSIC_CCA_CONFIG=`$CLASSIC_CCA_INSTALLED_CONFIG --var CLASSIC_MAKEINCL` dnl fixme CCA_ROOT=$CLASSIC_CCA_ROOT_INSTALLED CLASSIC_CCA_ROOT=$CLASSIC_CCA_ROOT_INSTALLED [CCAFE_CLASSIC_JAVA_HOME1=`echo $CCASPEC_CLASSIC_JAVA | sed 's%/[^/]*$%%'`] [CCAFE_CLASSIC_JAVA_HOME=`echo $CCAFE_CLASSIC_JAVA_HOME1 | sed 's%/bin$%%'`] # need to assign the following before substs. CCA_JAVA_HM=$CCA_JAR CXX=$CCA_CXX dnl fixme-- rational basis for picking CXX is what? fi case "$with_cca_classic" in no) ;; yes) ;; *) if test "x$with_cca_classic" != "x$CLASSIC_CCA_ROOT_INSTALLED" ; then AC_MSG_WARN([value specified to --with-cca-classic was insufficient. Found another ($CLASSIC_CCA_ROOT_INSTALLED). hope it's ok. ]) fi ;; esac #------------------------------------------------------ # neo spec (must contain installed spec) ccafe_neo_spec_dirs=" $CCAFE_PARENT/cca-spec-neo $CCATUT_HOME/cca-spec-neo $prefix/cca-spec-neo /usr/local/cca-spec-neo " ccafe_neo_spec_install_dirs=" $prefix $CCAFE_PARENT $CCATUT_HOME /usr/local " #------------------------------------------------------------------------------ # NEO_CCA_ROOT: See if the user gave us the location of cca-spec-neo # then search $ccafe_neo_spec_dirs. # One of these directories must be # present and contain the correct files, or else the user # must give the directory that contains the correct files. #------------------------------------------------------------------------------ #BAA cca_neo_dirs=$ccafe_neo_spec_dirs cca_neo_install_dirs=$ccafe_neo_spec_install_dirs neo_warn="Neo CCA spec not found." HAVE_NEO=0 NEO_CCA_INSTALLED=0 # check for the --with giving full path of config script. CCA_NEO_CONFIG_FORCE # get the --with-cca-neo input and make sure it's good. CCA_SPEC_NEO_CONFIG(NEO_CCA_ROOT_INSTALLED, $cca_neo_install_dirs:$cca_neo_dirs, bin/cca-spec-neo-config, $neo_warn, NEO_CCA_INSTALLED_CONFIG) if test "x$NEO_CCA_INSTALLED_CONFIG" = "xno" -o "x$NEO_CCA_ROOT_INSTALLED" = "xno" ; then dnl dnl the following two when not debugging dnl AC_MSG_RESULT([NEO_CCA_INSTALLED_CONFIG: $NEO_CCA_INSTALLED_CONFIG]) dnl AC_MSG_RESULT([NEO_CCA_ROOT_INSTALLED: $NEO_CCA_ROOT_INSTALLED]) AC_MSG_WARN([Building ccaffeine without the neo spec. If you think it really is there, try specifying: --with-neo-config=/path/to/bin/cca-spec-neo-config-\$version and maybe also --with-cca-neo=INSTALL_PREFIX_of_cca-spec-neo. ]) else AC_MSG_RESULT([$NEO_CCA_ROOT_INSTALLED]) dnl suck in the variables from the spec . `$NEO_CCA_INSTALLED_CONFIG --var NEOCCA_VARS_SH` dnl fixme HAVE_NEO=1 NEO_CCA_INSTALLED=1 NEO_CCA_CONFIG=`$NEO_CCA_INSTALLED_CONFIG --var NEOCCA_MAKEINCL` dnl fixme # CXX=$NEO_CXX NEO_CCA_ROOT=$NEO_CCA_ROOT_INSTALLED # deal with subpackages next dnl suck in the variables from egneo . `$NEOCCA_INSTALL_ROOT/bin/eg-neo-config --var EGNEO_VARS_SH` EGNEO_CONFIG=$EGNEO_MAKEINCL . `$NEOCCA_INSTALL_ROOT/bin/neotest-parameter-config --var NEOTESTPARAMETER_VARS_SH` NEOTESTPARAMETER_CONFIG=$NEOTESTPARAMETER_MAKEINCL . `$NEOCCA_INSTALL_ROOT/bin/neotest-go-config --var NEOTESTGO_VARS_SH` NEOTESTGO_CONFIG=$NEOTESTGO_MAKEINCL case $NEOCCA_VERSION in 0.1.0) AC_MSG_ERROR([ Value specified or found for --with-cca-neo is a version ($NEOCCA_VERSION) too old to work with Ccaffeine. Please get an updated version of cca-spec-neo.]) ;; *) ;; esac fi case "$with_cca_neo" in no) ;; yes) ;; *) if test "x$with_cca_neo" != "x$NEO_CCA_ROOT_INSTALLED" ; then AC_MSG_WARN([value specified to --with-cca-neo was insufficient. Found another ($NEO_CCA_ROOT_INSTALLED). hope it's ok. ]) fi ;; esac # FIXME. need boost and c++ fron neo if neo found, else need # boost directly. #------------------------------------------------------ # stupidity check for env/user: if test "X$HAVE_BABEL.$HAVE_CLASSIC.$HAVE_NEO" = "X0.0.0" ; then AC_MSG_WARN([ ############################################# At least one cca specification is required. Not sure what you'll do with an unbound framework. ############################################# ]) fi CCAFE_BABEL_LIBTOOL #------------------------------------------------------ dnl Checks for unix programs. AC_PROG_AWK AC_PROG_LN_S AC_PROG_MAKE_SET AC_PROG_RANLIB AC_PROG_INSTALL # FIND which cc AC_ARG_ENABLE(gcc, [ --enable-gcc allow use of gcc if available and -pipe], [tcl_ok=$enableval], [tcl_ok=no]) if test "$tcl_ok" = "yes"; then AC_PROG_CC else CC=${CC-cc} AC_SUBST(CC) fi # # Not using f77 right now. We may still want to # get fortran libs for HPC components, though, sigh. # This check (for f77 compiler) wants to be run before AC_PROG_CPP # AC_CHECK_PROGS(F77, g77 f77 f2c, NONE) F77=NONE if test "${F77}" = "NONE" ; then F77="" else # FIND crap for linking f77 into c++ main AC_F77_LIBRARY_LDFLAGS fi # FIND if cc has a stupid limitation AC_PROG_CC_C_O # FIND c++ compiler #------------------------------------------------------------------------------ # see if the user gave us the location of the c++ compiler #------------------------------------------------------------------------------ AC_ARG_WITH(cPP, [Location of c++ compiler: --with-cPP=EXECUTABLE The location of C++. Omit if using BABEL. Give the full path: --with-cPP='/usr/gnu/bin/c++' ], , [with_cPP=yes]) case "$with_cPP" in no) # User specified --without-c++ # print a warning. AC_MSG_WARN([Option '--without-c++' Causes c++ spec to be suppressed.]) cca_have_cpp=no ;; yes) # User didn't give the option or didn't give useful # information, search for it ourselves with_cPP=_searching ;; *) CXX="$with_cPP" cca_have_cpp=yes ;; esac if test "$with_cPP" = _searching ; then AC_PROG_CXX fi #-------------------------------------------------------------------- # cxxflags, which will override CXXFLAGS in the env if specified. #-------------------------------------------------------------------- AC_ARG_WITH(cxxflags, [Override environment CXXFLAGS for compiling C++. --with-cxxflags=CXXFLAGS ], , [with_cxxflags=no]) case "$with_cxxflags" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-cxxflags=yes': yes not a valid flag.]) ;; *) CXXFLAGS="$with_cxxflags" ;; esac NOT_HAVE_CXX_LIMITS="" AC_CHECK_HEADER(limits, , [NOT_HAVE_CXX_LIMITS=-DNO_NUMERIC_LIMITS]) AC_ARG_WITH(rpm-prefix, [Prefix directory of the real install destination. --with-rpm-prefix=/final/root/install-dir Used to set a value for embedding in scripts that will be installed in a final location, not the 'build+install' prefix used in the rpm generation process.], , [with_rpm_prefix=no]) case "$with_rpm_prefix" in no) with_rpm_prefix=$prefix ;; yes) AC_MSG_WARN([Option '--with-rpm-prefix=yes' invalid. Defaulting prefix.]) with_rpm_prefix=$prefix ;; *) CCAFE_RPM_ROOT=$with_rpm_prefix ;; esac CCAFE_RPM_ROOT=$with_rpm_prefix CCAFE_RPM_prefix=$with_rpm_prefix AC_ARG_WITH(rpm-libdir, [libdir of the real install destination. --with-rpm-libdir=/final/root/lib-dir Used to set a value for embedding in scripts that will be installed in a final location, not the 'build+install' prefix used in the rpm generation process.], , [with_rpm_libdir=no]) case "$with_rpm_libdir" in no) with_rpm_libdir="$libdir" ;; yes) AC_MSG_WARN([Option '--with-rpm-libdir=yes' invalid. Defaulting libdir.]) with_rpm_libdir="$libdir" ;; *) CCAFE_RPM_libdir=$with_rpm_libdir ;; esac CCAFE_RPM_libdir="$with_rpm_libdir" AC_ARG_WITH(rpm-pkgdatadir, [pkgdatadir of the real install destination. --with-rpm-pkgdatadir=/final/root/pkgdata-dir Used to set a value for embedding in scripts that will be installed in a final location, not the 'build+install' pkgdatadir used in the rpm generation process.], , [with_rpm_pkgdatadir=no]) case "$with_rpm_pkgdatadir" in no) with_rpm_pkgdatadir="$pkgdatadir" ;; yes) AC_MSG_WARN([Option '--with-rpm-pkgdatadir=yes' invalid. Defaulting.]) with_rpm_pkgdatadir="$pkgdatadir" ;; *) CCAFE_RPM_pkgdatadir=$with_rpm_pkgdatadir ;; esac CCAFE_RPM_pkgdatadir="$with_rpm_pkgdatadir" # FIND c preprocessor AC_PROG_CPP # FIND c++ preprocessor AC_PROG_CXXCPP # FIND lex dnl AC_PROG_LEX # FIND yacc dnl AC_PROG_YACC # set the warning flags depending on whether or not we are using gcc if test "${GCC}" = "yes" ; then CFLAGS_WARNING="-Wall -Wconversion" else CFLAGS_WARNING="" fi #------------------------------------------------------------------------------ # If we're using GCC, see if the compiler understands -pipe. If so, use it. # It makes compiling go faster. (This is only a performance feature.) #------------------------------------------------------------------------------ if test -z "$no_pipe"; then if test -n "$GCC"; then AC_MSG_CHECKING([if the C compiler understands -pipe]) OLDCC="$CC" CC="$CC -pipe" AC_TRY_COMPILE(,, AC_MSG_RESULT(yes), CC="$OLDCC" AC_MSG_RESULT(no)) AC_MSG_CHECKING([if c++ compiler understands -pipe]) OLDCXX="$CXX" CXX="$CXX -pipe" AC_TRY_COMPILE(,, AC_MSG_RESULT(yes), CXX="$OLDCXX" AC_MSG_RESULT(no)) fi fi AC_CHECK_SIZEOF(short) AC_CHECK_SIZEOF(short *) AC_CHECK_SIZEOF(long int) AC_CHECK_SIZEOF(long long int) AC_CHECK_SIZEOF(int64_t) SIZEOF_SHORT_P="$ac_cv_sizeof_short_p" SIZEOF_SHORT="$ac_cv_sizeof_short" SIZEOF_LONG_INT="$ac_cv_sizeof_long_int" SIZEOF_LONG_LONG_INT="$ac_cv_sizeof_long_long_int" SIZEOF_INT64_T="$ac_cv_sizeof_int64_t" # mpich 1.1.2 (or later? mpiCC is broken in some mpich 1.2.x) # this will guess and if comes up empty look in the # config/ hint files for mpi and the detected architecture. # NOT optional. # Pull in the search lists for mpi. # these are : ccafe_mpich_dirs, ccafe_mpicxx_bins, ccafe_mpicc_bins # mpich_dirs are full paths, bins are script names. . config/mpihome.guess # blas/lapack/equivalent libraries ccafe_math_support_dirs="/lib:/usr/lib:/usr/local/lib:/usr/contributed/lib" ## end of paths to search collection if test "y$JAVAC" = "x" ; then NOJAVARULE="all build java cxx clean distclean lib gen install: " HAVE_JAVA=0 else NOJAVARULE="" HAVE_JAVA=1 fi # --------------------------------------------------------------------------- # Optional Python installation # --------------------------------------------------------------------------- python_enabled="yes" if test $HAVE_BABEL -eq 1 ; then : # We need to use # CCAFE_BABEL_PYTHON # CCAFE_BABEL_PYTHON_VERSION # CCAFE_BABEL_PYTHONINC # CCAFE_BABEL_PYTHONLIB # here to init matching-ly. fi PYTHON_SCRIPTING=0 PYTHON_INCLUDE="" PYTHON_CPPFLAGS="" PYTHON_LDFLAGS="" AC_ARG_WITH(python-includes, [ --with-python-includes=PYTHON_INCLUDE path to Python include files], [python_include_path=$withval], [python_include_path=${python_include_path='_searching'}]) AC_ARG_WITH(python-library, [ --with-python-library=PYTHON_LIBRARY path to Python library], [python_library_path=$withval], [python_library_path=${python_library_path='_searching'}]) if test "$python_enabled" = "yes" ; then siloon_python_vers="2.2 2.1 2.0 1.6 1.5" siloon_python_paths="/usr /usr/local" if test "$python_include_path" = _searching ; then AC_MSG_CHECKING([for Python directories]) for version in $siloon_python_vers ; do for path in $siloon_python_paths ; do pinc="$path/include/python""$version" if test -d $pinc ; then pdir="$path/lib/python""$version" if test -d $pdir ; then python_include_path=$pinc python_library_path=$pdir AC_MSG_RESULT([found $pinc and $pdir.]) break fi fi done if test "$python_include_path" != _searching ; then break fi done fi if test "$python_include_path" = _searching ; then AC_MSG_RESULT([Cannot find python include directory.]) AC_MSG_RESULT([Please install it and/or use --with-python-includes=PATH.]) fi if test "$python_library_path" = _searching ; then AC_MSG_RESULT([Cannot find python libraries.]) AC_MSG_RESULT([Please install it and/or use --with-python-library=PATH.]) fi if test "$python_include_path" != _searching ; then if test "$python_library_path" != _searching ; then PYTHON_SCRIPTING=1 PYTHON_INCLUDE="$python_include_path" PYTHON_CPPFLAGS="-I$python_include_path" PYTHON_LDFLAGS="-L$python_library_path" fi fi fi #------------------------------------------------------------------------------ # see if the user gave us the location of clueful make #------------------------------------------------------------------------------ AC_ARG_WITH(gmake, [Location of gmake: --with-gmake=EXECUTABLE The location of gmake. Give the full path: --with-gmake='/share/bizarre/bin/gmake' ] , , [with_gmake=yes]) case "$with_gmake" in no) ccafe_have_gmake=no ;; yes) # User didn't give the option or didn't give useful # information, search for it ourselves with_gmake=_searching ;; *) # Only the library was specified GMAKE="$with_gmake" ;; esac if test "$with_gmake" = _searching ; then AC_CHECK_PROG(gmake_1, gmake, gmake, NONE) if test ! "$gmake_1" = NONE ; then GMAKE="$gmake_1" fi fi #------------------------------------------------------------------------------ # see if the user gave us the location of the tclsh #------------------------------------------------------------------------------ TCLSH=/usr/local/bin/tclsh AC_ARG_WITH(tclsh, [Location of tclsh: --with-tclsh=EXECUTABLE The location of the Tcl8.x or later tclsh. Give the full path: --with-tclsh='/share/bizarre/bin/tclsh' ], , [with_tclsh=yes]) case "$with_tclsh" in no) # User specified --without-tclsh; this makes no sense, # print a warning and search for it ourselves AC_MSG_WARN([Option '--without-tclsh' Causes some convenience scripts to be unusable.]) ccafe_have_tclsh=no ;; yes) # User didn't give the option or didn't give useful # information, search for it ourselves with_tclsh=_searching ;; *) TCLSH="$with_tclsh" ccafe_have_tclsh=yes ;; esac if test "$with_tclsh" = _searching ; then AC_CHECK_PROG(tclsh_1, tclsh, tclsh, NONE) if test ! "$tclsh_1" = NONE ; then TCLSH=`which $tclsh_1` ccafe_have_tclsh=yes fi fi #------------------------------------------------------------------------------ # see if the user gave us the location of the ruby #------------------------------------------------------------------------------ RUBY=/usr/bin/ruby AC_ARG_WITH(ruby, [Location of ruby: --with-ruby=EXECUTABLE The location of the ruby-lang binary Give the full path: --with-ruby='/home/rob/bin/ruby' ], , [with_ruby=yes]) case "$with_ruby" in no) # User specified --without-ruby. # print a warning and search for it ourselves if test 0 = 0 ; then RUBY=: AC_MSG_WARN([Option '--without-ruby' Causes some convenience scripts to be unusable.]) ccafe_have_ruby=no fi ;; yes) # User didn't give the option or didn't give useful # information, search for it ourselves with_ruby=_searching ;; *) RUBY="$with_ruby" ccafe_have_ruby=yes ;; esac if test "$with_ruby" = _searching ; then AC_CHECK_PROG(ruby_1, ruby, ruby, NONE) if test ! "$ruby_1" = NONE ; then RUBY=`which $ruby_1` ccafe_have_ruby=yes else if test 0 = 0 ; then AC_MSG_WARN([Unable to locate ruby. Some convenience scripts may be unavailable.]) fi fi fi #------------------------------------------------------------------------------ # see if the user gave us the location of the swig #------------------------------------------------------------------------------ SWIG=/usr/bin/swig AC_ARG_WITH(swig, [Location of swig: --with-swig=EXECUTABLE The location of the swig executable Give the full path: --with-ruby='/home/rob/bin/swig' ], , [with_swig=yes]) case "$with_swig" in no) # User specified --without-swig # print a warning and search for it ourselves AC_MSG_WARN([Option '--without-swig' Causes some convenience scripts and python interfaces to be unusable.]) ccafe_have_swig=no SWIG="" ;; yes) # User didn't give the option or didn't give useful # information, search for it ourselves with_swig=_searching ;; *) SWIG="$with_swig" ccafe_have_swig=yes ;; esac if test "$with_swig" = _searching ; then AC_CHECK_PROG(swig_1, swig, swig, NONE) if test ! "$swig_1" = NONE ; then SWIG=`which $swig_1` ccafe_have_swig=yes fi fi SWIG_HOME="$SWIG" dnl Checks for libraries. #-------------------------------------------------------------------- # Suck in the folklore for mpi, if needed. # Always: # MPI, MPI_ARCH, MPICC, MPICXX, MPIRUN # When mpicc and mpiCC are broken, as is frequently the case # MPI_LDFLAGS, MPILIB # Note that we need to finish the failure cases and expand folklore # to cope with broken mpiCC. Or we need mpich to just work in every # single release. Or we need MPI forum to standardize on a # "configuration variables" sh includable file to live in # $MPI_HOME/lib/config.vars so we don't need mpiCC, or ... #-------------------------------------------------------------------- AC_ARG_WITH(mpi, [Location of mpi: --with-mpi=MPI_HOME The location of mpi 1.2 compatible mpi. Give the full path: --with-mpi='/share/bizarre/mpich-1.2.2,3' ], , [with_mpi=yes]) case "$with_mpi" in no) ccafe_have_mpi=no ;; yes) with_mpi=_searching ;; *) MPI="$with_mpi" ;; esac if test "$with_mpi" = _searching ; then ccafe_have_mpi=no AC_MSG_CHECKING([for mpi]) for mhome in $ccafe_mpich_dirs ; do echo checking for mpi in $mhome ... if test -x $mhome/bin/mpirun; then MPI=$mhome MPIRUN=$MPI/bin/mpirun MPI_ARCH=`$mhome/bin/tarch` AC_MSG_RESULT([$mhome ($MPI_ARCH) found.]) ccafe_have_mpi=yes break fi done if test -z "$MPI" ; then ccafe_have_mpi=no AC_MSG_RESULT([mpi not found. mpi-based components and tests disabled. --with-mpi=/path/of/mpi to enable them. See configure --help for additional mpi options management.]) fi fi # we think we have something. check that it runs # and if not, sigh and go to folklore. ccafe_try_mpi_folklore=no if test ! "X$ccafe_have_mpi" = Xno ; then if test -x $MPI/bin/mpirun -a "X$ccafe_try_mpi_folklore" = Xno ; then MPIRUN=$MPI/bin/mpirun else MPIRUN=broken AC_MSG_WARN([mpirun executable not found. Specify using --with-mpi-run.]) ccafe_try_mpi_folklore=yes fi if test -x $MPI/bin/tarch -a "X$ccafe_try_mpi_folklore" = Xno ; then MPI_ARCH=`$MPI/bin/tarch` else MPI_ARCH="Set_MPI_ARCH_in_Makefile.Vars_manually" AC_MSG_WARN([tarch executable not found. Specify using --with-mpi-arch.]) ccafe_try_mpi_folklore=yes fi if test -x $MPI/bin/mpicc -a "X$ccafe_try_mpi_folklore" = Xno ; then AC_MSG_CHECKING([mpicc]) $MPI/bin/mpicc -o config.cpi.exe config/cpi.c if test -x config.cpi.exe ; then AC_MSG_RESULT(yes) MPICC=$MPI/bin/mpicc else MPICC=broken BROKEN_MPICC=$MPI/bin/mpicc AC_MSG_RESULT(broken.) AC_MSG_WARN([mpicc found appears broken. Override using --with-mpi-cc=path.]) fi rm -f config.cpi.exe cpi.o fi mpiCCfound=no if test -x $MPI/bin/mpiCC -a "X$ccafe_try_mpi_folklore" = Xno ; then AC_MSG_CHECKING([mpiCC]) $MPI/bin/mpiCC -o config.cppi.exe config/cpi.cpp if test -x config.cppi.exe ; then AC_MSG_RESULT(yes) MPICXX=$MPI/bin/mpiCC mpiCCfound=yes fi fi if test -x $MPI/bin/mpicxx -a "X$ccafe_try_mpi_folklore" = Xno ; then AC_MSG_CHECKING([mpicxx]) $MPI/bin/mpicxx -o config.cppi.exe config/cpi.cpp if test -x config.cppi.exe ; then AC_MSG_RESULT(yes) MPICXX=$MPI/bin/mpicxx mpiCCfound=yes fi fi if test "x$mpiCCfound" = "xno"; then MPICXX=broken BROKEN_MPICXX=$MPI/bin/mpiCC AC_MSG_RESULT(broken.) AC_MSG_WARN([mpiCC found appears broken. Override using --with-mpi-cxx=path.]) fi rm -f config.cppi.exe cpi.o if test "X$ccafe_try_mpi_folklore" = Xno ; then MPI_HOME=$MPI fi if test -d $MPI/include -a "X$ccafe_try_mpi_folklore" = Xno ; then MPI_INC=-I$MPI/include fi if test -d $MPI/bin -a "X$ccafe_try_mpi_folklore" = Xno ; then MPI_BIN=$MPI/bin if test -x $MPI/bin/mpif77 ; then MPIF77=$MPI/bin/mpif77 fi if test -x $MPI/bin/mpif90 ; then MPIF90=$MPI/bin/mpif90 fi fi fi if test "X$ccafe_try_mpi_folklore" = Xyes ; then AC_MSG_WARN([SIGH! rummaging about in history for mpi. Consider using the --with-mpi-OPTION switches found in configure --help if our rummaging guesses wrong.]) CCAFE_MPI_HUNT=yes . config/mpi.folklore fi if test -d "$MPI/build/$MPI_ARCH/ch_p4/include" ; then MPI_INC_ODD="-I$MPI/build/$MPI_ARCH/ch_p4/include" fi if test -s "$MPI/build/$MPI_ARCH/ch_p4/lib/libmpich.a" ; then MPILIB="$MPI/build/$MPI_ARCH/ch_p4/lib/libmpich.a" MPI_LIBDIR="$MPI/build/$MPI_ARCH/ch_p4/lib" fi if test -d "$MPI/include/mpi2c++" ; then MPI_INC_ODD="-I$MPI/include/mpi2c++ $MPI_INC_ODD" fi # hack around mpich 1.2.4 pmpich library bug if test -s "$MPI/lib/libmpich.a" ; then MPI_LIBDIR="$MPI/lib" MPILIB="$MPI/lib/libmpich.a" if test -s "$MPI_LIBDIR/libpmpich.a" ; then MPILIB="$MPILIB $MPI_LIBDIR/libpmpich.a" MPILIB="$MPILIB $MPILIB" fi fi # guess out the darned .so for rob if test -s "$MPI_LIBDIR/libmpi.so"; then MPI_SO_LIBDIR="$MPI_SO_LIBDIR" MPILD_SO_FLAGS="$MPI_LIBDIR/libmpi.so"; fi if test -s "$MPI_LIBDIR/libmpich.so"; then MPI_SO_LIBDIR="$MPI_SO_LIBDIR" MPILD_SO_FLAGS="$MPI_LIBDIR/libmpich.so"; fi if test -s "$MPI_LIBDIR/shared/libmpi.so"; then MPI_SO_LIBDIR="$MPI_SO_LIBDIR/shared" MPILD_SO_FLAGS="$MPI_LIBDIR/shared/libmpi.so"; fi if test -s "$MPI_LIBDIR/shared/libmpich.so"; then MPI_SO_LIBDIR="$MPI_SO_LIBDIR/shared" MPILD_SO_FLAGS="$MPI_LIBDIR/shared/libmpich.so"; fi if test -s "$MPI_LIBDIR/shared/libmpich.so"; then MPI_SO_LIBDIR="$MPI_SO_LIBDIR/shared" MPILD_SO_FLAGS="$MPI_LIBDIR/shared/libmpich.so"; fi MPI_STATIC_LIBS=$MPILIB MPI_SO_LIBS=$MPILD_SO_FLAGS # overrides after all our guessing junk # aux mpi switches # --with-mpi-mpd # --with-mpi-arch= # --with-mpi-bin= # --with-mpi-inc= # # --with-mpi-cc= # --with-mpi-cxx= # --with-mpi-f77= # --with-mpi-f90= # --with-mpi-ld= # --with-mpi-run= # --with-mpi-prerun= #-------------------------------------------------------------------- # mpi mpd flag for launchscripts. #-------------------------------------------------------------------- AC_ARG_WITH(mpi-mpd, [ Machine is mpich mpd: --with-mpi-mpd ], , [with_mpi_mpd=no]) case "$with_mpi_mpd" in no) MPI_IS_MPD=0 AC_MSG_RESULT([checking mpi is mpd ... nope.]) ;; yes) MPI_IS_MPD=1 AC_MSG_RESULT([checking mpi is mpd ... mpi mpd specified.]) ;; *) MPI_IS_MPD=0 AC_MSG_ERROR([Option --with-mpi-mpd=$with_mpi_arch: value is yes/no only.]) ;; esac #-------------------------------------------------------------------- # mpi arch override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-arch, [ === The following options override those guessed based on --with-mpi, if given. === Try specifying them if the defaults don't work for your mpi. Likely needed === if you are not using mpich. Machine architecture of mpi: --with-mpi-arch=MPI_ARCH The \$ARCH value for mpi. --with-mpi-arch='LINUX' ], , [with_mpi_arch=no]) case "$with_mpi_arch" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-arch=yes': yes not a valid arch value.]) ;; *) MPI_ARCH="$with_mpi_arch" ;; esac #-------------------------------------------------------------------- # mpi includes override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-inc, [Special -I flags to get mpi headers when not using mpicc/mpiCC/mpicxx: --with-mpi-inc="MPI_INCLUDES" The flags for mpi includes in c/c++. e,g, --with-mpi-inc='-I/usr/local/include/mpich-ver' Others, like avoiding a broken c++ binding header: '-I\$MPI/include -I\$MPI/build/\$ARCH/\$DEVICE/include' ], , [with_mpi_inc=no]) case "$with_mpi_inc" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-inc=yes': yes not a valid value.]) ;; *) MPI_INC="$with_mpi_inc" ;; esac #-------------------------------------------------------------------- # mpi bin override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-bin, [Location of mpi bin directory: --with-mpi-bin=/path/to/bin/mpi* The full path to the bin/ for mpi-related programs. --with-mpi-bin='/usr/local/mpich-ver/bin' ], , [with_mpi_bin=no]) case "$with_mpi_bin" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-bin=yes': yes not a valid path value.]) ;; *) if test -x "$with_mpi_bin"/mpicc ; then MPICC="$with_mpi_bin"/mpicc else AC_MSG_WARN([Option '--with-mpi-bin: given bin contains no mpicc.]) fi mpicxxfound=no if test -x "$with_mpi_bin"/mpiCC ; then MPICXX="$with_mpi_bin"/mpiCC mpicxxfound=yes else if test -x "$with_mpi_bin"/mpicxx ; then MPICXX="$with_mpi_bin"/mpicxx mpicxxfound=yes fi fi if test "x$mpicxxfound" = "xno"; then AC_MSG_WARN([Option '--with-mpi-bin: given bin contains no mpiCC/mpicxx.]) fi if test -x "$with_mpi_bin"/mpirun ; then MPIRUN="$with_mpi_bin"/mpirun else AC_MSG_WARN([Option '--with-mpi-bin: given bin contains no mpirun.]) fi if test -x "$with_mpi_bin"/mpif77 ; then MPIF77="$with_mpi_bin"/mpif77 else AC_MSG_WARN([Option '--with-mpi-bin: given bin contains no mpif77.]) fi if test -x "$with_mpi_bin"/mpif90 ; then MPIF90="$with_mpi_bin"/mpif90 else AC_MSG_WARN([Option '--with-mpi-bin: given bin contains no mpif90.]) fi ;; esac #-------------------------------------------------------------------- # mpif77 override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-f77, [ == The following mpi switches override defaults computed from --with-mpi == or --with-mpi-bin. Location of special mpif77 to use --with-mpi-f77=MPIF77 The full path to mpif77, if not in normal mpi bin/ dir. --with-mpi-f77=/usr/local/bin/odd/mpif77 ], , [with_mpi_f77=no]) case "$with_mpi_f77" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-f77=yes': yes not a valid compiler.]) ;; *) MPIF77="$with_mpi_f77" ;; esac #-------------------------------------------------------------------- # mpif90 override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-f90, [Location of special mpif90 to use --with-mpi-f90=MPIF90 The full path to mpif90, if not in normal mpi bin/ dir. --with-mpi-f90=/usr/local/bin/odd/mpif90 ], , [with_mpi_f90=no]) case "$with_mpi_f90" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-f90=yes': yes not a valid compiler.]) ;; *) MPIF90="$with_mpi_f90" ;; esac MPI_LD="$MPICXX" #-------------------------------------------------------------------- # mpicxx override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-cxx, [Location of special mpiCC to use --with-mpi-cxx=MPICXX The full path to mpiCC/mpicxx, if not in normal mpi bin/ dir. --with-mpi-cxx=/usr/local/bin/odd/mpiCC ], , [with_mpi_cxx=no]) case "$with_mpi_cxx" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-cxx=yes': yes not a valid compiler.]) ;; *) MPICXX="$with_mpi_cxx" MPI_LD="$with_mpi_cxx" ;; esac #-------------------------------------------------------------------- # mpi_ld override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-ld, [Location of special mpild to use --with-mpi-ld=MPI_LD The full path to linker for mpi executables, defaulting to mpicxx value. --with-mpi-ld=/usr/local/bin/odd/mpiCC ], , [with_mpi_ld=no]) case "$with_mpi_ld" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-ld=yes': yes not a valid compiler.]) ;; *) MPI_LD="$with_mpi_ld" ;; esac #-------------------------------------------------------------------- # mpicc override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-cc, [Location of special mpicc to use --with-mpi-cc=MPICC The full path to mpicc, if not in normal mpi bin/ dir. --with-mpi-cc=/usr/local/bin/odd/mpicc ], , [with_mpi_cc=no]) case "$with_mpi_cc" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-cc=yes': yes not a valid compiler.]) ;; *) MPICC="$with_mpi_cc" ;; esac #-------------------------------------------------------------------- # mpirun override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-run, [Location of special mpirun to use --with-mpi-run=MPIRUN The full path to mpirun if not in normal mpi bin/ dir. --with-mpi-run=/usr/local/bin/odd-mpirun Also used to specify mpiexec or other batch launches], , [with_mpi_run=no]) case "$with_mpi_run" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-run=yes': yes not a valid launcher.]) ;; *) MPIRUN="$with_mpi_run" ;; esac #-------------------------------------------------------------------- # mpiprerun override #-------------------------------------------------------------------- AC_ARG_WITH(mpi-prerun, [Location of special mpirun to use --with-mpi-prerun=MPIPRERUN The full path to prep script to launch before mpirun. --with-mpi-prerun=/usr/local/bin/start-parallel Used to specify mpd or other user-daemon launches], , [with_mpi_prerun=no]) case "$with_mpi_prerun" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-prerun=yes': yes not a valid launcher.]) ;; *) MPIPRERUN="$with_mpi_prerun" ;; esac # no-wrapper flags # --with-mpi-lib-static= # --with-mpi-lib-dynamic= # --with-mpi-ldflags-static= # --with-mpi-ldflags-dynamic= # --with-mpi-cflags= # --with-mpi-fflags= # --with-mpi-cxxflags= #-------------------------------------------------------------------- # mpi-lib-static #-------------------------------------------------------------------- AC_ARG_WITH(mpi-lib-static, [ == The following mpi switches override miscellaneous folklore used == when trying to build an mpi program without using the compiler == wrappers mpicc/mpiCC. Sometimes wrapper-avoidance is necessary == for complicated, multi-language driver linkage or for working == around broken compiler wrappers. Libraries for linking mpi statically --with-mpi-lib-static=MPI_STATIC_LIBS The full paths of libraries needed, e.g. --with-mpi-lib-static='/lib/libmpi.a /lib/libpmpi.a' ], , [with_mpi_lib_static=no]) case "$with_mpi_lib_static" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-lib-static=yes': yes not a valid link item.]) ;; *) MPI_STATIC_LIBS="$with_mpi_lib_static" MPILIB="$with_mpi_lib_static" ;; esac #-------------------------------------------------------------------- # mpi-lib-dynamic #-------------------------------------------------------------------- AC_ARG_WITH(mpi-lib-dynamic, [Libraries for linking mpi dynamically --with-mpi-lib-dynamic=MPI_SO_LIBS The full paths of libraries needed, e.g. --with-mpi-lib-dynamic='/lib/libmpi.so /lib/libpmpi.so' or something like '-L/usr/local/mpi/lib/solaris/ch_p4 -lmpi -L/opt/SUNWspro/SC4.2/lib /usr/local/lib/liblapack.a /usr/local/lib/libblas.a -lnsl -lsocket -lM77 -lF77 -lsunmath' ], , [with_mpi_lib_dynamic=no]) case "$with_mpi_lib_dynamic" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-lib-dynamic=yes': yes not a valid link item.]) ;; *) MPI_SO_LIBS="$with_mpi_lib_dynamic" ;; esac #-------------------------------------------------------------------- # mpi-ldflags-dynamic #-------------------------------------------------------------------- AC_ARG_WITH(mpi-ldflags-dynamic, [LD_FLAGS for linking mpi dynamically, other than the libraries --with-mpi-ldflags-dynamic=MPI_SO_LDFLAGS The flags to appear in the link line well before libraries. ], , [with_mpi_ldflags_dynamic=no]) case "$with_mpi_ldflags_dynamic" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-ldflags-dynamic=yes': yes not a valid flag.]) ;; *) MPI_SO_LDFLAGS="$with_mpi_ldflags_dynamic" ;; esac #-------------------------------------------------------------------- # mpi-ldflags-static #-------------------------------------------------------------------- AC_ARG_WITH(mpi-ldflags-static, [LD_FLAGS for linking mpi statically, other than the libraries --with-mpi-ldflags-static=MPI_STATIC_LDFLAGS The flags to appear in the link line well before libraries. ], , [with_mpi_ldflags_static=no]) case "$with_mpi_ldflags_static" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-ldflags-static=yes': yes not a valid flag.]) ;; *) MPI_STATIC_LDFLAGS="$with_mpi_ldflags_static" ;; esac #-------------------------------------------------------------------- # mpi-cflags #-------------------------------------------------------------------- AC_ARG_WITH(mpi-cflags, [Additional CFLAGS for compiling C with mpi.h but no mpicc wrapper. --with-mpi-cflags=MPI_CFLAGS ], , [with_mpi_cflags=no]) case "$with_mpi_cflags" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-cflags=yes': yes not a valid flag.]) ;; *) MPI_CFLAGS="$with_mpi_cflags" ;; esac #-------------------------------------------------------------------- # mpi-fflags #-------------------------------------------------------------------- AC_ARG_WITH(mpi-fflags, [Additional FFLAGS for compiling FORTRAN without mpif* --with-mpi-fflags=MPI_FFLAGS ], , [with_mpi_fflags=no]) case "$with_mpi_fflags" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-fflags=yes': yes not a valid flag.]) ;; *) MPI_FFLAGS="$with_mpi_fflags" ;; esac #-------------------------------------------------------------------- # mpi-cxxflags -- this needs to be the last mpi thing so that # the comment appearing in configure --help is correct. #-------------------------------------------------------------------- AC_ARG_WITH(mpi-cxxflags, [Additional CXXFLAGS for compiling C++ with mpi but no mpiCC wrapper. --with-mpi-cxxflags=MPI_CXXFLAGS === end of mpi-related switches. ===], , [with_mpi_cxxflags=no]) case "$with_mpi_cxxflags" in no) # so nothing ;; yes) AC_MSG_WARN([Option '--with-mpi-cxxflags=yes': yes not a valid flag.]) ;; *) MPI_CXXFLAGS="$with_mpi_cxxflags" ;; esac # # END of MPI CRUFT ####################################################### # END of MPI CRUFT ####################################################### # # determine if namespaces close with }; or } CCAFE_NAMESPACE_END AC_SUBST(NAMESPACE_NEEDS_ENDSEMI) CCA_NAMESPACE_ENDSEMICOLON=NAMESPACE_NEEDS_ENDSEMI CCAFE_FORCE="" #-------------------------------------------------------------------- # See if we can find BLAS and link it static. #-------------------------------------------------------------------- AC_ARG_WITH(blas, [ --with-blas=BLASLIB The full path to the blas library.], , [with_blas=no] ) case $with_blas in no) BLASLIB= ;; yes) # The user didn't give the --with-blas # option or didn't give the library's location. # Search for a compiled libblas.a. # If that fails, disable and print a warning. AC_PATH_PROG(BLASLIB, libblas.a, , [$ccafe_math_support_dirs]) ;; *) # The user gave us --with-blas=BLASLIB, use that as the # location of the BLAS library. BLASLIB="$with_blas" ;; esac if test -z "$BLASLIB" ; then if test ! "X$with_blas" = Xno ; then AC_MSG_WARN([Cannot find libblas.a. Building CCAFFEINE without BLAS linked. Expect HPC numeric components to bomb. To specify a location for the blas library, run configure again with the argument: --with-blas=BLASLIB where BLASLIB is the full path to the blas library file.]) else AC_MSG_WARN([Built without BLAS library.]) fi else CCAFE_FORCE="$CCAFE_FORCE -D_HAVE_BLAS" fi #------------------- # find xml2 lib, include, etc. see config/ directory. #------------------- CCAFE_LIBXML2 # find doxygen, dot. see config/ directory. CCAFE_DOXYGEN #-------------------------------------------------------------------- # See if we can find lapack and link it static. #-------------------------------------------------------------------- AC_ARG_WITH(lapack, [ --with-lapack=LAPACKLIB The full path to the lapack library.], , [with_lapack=no] ) if test "X$with_blas" = Xno ; then with_lapack=no fi case $with_lapack in no) LAPACKLIB= ;; yes) # The user didn't give the --with-lapack # option or didn't give the library's location. # Search for a compiled liblapack.a. # If that fails, disable and print a warning. AC_PATH_PROGS(LAPACKLIB, liblapack.a, , $ccafe_math_support_dirs) ;; *) # The user gave us --with-lapack=LAPACKLIB, use that as the # location of the LAPACK library. LAPACKLIB="$with_lapack" ;; esac if test -z "$LAPACKLIB" ; then if test ! "X$with_lapack" = Xno ; then AC_MSG_WARN([Cannot find liblapack.a. Building CCAFFEINE without LAPACK linked. Expect HPC numeric components to bomb. To specify a location for the lapack library, run configure again with the argument: --with-lapack=LAPACKLIB where LAPACKLIB is the full path to the lapack library file, e.g. --with-lapack=/usr/lib/libcomplib.sgimath.a or --with-lapack=/usr/local/lib/libessl.a.]) else AC_MSG_WARN([Built without LAPACK library.]) fi else CCAFE_FORCE="$CCAFE_FORCE -D_HAVE_LAPACK" fi if test -n "$LAPACKLIB" -o -n "$BLASLIB" then AC_PATH_PROGS(BLASX1, libatlas.a, , $ccafe_math_support_dirs) AC_PATH_PROGS(BLASX2, libcblas.a, , $ccafe_math_support_dirs) BLASEXTRALIBS="$BLASX1 $BLASX2" AC_MSG_WARN([Found these "extra" BLAS libs: $BLASEXTRALIBS; These will be included in the link]) fi CCAFE_CHECK_BOOST if test "$BOOST_ROOT" = "no" ; then AC_MSG_ERROR( [ Cannot find BOOST headers. Make sure that the specified path has the directory boost/ in it and does not have it *included* in the path. Ccaffeine cannot be built without BOOST smart pointers To specify a location for the BOOST smart pointer library run configure again with the argument: --with-boost=BOOST_ROOT where BOOST_ROOT is the full path to the boost headers. See http://www.boost.org for more details. ] ) fi AC_SUBST(BOOST_ROOT) BOOST_INC="-I$BOOST_ROOT" BOOST_FLAGS=-DBOOST_DISABLE_THREADS if test "$BOOST_ROOT" = "/usr/include" ; then BOOST_INC="" fi if test "$BOOST_ROOT" = "/usr/local/include" ; then BOOST_INC="" fi AC_SUBST(BOOST_INC) AC_SUBST(BOOST_FLAGS) #-------------------------------------------------------------------- # On a few very rare systems, all of the libm.a stuff is # already in libc.a. Set compiler flags accordingly. # Also, Linux requires the "ieee" library for math to work # right (and it must appear before "-lm"). #-------------------------------------------------------------------- AC_CHECK_FUNC(sin, MATH_LIBS="$LAPACKLIB $BLASLIB $BLASEXTRALIBS", MATH_LIBS="$LAPACKLIB $BLASLIB $BLASEXTRALIBS -lm") AC_CHECK_LIB(ieee, main, [MATH_LIBS="-lieee $MATH_LIBS"]) #----------------------------------------------------------------------- # On Linux, you need to add in the g2c library needed to supply # fortran run-time functions when linking fortran BLAS and LAPACK # via gcc or g++ #--------------------------------------------------------------------- AC_CHECK_LIB(g2c, z_div, [FLIBS="-lg2c $FLIBS"]) #-------------------------------------------------------------------- # On AIX systems, libbsd.a has to be linked in to support # non-blocking file IO. This library has to be linked in after # the MATH_LIBS or it breaks the pow() function. The way to # insure proper sequencing, is to add it to the tail of MATH_LIBS. # This library also supplies gettimeofday. #-------------------------------------------------------------------- libbsd=no if test "`uname -s`" = "AIX" ; then AC_CHECK_LIB(bsd, gettimeofday, libbsd=yes) if test $libbsd = yes; then MATH_LIBS="$MATH_LIBS -lbsd" fi fi dnl Replace `main' with a function in -ldl: dnl AC_CHECK_LIB(dl, main) dnl Checked later, don't do here and screw up SGI... :-Q dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS(fcntl.h strings.h sys/file.h sys/time.h unistd.h) dnl check for GNU readline CCAFE_LIB_READLINE dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_TYPE_SIZE_T AC_HEADER_TIME dnl Checks for library functions. #-------------------------------------------------------------------- # Check for the existence of the -lsocket and -lnsl libraries. # The order here is important, so that they end up in the right # order in the command line generated by make. Here are some # special considerations: # 1. Use "connect" and "accept" to check for -lsocket, and # "gethostbyname" to check for -lnsl. # 2. Use each function name only once: can't redo a check because # autoconf caches the results of the last check and won't redo it. # 3. Use -lnsl and -lsocket only if they supply procedures that # aren't already present in the normal libraries. This is because # IRIX 5.2 has libraries, but they aren't needed and they're # bogus: they goof up name resolution if used. # 4. On some SVR4 systems, can't use -lsocket without -lnsl too. # To get around this problem, check for both libraries together # if -lsocket doesn't work by itself. #-------------------------------------------------------------------- tcl_checkBoth=0 AC_CHECK_FUNC(connect, tcl_checkSocket=0, tcl_checkSocket=1) if test "$tcl_checkSocket" = 1; then AC_CHECK_LIB(socket, main, LIBS="$LIBS -lsocket", tcl_checkBoth=1) fi if test "$tcl_checkBoth" = 1; then tk_oldLibs=$LIBS LIBS="$LIBS -lsocket -lnsl" AC_CHECK_FUNC(accept, tcl_checkNsl=0, [LIBS=$tk_oldLibs]) fi AC_CHECK_FUNC(gethostbyname, , AC_CHECK_LIB(nsl, main, [LIBS="$LIBS -lnsl"])) AC_FUNC_SETVBUF_REVERSED AC_FUNC_VPRINTF AC_CHECK_FUNCS(select socket strdup strerror strstr strtol) SC_ENABLE_SHARED # after SC_ENABLE_SHARED checks the configure switches. SC_CONFIG_CFLAGS SC_ENABLE_SYMBOLS # CCAFE_DL_LIBS - Library file(s) to include in demo and other base # applications in order for the "load" command to work. # CCAFE_LD_FLAGS - Flags to pass to the compiler when linking object # files into an executable application binary such # as demo. # CCAFE_LD_SEARCH_FLAGS-Flags to pass to ld, such as "-R /usr/local/tcl/lib", # that tell the run-time dynamic linker where to look # for shared libraries such as libtcl.so. Depends on # the variable LIB_RUNTIME_DIR in the Makefile. # CCAFE_SHLIB_CFLAGS - Flags to pass to cc/c++ when compiling the components # for use with CCAFFEINE. # CCAFE_SHLIB_LD - Base command to use for combining object files # into a shared library for CCAFFEINE. # CCAFE_SHLIB_LDFLAGS - Flags to pass to the dynamic linker when # creating a shared library. # CCAFE_SHLIB_LD_LIBS - Dependent libraries for the linker to scan when # creating shared libraries for CCAFFEINE. This symbol typically # goes at the end of the "ld" commands that build # shared libraries. # CCAFE_SHLIB_SUFFIX - Suffix to use for the names of dynamically loadable LD_FLAGS=$LDFLAGS CCAFE_DL_LIBS="$DL_LIBS" CCAFE_LD_FLAGS="$LD_FLAGS" CCAFE_LD_SEARCH_FLAGS="$LD_SEARCH_FLAGS" CCAFE_SHLIB_CFLAGS="$SHLIB_CFLAGS" CCAFE_SHLIB_LD="$CXX_SHLIB_LD" CCAFE_SHLIB_LDFLAGS="$SHLIB_LDFLAGS" CCAFE_SHLIB_LD_LIBS="$SHLIB_LD_LIBS" CCAFE_SHLIB_SUFFIX="$SHLIB_SUFFIX" if test "${ccafe_have_mpi}" = "no"; then USEMPI=0 AC_MSG_WARN([Configured without MPI. Hope that is what you meant. See configure --help for other mpi switches if it is not what you meant.]) else AC_MSG_RESULT([Configured with MPI. 'grep MPI ./varlist' for details.]) USEMPI=1 fi CCAFE_PURESINGLE CCAFE_MAKEDEBUG CCAFE_HIDELIBTOOL CCAFE_HIDECOMPILE #------------------------------------------------------------------------------ # FWK-SPEW # turn on various debugging or not? mostly useful in binding debuggging. #------------------------------------------------------------------------------ AC_ARG_ENABLE(spew, [ --enable-spew Should framework-spew for debugging be enabled? (Probably not, there's a lot of it.)], [enable_spew=$enableval], [enable_spew=no]) if test ! "X$enable_spew" = "Xno"; then enable_spew=yes fi if test "X$enable_spew" = "Xyes"; then CCAFE_SPEW=1 else CCAFE_SPEW=0 fi CCAFE_SHARED_LIB=libccafeCore$VER_SUFFIX$PROGRAM_SUFFIX$SHLIB_SUFFIX CCAFE_STATIC_LIB=libccafeCore$VER_SUFFIX$PROGRAM_SUFFIX.a CCAFE_LIBTOOL_LIB=libccafeCore$VER_SUFFIX$PROGRAM_SUFFIX.la CCAFE_STATIC_DRIVER_LIB=libccafeDrivers$VER_SUFFIX$PROGRAM_SUFFIX.a CCAFE_SHARED_DRIVER_LIB=libccafeDrivers$VER_SUFFIX$PROGRAM_SUFFIX$SHLIB_SUFFIX CCAFE_LIBTOOL_DRIVER_LIB=libccafeDrivers$VER_SUFFIX$PROGRAM_SUFFIX.la CCAFE_BABEL_LIBTOOL_LIB=libccaffeine$VER_SUFFIX$PROGRAM_SUFFIX.la CCAFE_BABEL_SHARED_LIB=libccaffeine$VER_SUFFIX$PROGRAM_SUFFIX$SHLIB_SUFFIX CCAFE_BABEL_STATIC_LIB=libccaffeine$VER_SUFFIX$PROGRAM_SUFFIX.a BUILT_SHARED_LIB=libccafeCore$SHLIB_SUFFIX BUILT_STATIC_LIB=libccafeCore.a BUILT_LIBTOOL_LIB=libccafeCore.la BUILT_SHARED_DRIVER_LIB=libccafeDrivers$SHLIB_SUFFIX BUILT_STATIC_DRIVER_LIB=libccafeDrivers.a BUILT_LIBTOOL_DRIVER_LIB=libccafeDrivers.la BUILT_BABEL_LIBTOOL_LIB=libccaffeine.la BUILT_BABEL_SHARED_LIB=libccaffeine$SHLIB_SUFFIX BUILT_BABEL_STATIC_LIB=libccaffeine.a if test "X$MPICC" = "X"; then MPICC=$CC fi if test "X$MPICXX" = "X"; then MPICXX=$CXX fi NO_CLASSIC_RC="#" NO_BABEL_RC="#" NO_BABELCLASSIC_RC="#" if test "X$HAVE_BABEL" = "X1"; then NO_BABEL_RC="" fi if test "X$HAVE_CLASSIC" = "X1"; then NO_CLASSIC_RC="" fi if test "X$HAVE_CLASSIC$HAVE_BABEL" = "X11"; then NO_BABELCLASSIC_RC="" fi CCAFEDEVELOPER AC_SUBST(CCAFE_DEVELOPER) AC_SUBST(NO_BABEL_RC) AC_SUBST(NO_BABELCLASSIC_RC) AC_SUBST(NO_CLASSIC_RC) AC_SUBST(CCASPEC_BABEL_BABEL) AC_SUBST(TCL_STUB_LIB_FILE) AC_SUBST(TCL_STUB_LIB_FLAG) AC_SUBST(TCL_BUILD_STUB_LIB_SPEC) AC_SUBST(TCL_STUB_LIB_SPEC) AC_SUBST(TCL_BUILD_STUB_LIB_PATH) AC_SUBST(TCL_STUB_LIB_PATH) AC_SUBST(MAKE_STUB_LIB) AC_SUBST(BUILD_DLTEST) AC_SUBST(CFLAGS) AC_SUBST(CFLAGS_DEBUG) AC_SUBST(CFLAGS_OPTIMIZE) AC_SUBST(CFLAGS_WARNING) AC_SUBST(CFG_TCL_SHARED_LIB_SUFFIX) AC_SUBST(CFG_TCL_UNSHARED_LIB_SUFFIX) AC_SUBST(CFG_TCL_EXPORT_FILE_SUFFIX) AC_SUBST(TCL_DBGX) AC_SUBST(DL_LIBS) AC_SUBST(DL_OBJS) AC_SUBST(EXTRA_CFLAGS) AC_SUBST(LD_FLAGS) AC_SUBST(MAKE_LIB) AC_SUBST(MATH_LIBS) AC_SUBST(SHLIB_CFLAGS) AC_SUBST(SHLIB_LD) AC_SUBST(SHLIB_LD_LIBS) AC_SUBST(SHLIB_SUFFIX) AC_SUBST(TCL_BUILD_LIB_SPEC) AC_SUBST(TCL_LD_SEARCH_FLAGS) AC_SUBST(TCL_LIB_FILE) AC_SUBST(TCL_LIB_FLAG) AC_SUBST(TCL_NEEDS_EXP_FILE) AC_SUBST(TCL_BUILD_EXP_FILE) AC_SUBST(TCL_EXP_FILE) AC_SUBST(TCL_LIB_SPEC) AC_SUBST(TCL_LIB_VERSIONS_OK) AC_SUBST(TCL_MAJOR_VERSION) AC_SUBST(TCL_MINOR_VERSION) AC_SUBST(TCL_PACKAGE_PATH) AC_SUBST(TCL_PATCH_LEVEL) AC_SUBST(TCL_SHARED_LIB_SUFFIX) AC_SUBST(TCL_SHARED_BUILD) AC_SUBST(TCL_SHLIB_CFLAGS) AC_SUBST(TCL_SRC_DIR) AC_SUBST(TCL_UNSHARED_LIB_SUFFIX) AC_SUBST(TCL_VERSION) AC_SUBST(XMLINC) AC_SUBST(XMLLIB) AC_SUBST(HAVE_XML) AC_SUBST(BABEL_FLAGS) AC_SUBST(CCAFE_DL_LIBS) AC_SUBST(CCAFE_LD_FLAGS) AC_SUBST(CCAFE_LD_SEARCH_FLAGS) AC_SUBST(CCAFE_SHLIB_CFLAGS) AC_SUBST(CCAFE_SHLIB_LD) AC_SUBST(CCAFE_SHLIB_LDFLAGS) AC_SUBST(CCAFE_SHLIB_LD_LIBS) AC_SUBST(CCAFE_SHLIB_SUFFIX) AC_SUBST(PVM_ROOT) AC_SUBST(EFENCE) AC_SUBST(EFENCE_INC) AC_SUBST(CCASPEC_SUPPORT_SHARED) AC_SUBST(CCASPEC_SUPPORT_STATIC) AC_SUBST(CCA_ROOT) AC_SUBST(CCA_JAVA_HM) AC_SUBST(NEO_CCA_ROOT_INSTALLED) AC_SUBST(NEO_CCA_INSTALLED) AC_SUBST(NEO_CCA_CONFIG) AC_SUBST(EGNEO_CONFIG) AC_SUBST(NEOTESTPARAMETER_CONFIG) AC_SUBST(CLASSIC_CCA_ROOT) AC_SUBST(CLASSIC_CCA_INSTALLED) AC_SUBST(CLASSIC_CCA_CONFIG) AC_SUBST(HAVE_CLASSIC) AC_SUBST(HAVE_NEO) AC_SUBST(CCAFE_SHARED_LIB) AC_SUBST(CCAFE_STATIC_LIB) AC_SUBST(CCAFE_STATIC_DRIVER_LIB) AC_SUBST(BUILT_LIBTOOL_LIB) AC_SUBST(CCAFE_LIBTOOL_LIB) AC_SUBST(CCAFE_LIBTOOL_DRIVER_LIB) AC_SUBST(BUILT_SHARED_LIB) AC_SUBST(BUILT_STATIC_LIB) AC_SUBST(BUILT_STATIC_DRIVER_LIB) AC_SUBST(BUILT_LIBTOOL_DRIVER_LIB) AC_SUBST(CCAFE_SHARED_DRIVER_LIB) AC_SUBST(BUILT_SHARED_DRIVER_LIB) AC_SUBST(CCAFE_BABEL_LIBTOOL_LIB) AC_SUBST(CCAFE_BABEL_SHARED_LIB) AC_SUBST(CCAFE_BABEL_STATIC_LIB) AC_SUBST(BUILT_BABEL_LIBTOOL_LIB) AC_SUBST(BUILT_BABEL_SHARED_LIB) AC_SUBST(BUILT_BABEL_STATIC_LIB) AC_SUBST(HAVE_JAVA) AC_SUBST(NOJAVARULE) AC_SUBST(EGNEO_CCA_DATA) AC_SUBST(NEOTESTPARAMETER_CCA_DATA) AC_SUBST(NEOTESTGO_CCA_DATA) AC_SUBST(PURESINGLE) AC_SUBST(HAVE_NOISE) AC_SUBST(HIDECOMPILE) AC_SUBST(HIDELIBTOOL) AC_SUBST(OS_ARCH) AC_SUBST(MPI) AC_SUBST(MPI_IS_MPD) AC_SUBST(MPIRUN) AC_SUBST(MPIPRERUN) AC_SUBST(MPIF77) AC_SUBST(MPIF90) AC_SUBST(MPICC) AC_SUBST(MPI_LD) AC_SUBST(MPICXX) AC_SUBST(MPI_ARCH) AC_SUBST(MPI_HOME) AC_SUBST(MPI_INC) AC_SUBST(MPI_BIN) AC_SUBST(MPI_STATIC_LIBS) AC_SUBST(MPI_STATIC_LDFLAGS) AC_SUBST(MPI_SO_LIBS) AC_SUBST(MPI_SO_LDFLAGS) AC_SUBST(MPI_CFLAGS) AC_SUBST(MPI_FFLAGS) AC_SUBST(MPI_CXXFLAGS) # some flags for mpi which should be obsolete soon we hope AC_SUBST(BROKEN_MPICC) AC_SUBST(BROKEN_MPICXX) AC_SUBST(MPI_LDFLAGS) AC_SUBST(MPILIB) AC_SUBST(MPI_LIBDIR) AC_SUBST(MPI_SO_LIBDIR) AC_SUBST(MPILD_SO_FLAGS) AC_SUBST(MPI_INC_ODD) # end of some flags for mpi which should be obsolete soon we hope AC_SUBST(PKG_NAME) AC_SUBST(VER_SUFFIX) AC_SUBST(PROGRAM_SUFFIX) AC_SUBST(pkgdatadir) AC_SUBST(pkgdocdir) AC_SUBST(pkglibdir) AC_SUBST(pkgincludedir) AC_SUBST(CCAFE_SPEW) AC_SUBST(CCAFE_MAJOR_VERSION) AC_SUBST(CCAFE_MINOR_VERSION) AC_SUBST(CCAFE_PATCH_LEVEL) AC_SUBST(CCAFE_VERSION) AC_SUBST(CCAFE_VERSION_UNDERBAR) AC_SUBST(VERSION) AC_SUBST(TCLSH) AC_SUBST(RUBY) AC_SUBST(SWIG) AC_SUBST(SWIG_HOME) AC_SUBST(CCAFE_ROOT) AC_SUBST(CCAFE_CXX_ROOT) AC_SUBST(CCAFE_JAVA_ROOT) AC_SUBST(CCAFE_INSTALL_ROOT) AC_SUBST(CCAFE_RPM_ROOT) AC_SUBST(CCAFE_RPM_prefix) AC_SUBST(CCAFE_RPM_libdir) AC_SUBST(CCAFE_RPM_pkgdatadir) AC_SUBST(EYES2_ROOT) AC_SUBST(SNLCPP_ROOT) AC_SUBST(ESI_ROOT) AC_SUBST(STV_ROOT) AC_SUBST(EYES_ROOT) AC_SUBST(PYTHON_SCRIPTING) AC_SUBST(PYTHON_INCLUDE) AC_SUBST(PYTHON_CPPFLAGS) AC_SUBST(PYTHON_LDFLAGS) AC_SUBST(CONFIG_ARGS) AC_SUBST(CCAFE_FORCE) AC_SUBST(CPP) AC_SUBST(CXX) AC_SUBST(CXXFLAGS) AC_SUBST(NOT_HAVE_CXX_LIMITS) AC_SUBST(CXX_TEMPLATES) AC_SUBST(CXXCPP) AC_SUBST(FLIBS) AC_SUBST(AWK) AC_SUBST(LN_S) AC_SUBST(RANLIB) AC_SUBST(LEX) AC_SUBST(YACC) AC_SUBST(SET_MAKE) AC_SUBST(TIME_WITH_SYS_TIME) AC_SUBST(HAVE_SYS_TIME_H) AC_SUBST(LIBS) AC_SUBST(SETVBUF_REVERSED) AC_SUBST(HAVE_VPRINTF) AC_SUBST(HAVE_SYS_IOCTL_H) AC_SUBST(HAVE_SYS_FILIO_H) AC_SUBST(USE_FIONBIO) AC_SUBST(USEMPI) AC_SUBST(GMAKE) AC_SUBST(PURIFY) AC_SUBST(SIZEOF_SHORT_P) AC_SUBST(SIZEOF_SHORT) AC_SUBST(SIZEOF_LONG_INT) AC_SUBST(SIZEOF_LONG_LONG_INT) AC_SUBST(SIZEOF_INT64_T) AC_SUBST(INSTALL) AC_SUBST(MONOCHROME) AC_SUBST(INSTALL_DATA) AC_SUBST(DOTTARG) AC_SUBST(DOT) AC_SUBST(DOXYGENTARG) AC_SUBST(DOXYGEN) AC_SUBST(CCA_BUNDLE_VERSION) #chez_rob_files="chez-rob/protoBS/Makefile chez-rob/protoBS/CcaffeineAbstractFramework.cxx" chez_rob_files="chez-rob/protoBS/Makefile" top_files="varlist Makefile Makefile.dl Makefile.conf.dl Makefile.install reconfigure examples/configureHints" dep_files="cxx/util/xlcdepinclude cxx/util/xlcdepinclude_nosys" cxx_files="cxx/Makefile.Rules cxx/Makefile.Vars cxx/MakeIncl.CCAFE_MPI cxx/dc/user_iface/CcaffeineRC cxx/scutil/detemplate.rb cxx/dc/user_iface/ProgramSuffix.h cxx/dc/export/config.hh" doc_files="src/DoxyConfig" src_files="src/MakeIncl.CCAFE src/ccafe-config src/ccafeConfig.sh src/bkupFile.rb src/namespchgr.rb src/memtest src/simpleTests src/testBabelFactoryService src/testBabelParameterDialogServiceTest src/testBabelPortTranslator src/testRPMBatch src/testRPMPortTranslator src/test-python-bs src/test-GoThread src/testBabelParameterPortFactory src/testBabelServiceRegistry src/libccafeCore.scl" scripts_files="scripts/simplify-bld scripts/bld2rc" bcf="cxx/dc/babel/component" sidl_files="cxx/dc/babel/babel-cca/ccafe.sidl $bcf/StringConsumerPort/StringConsumerPort.sidl $bcf/PrinterComponent/PrinterComponent.sidl $bcf/PortTranslatorStarter/PortTranslatorStarter.sidl $bcf/StarterComponent/StarterComponent.sidl $bcf/GoComponent/GoComponent.sidl $bcf/ParameterDialogServiceTest/ParameterDialogServiceTest.sidl $bcf/ParameterPortFactoryTest/ParameterPortFactoryTest.sidl $bcf/ServiceRegistryTest/ServiceRegistryTest.sidl $bcf/MPIComponent/MPIComponent.sidl" neofiles="cxx/dc/neo/mpitest/mpiTest.scr" babelfiles="cxx/dc/babel/test/test-input.scr cxx/dc/babel/mpitest/mpitest-input.scr" CCAFE_CONFIG_FILES=" $top_files $dep_files $cxx_files $scripts_files $chez_rob_files $sidl_files $babelfiles $neofiles $doc_files $src_files" AC_SUBST(CCAFE_CONFIG_FILES) AC_OUTPUT($CCAFE_CONFIG_FILES, chmod +x reconfigure echo "=== Summary of configuration ===" echo "Installation will be in $prefix" echo "libtool is $BABEL_LIBTOOL ($BLVERSION)" if test "x$HAVE_BABEL" = "x1"; then echo "babel support enabled." echo "CCASPEC_BABEL_VERSION=$CCASPEC_BABEL_VERSION" else echo "babel support disabled." fi if test "x$HAVE_CLASSIC" = "x1"; then echo "classic support enabled." else echo "classic support disabled." fi if test "x$HAVE_NEO" = "x1" ; then echo "neo support enabled." else echo "neo support disabled." fi if test "x$HAVE_XML" = "x1"; then echo "libxml2 use enabled." else echo "libxml2 use disabled." fi , prefix=$prefix HAVE_XML=$HAVE_XML CCASPEC_BABEL_VERSION=$CCASPEC_BABEL_VERSION HAVE_CLASSIC=$HAVE_CLASSIC HAVE_NEO=$HAVE_NEO HAVE_BABEL=$HAVE_BABEL BLVERSION="`$BABEL_LIBTOOL --version |grep libtool`" ) # $Header: /cvs/ccaffeine/repository/dccafe/configure.in,v 1.130 2005/05/10 22:24:09 baallan Exp $