dnl dnl template file to create configure script for DCL dnl # # === STARTUP === # AC_CHECK_CANONICAL_HOST AC_INIT(src/gtool.f90) AC_PREFIX_DEFAULT(/usr/local/gtool4) sh ./chkfort.sh . chkfort.cfg AC_SUBST(FC) AC_SUBST(MOD) AC_SUBST(F90MODTYPE) : ${IFCCEM:=:} AC_SUBST(IFCCEM) if test X"$MOD" = X".f90" ; then CLEAN_MODS= else CLEAN_MODS="*$MOD" fi AC_SUBST(CLEAN_MODS) dnl # dnl # === CHARSET === dnl # dnl dnl AC_CHECK_PROG(SJISTOEUC, nkf, nkf -xe) dnl AC_CHECK_PROG(SJISTOEUC, iconv, iconv -f SHIFT_JIS -t EUC-JP) dnl AC_CHECK_PROG(EUCTOSJIS, nkf, nkf -xs) dnl AC_CHECK_PROG(EUCTOSJIS, iconv, iconv -f EUC-JP -t SHIFT_JIS) dnl dnl AC_ARG_WITH(charset, [charset: of source and resource (shift_jis or euc-jp)], [ dnl ac_cv_sys_charset=$withval dnl ], [ dnl AC_CACHE_CHECK([charset for source/resource], ac_cv_sys_charset, [ dnl case $SYSTYPE in dnl *BSD*|Linux*|SunOS-4.*) dnl ac_cv_sys_charset=euc-jp dnl ;; dnl *) dnl ac_cv_sys_charset=shift_jis dnl ;; dnl esac dnl ]) dnl ]) dnl CHARSET=$ac_cv_sys_charset dnl AC_SUBST(CHARSET) # # === LIBRARIES BY DCLF90CONFIG === # # --- netcdf --- # DC_ARG_WITH(netcdf, [netcdf library filename], ac_cv_lib_netcdf, [ AC_MSG_ERROR(specify netcdf library filename (like libnetcdf.a) with --with-netcdf=) ]) if test ! -f $ac_cv_lib_netcdf ; then AC_MSG_ERROR(specified base directory $ac_cv_lib_netcdf not exist) fi netcdf_libdir=`dirname $ac_cv_lib_netcdf` netcdf_libname=`basename $ac_cv_lib_netcdf .a | sed 's/^lib//'` try2=`dirname $netcdf_libdir`/include if test -f "$try2/netcdf.h"; then netcdf_incdir=$try2 else AC_MSG_ERROR(netcdf include file not found) fi # # --- dclf90config of DCL-F90 --- # DC_ARG_WITH(dclf90config, [dclf90config command], ac_cv_lib_dclf90config, [ ac_cv_lib_dclf90config=`which dclf90config 2> /dev/null` if test ! -x "$ac_cv_lib_dclf90config"; then ac_cv_lib_dclf90config=NONE fi ]) # # --- without DCLF90CONFIG --- # if test X"$ac_cv_lib_dclf90config" = X"NONE" then echo ' then' dclconfig, dclf90lib must be specified. # # --- DCL --- # DC_ARG_WITH(dclconfig, [dclconfig command], ac_cv_lib_dclconfig, [ ac_cv_lib_dclconfig=`which dclconfig 2> /dev/null` if test ! -x "$ac_cv_lib_dclconfig"; then AC_MSG_ERROR(dclconfig not found) fi ]) # # --- dclf90 --- # DC_ARG_WITH(dclf90lib, [dcl-f90 library], ac_cv_lib_dclf90, AC_MSG_ERROR(specify dcl-f90 library filename (like libdcl-f90.a) with --with-dclf90lib= option.) ) if test ! -f $ac_cv_lib_dclf90 ; then AC_MSG_ERROR(specified library file $ac_cv_lib_dclf90 not exist) fi dclf90_libdir=`dirname $ac_cv_lib_dclf90` dclf90_libname=`basename $ac_cv_lib_dclf90 .a | sed 's/^lib//'` try1=""; try2="" if test -d ${try1:=$dclf90_libdir/module} ; then dclf90_moddir=$try1 elif test -d ${try2:=`dirname $dclf90_libdir`/include} ; then dclf90_moddir=$try2 else AC_MSG_ERROR(dcl-f90 module directory not found) fi dclconfig=$ac_cv_lib_dclconfig SYSLDFLAGS="`$dclconfig --ldflags` -L$dclf90_libdir -L$netcdf_libdir" SYSLDLIBS="-l$dclf90_libname `$dclconfig --ldlibs` -l$netcdf_libname $SYSFLIBS" SYSFFLAGS="`$dclconfig --fflags` -I$dclf90_moddir" else dclf90config="$ac_cv_lib_dclf90config" SYSLDFLAGS="`$dclf90config --ldflags` -L$netcdf_libdir" SYSLDLIBS="`$dclf90config --ldlibs` -l$netcdf_libname" SYSFFLAGS="`$dclf90config --fflags`" fi # # --- -with-docdir=docidir --- # ac_cv_dest_doc='${prefix}/doc' DC_ARG_WITH(docdir, [document installation directory], ac_cv_dest_doc, [ AC_MSG_ERROR(specify docdir with --with-docdir=dir)]) docdir=$ac_cv_dest_doc AC_SUBST(docdir) # # --- care of some special environments --- # if test X"$F90MODTYPE" = X"intel.d"; then case "$SYSLDLIBS$SYSLDFLAGS$SYSFFLAGS" in *-Vaxlib*) ;; *) SYSLDLIBS="$SYSLDLIBS -Vaxlib";; esac fi if test X"$F90MODTYPE" = X"fqs.mod"; then case "$SYSFFLAGS" in *-Am*) ;; *) SYSFFLAGS="$SYSFFLAGS -Am";; esac fi AC_SUBST(SYSLDLIBS) AC_SUBST(SYSLDFLAGS) AC_SUBST(SYSFFLAGS) # # --- system dependent runtime selection (not checked) --- # DC_ARG_WITH(getarg, [getarg runtime procedure], ac_cv_fortran_getarg, ac_cv_fortran_getarg=dcl ) SYSDEPARG=$ac_cv_fortran_getarg case $SYSDEPARG in common) echo 'sysdepargget() calls GETARG' ;; dcl) echo 'sysdepargget() calls DCL OSGARG' ;; *) echo 'reconfigure with --with-getarg={common,dcl}' AC_MSG_ERROR(unknown getarg type) ;; esac AC_SUBST(SYSDEPARG) DC_ARG_WITH(abort, [abort runtime procedure], ac_cv_fortran_abort, ac_cv_fortran_abort=dcl ) SYSDEPABORT=$ac_cv_fortran_abort case $SYSDEPABORT in abort) echo 'sysdepabort() calls ABORT';; dcl) echo 'sysdepabort() calls DCL OSABRT';; errtra-setrcd) echo 'sysdepabort() calls ERRTRA/SETRCD/EXIT (intended for Lahey/Fujitsu Fortran)';; exit) echo 'sysdepabort() calls EXIT (intended for Intel Fortran)';; setrcd) echo 'sysdepabort() calls SETRCD/EXIT (intended for FQS Fortran)';; stop) echo 'sysdepabort() executes STOP';; *) echo 'reconfigure with --with-abort={abort,dcl,errtra-setrcd,exit,setrcd,stop}' AC_MSG_ERROR(unknown abort type) ;; esac AC_SUBST(SYSDEPABORT) # # === output === # AC_OUTPUT(Config.mk) # ${MAKE:-make} ${CHARSET}