--- MITgcm/tools/genmake2 2013/08/22 01:10:53 1.260 +++ MITgcm/tools/genmake2 2014/01/25 18:25:49 1.264 @@ -1,6 +1,6 @@ #! /usr/bin/env bash # -# $Header: /home/ubuntu/mnt/e9_copy/MITgcm/tools/genmake2,v 1.260 2013/08/22 01:10:53 jmc Exp $ +# $Header: /home/ubuntu/mnt/e9_copy/MITgcm/tools/genmake2,v 1.264 2014/01/25 18:25:49 jmc Exp $ # $Name: $ # # Makefile generator for MITgcm UV codes @@ -19,9 +19,13 @@ -help | --help | -h | --h Print this help message and exit. + -oad | --oad + Generate a Makefile for an OpenAD built + -adoptfile NAME | --adoptfile NAME | -adof NAME | --adof NAME -adoptfile=NAME | --adoptfile=NAME | -adof=NAME | --adof=NAME Use "NAME" as the adoptfile. By default, the file at + "tools/adjoint_options/adjoint_oad" (for OpenAD built) or "tools/adjoint_options/adjoint_default" will be used. -nooptfile | --nooptfile @@ -1325,6 +1329,7 @@ FS90= AUTODIFF_PKG_USED=f +OPENAD= AD_OPTFILE= TAF= AD_TAF_FLAGS= @@ -1355,7 +1360,7 @@ gm_s8="HAVE_NETCDF HAVE_SYSTEM HAVE_FDATE HAVE_ETIME HAVE_LAPACK HAVE_FLUSH" # The following are all related to adjoint/tangent-linear stuff -gm_s10="AUTODIFF_PKG_USED AD_OPTFILE TAMC TAF AD_TAMC_FLAGS AD_TAF_FLAGS" +gm_s10="AUTODIFF_PKG_USED AD_OPTFILE OPENAD TAMC TAF AD_TAMC_FLAGS AD_TAF_FLAGS" gm_s11="FTL_TAMC_FLAGS FTL_TAF_FLAGS SVD_TAMC_FLAGS SVD_TAF_FLAGS" gm_s12="TAF_EXTRA TAMC_EXTRA DIVA MPIINCLUDEDIR MPI_HEADER_FILES" @@ -1407,6 +1412,8 @@ -optfile=* | --optfile=* | -of=* | --of=*) OPTFILE=$ac_optarg ;; + -oad | --oad) + OPENAD="true" ;; -adoptfile | --adoptfile | -adof | --adof) ac_prev=AD_OPTFILE ;; -adoptfile=* | --adoptfile=* | -adof=* | --adof=*) @@ -1576,17 +1583,17 @@ done -TMP=./genmk_$$ +#TMP=./genmk_$$ #- try to put temporary files in system-local /tmp dir -#TMP=/tmp/genmk_$$ -#touch $TMP ; retVal=$? -#if [ $retVal -eq 0 ] ; then -# if test ! -r $TMP ; then TMP=./genmk_$$ ; fi -#else -# TMP=./genmk_$$ -#fi -#rm -f $TMP -##echo " temp files: $TMP.*" +TMP=/tmp/genmk_$$ +touch $TMP ; retVal=$? +if [ $retVal -eq 0 ] ; then + if test ! -r $TMP ; then TMP=./genmk_$$ ; fi +else + TMP=./genmk_$$ +fi +rm -f $TMP +#echo " temp files: $TMP.*" printf " getting local config information: " if test -f $gm_local ; then @@ -1680,10 +1687,12 @@ echo " getting AD_OPTFILE information:" if test "x${AD_OPTFILE}" = x ; then - if test "x$MITGCM_AD_OF" = x ; then + if test "x$MITGCM_AD_OF" != x ; then + AD_OPTFILE=$MITGCM_AD_OF + elif test "x$OPENAD" = x ; then AD_OPTFILE=$ROOTDIR/tools/adjoint_options/adjoint_default else - AD_OPTFILE=$MITGCM_AD_OF + AD_OPTFILE=$ROOTDIR/tools/adjoint_options/adjoint_oad fi fi if test "x${AD_OPTFILE}" != xNONE ; then @@ -2356,24 +2365,20 @@ fi fi -# Check for package RADTRANS: if LAPACK is not available, -# then issue a warning that the direct radtrans solver is not available. -if test "x$HAVE_LAPACK" != xt ; then - echo " $PACKAGES " | grep ' radtrans ' > /dev/null 2>&1 +# Make sure the openad package is enabled if using OpenAD +if test "x$OPENAD" != x ; then + echo " $PACKAGES " | grep ' openad ' > /dev/null 2>&1 RETVAL=$? - if test "x$RETVAL" = x0 ; then + if test "x$RETVAL" != x0 ; then cat <