/[MITgcm]/MITgcm/tools/genmake2
ViewVC logotype

Diff of /MITgcm/tools/genmake2

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.6 by edhill, Fri Sep 5 00:25:42 2003 UTC revision 1.10 by adcroft, Fri Sep 26 18:47:59 2003 UTC
# Line 203  THISHOSTNAME=`hostname` Line 203  THISHOSTNAME=`hostname`
203  THISCWD=`pwd`  THISCWD=`pwd`
204  THISDATE=`date`  THISDATE=`date`
205  MACHINE=`uname -a`  MACHINE=`uname -a`
206    EXECUTABLE=
207    EXEHOOK=
208    EXEDIR=
209    
210  #  The following state can be set directly by command-line switches  #  The following state can be set directly by command-line switches
211  gm_s1="OPTFILE PDEPEND PDEFAULT MAKEFILE PLATFORM ROOTDIR MODS DISABLE ENABLE NOOPT"  gm_s1="OPTFILE PDEPEND PDEFAULT MAKEFILE PLATFORM ROOTDIR MODS DISABLE ENABLE NOOPT"
# Line 212  gm_s2="FC IEEE MPI JAM DUMPSTATE" Line 215  gm_s2="FC IEEE MPI JAM DUMPSTATE"
215  gm_s3="LN S64 KPP LINK PACKAGES MAKEDEPEND PDEPEND PDEFAULT INCLUDES FFLAGS FOPTIM "  gm_s3="LN S64 KPP LINK PACKAGES MAKEDEPEND PDEPEND PDEFAULT INCLUDES FFLAGS FOPTIM "
216  gm_s4="CFLAGS KFLAGS1 KFLAGS2 LIBS KPPFILES NOOPTFILES NOOPTFLAGS"  gm_s4="CFLAGS KFLAGS1 KFLAGS2 LIBS KPPFILES NOOPTFILES NOOPTFLAGS"
217  gm_s5="TOOLSDIR SOURCEDIRS INCLUDEDIRS PWD MAKE THISHOSTNAME THISDATE MACHINE"  gm_s5="TOOLSDIR SOURCEDIRS INCLUDEDIRS PWD MAKE THISHOSTNAME THISDATE MACHINE"
218    gm_s6="EXECUTABLE EXEHOOK EXEDIR"
219    
220  gm_state="COMMANDL $gm_s1 $gm_s2 $gm_s3 $gm_s4 $gm_s5"  gm_state="COMMANDL $gm_s1 $gm_s2 $gm_s3 $gm_s4 $gm_s5 $gm_s6"
221    
222    
223  echo  echo
# Line 385  else Line 389  else
389      fi      fi
390  fi  fi
391    
392    #  Check that FC, LINK, CPP, and S64 are defined.  If not, complain
393    #  and abort!
394    if test "x$FC" = x ; then
395        cat <<EOF 1>&2
396    
397    Error: no Fortran compiler: please specify using one of the following:
398      1) within the options file ("FC=...") as specified by "-of=OPTFILE"
399      2) the "-fc=XXX" command-line option
400      3) the "./gm_local" file
401    EOF
402        exit 1
403    fi
404    if test "x$LINK" = x ; then
405        LINK=$FC
406    fi
407    if test "x$CPP" = x ; then
408        cat <<EOF 1>&2
409    
410    Error: no C pre-processor: please specify using one of the following:
411      1) within the options file ("CPP=...") as specified by "-of=OPTFILE"
412      2) the "./gm_local" file
413    EOF
414        exit 1
415    fi
416    if test "x$S64" = x ; then
417        cat <<EOF 1>&2
418    
419    Error: no C pre-processor: please specify using one of the following:
420      1) within the options file ("S64=...") as specified by "-of=OPTFILE"
421      2) the "./gm_local" file
422    EOF
423        exit 1
424    fi
425    
426    
427  printf "\n===  Setting defaults  ===\n"  printf "\n===  Setting defaults  ===\n"
428  echo -n "  Adding MODS directories:  "  echo -n "  Adding MODS directories:  "
429  for d in $MODS ; do  for d in $MODS ; do
# Line 657  done Line 696  done
696  # done  # done
697  # echo  # echo
698    
699  echo "  Setting package-specific CPP flags in CPP_OPTIONS.h:"  echo "  Searching for CPP_OPTIONS.h (macros and flags for configuring the model):"
700  CPP_OPTIONS=  CPP_OPTIONS=
701  spaths="$SOURCEDIRS"  spaths="$MODS ./ $SOURCEDIRS"
702  for i in $spaths ; do  for i in $spaths ; do
703      try="$i/CPP_OPTIONS.h"      try="$i/CPP_OPTIONS.h"
704      #  echo -n "    trying $try : "      #  echo -n "    trying $try : "
# Line 794  echo -n 'SRCFILES = '    > srclist.inc Line 833  echo -n 'SRCFILES = '    > srclist.inc
833  echo -n 'CSRCFILES = '   > csrclist.inc  echo -n 'CSRCFILES = '   > csrclist.inc
834  echo -n 'F90SRCFILES = ' > f90srclist.inc  echo -n 'F90SRCFILES = ' > f90srclist.inc
835  echo -n 'HEADERFILES = ' > hlist.inc  echo -n 'HEADERFILES = ' > hlist.inc
836  alldirs=". $SOURCEDIRS $INCLUDEDIRS"  alldirs="$SOURCEDIRS $INCLUDEDIRS ."
837  for d in $alldirs ; do  for d in $alldirs ; do
838      deplist=      deplist=
839      sfiles=`( cd $d; echo *.[h,c,F] )`      sfiles=`( cd $d; echo *.[h,c,F] )`
# Line 945  all: \$(EXECUTABLE) Line 984  all: \$(EXECUTABLE)
984  depend:  depend:
985          @make links          @make links
986          \$(MAKEDEPEND) -o .f \$(DEFINES) \$(INCLUDES) \$(SRCFILES)          \$(MAKEDEPEND) -o .f \$(DEFINES) \$(INCLUDES) \$(SRCFILES)
987          ../../../tools/f90mkdepend >> \$(MAKEFILE)          ${TOOLSDIR}/f90mkdepend >> \$(MAKEFILE)
988    
989  links: \$(SRCFILES) \$(CSRCFILES) \$(HEADERFILES) \$(F90SRCFILES)  links: \$(SRCFILES) \$(CSRCFILES) \$(HEADERFILES) \$(F90SRCFILES)
990    
# Line 993  cleanlinks: Line 1032  cleanlinks:
1032    
1033  EOF  EOF
1034    
1035    if test "x$EXEHOOK" != x ; then
1036        printf "\nexehook:\n\t%s\n" $EXEHOOK >> $MAKEFILE
1037    fi
1038    
1039  echo "  Making list of \"exceptions\" that need \".p\" files"  echo "  Making list of \"exceptions\" that need \".p\" files"
1040  for i in $KPPFILES ; do  for i in $KPPFILES ; do
1041      base=`echo $i | sed -e 's/\/.*\///g' | sed -e 's/\..*$//g'`      base=`echo $i | sed -e 's/\/.*\///g' | sed -e 's/\..*$//g'`

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.10

  ViewVC Help
Powered by ViewVC 1.1.22