/[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.5 by edhill, Wed Aug 27 22:12:31 2003 UTC revision 1.9 by adcroft, Fri Sep 26 18:16:38 2003 UTC
# Line 109  usage()  { Line 109  usage()  {
109      echo "      -pdepend=NAME | --pdepend=NAME"      echo "      -pdepend=NAME | --pdepend=NAME"
110      echo "    -pdefault NAME | --pdefault NAME"      echo "    -pdefault NAME | --pdefault NAME"
111      echo "      -pdefault=NAME | --pdefault=NAME"      echo "      -pdefault=NAME | --pdefault=NAME"
112      echo "    -makefile NAME | -ma NAME"      echo "    -make NAME | -m NAME"
113      echo "      --makefile=NAME | -ma=NAME"      echo "      --make=NAME | -m=NAME"
114        echo "    -makefile NAME | -mf NAME"
115        echo "      --makefile=NAME | -mf=NAME"
116      echo "    -platform NAME | --platform NAME | -pl NAME | --pl NAME"      echo "    -platform NAME | --platform NAME | -pl NAME | --pl NAME"
117      echo "      -platform=NAME | --platform=NAME | -pl=NAME | --pl=NAME"      echo "      -platform=NAME | --platform=NAME | -pl=NAME | --pl=NAME"
118      echo "    -rootdir NAME | --rootdir NAME | -rd NAME | --rd NAME"      echo "    -rootdir NAME | --rootdir NAME | -rd NAME | --rd NAME"
# Line 201  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 210  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 273  for ac_option ; do Line 279  for ac_option ; do
279          -pdefault=* | --pdefault=*)          -pdefault=* | --pdefault=*)
280              PDEFAULT=$ac_optarg ;;              PDEFAULT=$ac_optarg ;;
281                    
282          -makefile | -ma)          -make | --make | -m | --m)
283                ac_prev=MAKE ;;
284            -make=* | --make=* | -m=* | --m=*)
285                MAKE=$ac_optarg ;;
286            
287            -makefile | --makefile | -ma | --ma)
288              ac_prev=MAKEFILE ;;              ac_prev=MAKEFILE ;;
289          --makefile=* | -ma=*)          -makefile=* | --makefile=* | -ma=* | --ma=*)
290              MAKEFILE=$ac_optarg ;;              MAKEFILE=$ac_optarg ;;
291                    
292          -platform | --platform | -pl | --pl)          -platform | --platform | -pl | --pl)
# Line 378  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 787  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 938  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 986  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.5  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.22