/[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.2 by edhill, Fri Aug 22 04:07:00 2003 UTC revision 1.4 by edhill, Tue Aug 26 16:22:15 2003 UTC
# Line 370  for ac_option ; do Line 370  for ac_option ; do
370          -nooptfile | --nooptfile)          -nooptfile | --nooptfile)
371              OPTFILE="NONE" ;;              OPTFILE="NONE" ;;
372          -optfile | --optfile | -of | --of)          -optfile | --optfile | -of | --of)
373              ac_prev=optfile ;;              ac_prev=OPTFILE ;;
374          -optfile=* | --optfile=* | -of=* | --of=*)          -optfile=* | --optfile=* | -of=* | --of=*)
375              OPTFILE=$ac_optarg ;;              OPTFILE=$ac_optarg ;;
376                    
377          -pdepend | --pdepend)          -pdepend | --pdepend)
378              ac_prev=pdepend ;;              ac_prev=PDEPEND ;;
379          -pdepend=* | --pdepend=*)          -pdepend=* | --pdepend=*)
380              PDEPEND=$ac_optarg ;;              PDEPEND=$ac_optarg ;;
381                    
382          -pdefault | --pdefault)          -pdefault | --pdefault)
383              ac_prev=pdefault ;;              ac_prev=PDEFAULT ;;
384          -pdefault=* | --pdefault=*)          -pdefault=* | --pdefault=*)
385              PDEFAULT=$ac_optarg ;;              PDEFAULT=$ac_optarg ;;
386                    
387          -makefile | -ma)          -makefile | -ma)
388              ac_prev=makefile ;;              ac_prev=MAKEFILE ;;
389          --makefile=* | -ma=*)          --makefile=* | -ma=*)
390              MAKEFILE=$ac_optarg ;;              MAKEFILE=$ac_optarg ;;
391                    
392          -platform | --platform | -pl | --pl)          -platform | --platform | -pl | --pl)
393              ac_prev=platform ;;              ac_prev=PLATFORM ;;
394          -platform=* | --platform=* | -pl=* | --pl=*)          -platform=* | --platform=* | -pl=* | --pl=*)
395              PLATFORM=$ac_optarg ;;              PLATFORM=$ac_optarg ;;
396                    
397          -rootdir | --rootdir | -rd | --rd)          -rootdir | --rootdir | -rd | --rd)
398              ac_prev=rootdir ;;              ac_prev=ROOTDIR ;;
399          -rootdir=* | --rootdir=* | -rd=* | --rd=*)          -rootdir=* | --rootdir=* | -rd=* | --rd=*)
400              ROOTDIR=$ac_optarg ;;              ROOTDIR=$ac_optarg ;;
401                    
402          -mods | --mods | -mo | --mo)          -mods | --mods | -mo | --mo)
403              ac_prev=mods ;;              ac_prev=MODS ;;
404          -mods=* | --mods=* | -mo=* | --mo=*)          -mods=* | --mods=* | -mo=* | --mo=*)
405              MODS=$ac_optarg ;;              MODS=$ac_optarg ;;
406                    
407          -disable | --disable)          -disable | --disable)
408              ac_prev=disable ;;              ac_prev=DISABLE ;;
409          -disable=* | --disable=*)          -disable=* | --disable=*)
410              DISABLE=$ac_optarg ;;              DISABLE=$ac_optarg ;;
411                    
412          -enable | --enable)          -enable | --enable)
413              ac_prev=enable ;;              ac_prev=ENABLE ;;
414          -enable=* | --enable=*)          -enable=* | --enable=*)
415              ENABLE=$ac_optarg ;;              ENABLE=$ac_optarg ;;
416                    
417          -noopt | --noopt)          -noopt | --noopt)
418              ac_prev=noopt ;;              ac_prev=NOOPT ;;
419          -noopt=* | --noopt=*)          -noopt=* | --noopt=*)
420              NOOPT=$ac_optarg ;;              NOOPT=$ac_optarg ;;
421                    
# Line 425  for ac_option ; do Line 425  for ac_option ; do
425  #               CPP=$ac_optarg ;;  #               CPP=$ac_optarg ;;
426                            
427          -fortran | --fortran | -fc | --fc)          -fortran | --fortran | -fc | --fc)
428              ac_prev=fc ;;              ac_prev=FC ;;
429          -fc=* | --fc=*)          -fc=* | --fc=*)
430              FC=$ac_optarg ;;              FC=$ac_optarg ;;
431                    
# Line 757  done Line 757  done
757    
758  echo "  Setting package-specific CPP flags in CPP_OPTIONS.h:"  echo "  Setting package-specific CPP flags in CPP_OPTIONS.h:"
759  CPP_OPTIONS=  CPP_OPTIONS=
760  spaths=". $SOURCEDIRS"  spaths="$SOURCEDIRS"
761  for i in $spaths ; do  for i in $spaths ; do
762      try="$i/CPP_OPTIONS.h"      try="$i/CPP_OPTIONS.h"
763      #  echo -n "    trying $try : "      #  echo -n "    trying $try : "
# Line 888  rm -rf .links.tmp Line 888  rm -rf .links.tmp
888  mkdir .links.tmp  mkdir .links.tmp
889  echo "# This section creates symbolic links" > srclinks.tmp  echo "# This section creates symbolic links" > srclinks.tmp
890  echo "" >> srclinks.tmp  echo "" >> srclinks.tmp
891  echo -n 'SRCFILES = ' > srclist.inc  echo -n 'SRCFILES = '    > srclist.inc
892  echo -n 'CSRCFILES = ' > csrclist.inc  echo -n 'CSRCFILES = '   > csrclist.inc
893    echo -n 'F90SRCFILES = ' > f90srclist.inc
894  echo -n 'HEADERFILES = ' > hlist.inc  echo -n 'HEADERFILES = ' > hlist.inc
895  alldirs=". $SOURCEDIRS $INCLUDEDIRS"  alldirs=". $SOURCEDIRS $INCLUDEDIRS"
896  for d in $alldirs ; do  for d in $alldirs ; do
897      deplist=      deplist=
898      sfiles=`( cd $d; echo *.[h,c,F] )`      sfiles=`( cd $d; echo *.[h,c,F] )`
899        sfiles=`( echo $sfiles; cd $d; echo *.F90 )`
900      for sf in $sfiles ; do      for sf in $sfiles ; do
901          if test ! -r ".links.tmp/$sf" ; then          if test ! -r ".links.tmp/$sf" ; then
902              if test -f "$d/$sf" ; then              if test -f "$d/$sf" ; then
# Line 906  for d in $alldirs ; do Line 908  for d in $alldirs ; do
908                          echo    " \\"  >> srclist.inc                          echo    " \\"  >> srclist.inc
909                          echo -n " $sf" >> srclist.inc                          echo -n " $sf" >> srclist.inc
910                          ;;                          ;;
911                        F90)
912                            echo    " \\"  >> f90srclist.inc
913                            echo -n " $sf" >> f90srclist.inc
914                            ;;
915                      c)                      c)
916                          echo    " \\"  >> csrclist.inc                          echo    " \\"  >> csrclist.inc
917                          echo -n " $sf" >> csrclist.inc                          echo -n " $sf" >> csrclist.inc
# Line 928  done Line 934  done
934  rm -rf .links.tmp  rm -rf .links.tmp
935  echo "" >> srclist.inc  echo "" >> srclist.inc
936  echo "" >> csrclist.inc  echo "" >> csrclist.inc
937    echo "" >> f90srclist.inc
938  echo "" >> hlist.inc  echo "" >> hlist.inc
939    
940  if test -e $MAKEFILE ; then  if test -e $MAKEFILE ; then
# Line 985  MAKEDEPEND = ${MAKEDEPEND} Line 992  MAKEDEPEND = ${MAKEDEPEND}
992  KPP = ${KPP}  KPP = ${KPP}
993  # Fortran compiler  # Fortran compiler
994  FC = ${FC}  FC = ${FC}
995    # Fortran compiler
996    F90C = ${F90C}
997  # Link editor  # Link editor
998  LINK = ${LINK}  LINK = ${LINK}
999    
# Line 998  KFLAGS2 = ${KFLAGS2} Line 1007  KFLAGS2 = ${KFLAGS2}
1007  # Optim./debug for FC  # Optim./debug for FC
1008  FFLAGS = ${FFLAGS}  FFLAGS = ${FFLAGS}
1009  FOPTIM = ${FOPTIM}  FOPTIM = ${FOPTIM}
1010    # Optim./debug for FC
1011    F90FLAGS = ${F90FLAGS}
1012    F90OPTIM = ${F90OPTIM}
1013  # Flags for CC  # Flags for CC
1014  CFLAGS = ${CFLAGS}  CFLAGS = ${CFLAGS}
1015  # Files that should not be optimized  # Files that should not be optimized
# Line 1005  NOOPTFILES = ${NOOPTFILES} Line 1017  NOOPTFILES = ${NOOPTFILES}
1017  NOOPTFLAGS = ${NOOPTFLAGS}  NOOPTFLAGS = ${NOOPTFLAGS}
1018  # Flags and libraries needed for linking  # Flags and libraries needed for linking
1019  LIBS = ${LIBS} \$(XLIBS)  LIBS = ${LIBS} \$(XLIBS)
1020    # Name of the Mekfile
1021    MAKEFILE=${MAKEFILE}
1022    
1023  EOF  EOF
1024    
1025  cat srclist.inc  >> $MAKEFILE  cat srclist.inc    >> $MAKEFILE
1026  cat csrclist.inc >> $MAKEFILE  cat csrclist.inc   >> $MAKEFILE
1027  cat hlist.inc >> $MAKEFILE  cat f90srclist.inc >> $MAKEFILE
1028  echo 'F77FILES =  $(SRCFILES:.F=.f)'                    >> $MAKEFILE  cat hlist.inc      >> $MAKEFILE
1029  echo 'OBJFILES =  $(SRCFILES:.F=.o) $(CSRCFILES:.c=.o)' >> $MAKEFILE  echo 'F77FILES =  $(SRCFILES:.F=.f)'                                           >> $MAKEFILE
1030    echo 'F90FILES =  $(F90SRCFILES:.F90=.f90)'                                    >> $MAKEFILE
1031    echo 'OBJFILES =  $(SRCFILES:.F=.o) $(CSRCFILES:.c=.o) $(F90SRCFILES:.F90=.o)' >> $MAKEFILE
1032    
1033  rm -f srclist.inc csrclist.inc hlist.inc flist.tmp clist.tmp  rm -f srclist.inc csrclist.inc hlist.inc flist.tmp clist.tmp f90srclist.inc
1034    
1035  cat >>$MAKEFILE <<EOF  cat >>$MAKEFILE <<EOF
1036    
1037  .SUFFIXES:  .SUFFIXES:
1038  .SUFFIXES: .o .f .p .F .c  .SUFFIXES: .o .f .p .F .c .F90 .f90
1039    
1040  all: \$(EXECUTABLE)  all: \$(EXECUTABLE)
1041  \$(EXECUTABLE): \$(OBJFILES)  \$(EXECUTABLE): \$(OBJFILES)
# Line 1027  all: \$(EXECUTABLE) Line 1043  all: \$(EXECUTABLE)
1043  depend:  depend:
1044          @make links          @make links
1045          \$(MAKEDEPEND) -o .f \$(DEFINES) \$(INCLUDES) \$(SRCFILES)          \$(MAKEDEPEND) -o .f \$(DEFINES) \$(INCLUDES) \$(SRCFILES)
1046            ../../../tools/f90mkdepend >> \$(MAKEFILE)
1047    
1048  links: \$(SRCFILES) \$(CSRCFILES) \$(HEADERFILES)  links: \$(SRCFILES) \$(CSRCFILES) \$(HEADERFILES) \$(F90SRCFILES)
1049    
1050  small_f: \$(F77FILES)  small_f: \$(F77FILES) \$(F90FILES)
1051    
1052  output.txt: \$(EXECUTABLE)  output.txt: \$(EXECUTABLE)
1053          @printf 'running ... '          @printf 'running ... '
1054          @\$(EXECUTABLE) > \$@          @\$(EXECUTABLE) > \$@
1055    
1056  clean:  clean:
1057          -rm -rf *.o *.f *.p ${RMFILES} work.{pc,pcl}          -rm -rf *.o *.f *.p *.f90 *.mod ${RMFILES} work.{pc,pcl}
1058  Clean:  Clean:
1059          @make clean          @make clean
1060          @make cleanlinks          @make cleanlinks
# Line 1059  cleanlinks: Line 1076  cleanlinks:
1076          \$(CPP) \$(DEFINES) \$(INCLUDES) > \$@          \$(CPP) \$(DEFINES) \$(INCLUDES) > \$@
1077  .f.o:  .f.o:
1078          \$(FC) \$(FFLAGS) \$(FOPTIM) -c \$<          \$(FC) \$(FFLAGS) \$(FOPTIM) -c \$<
1079    .F90.f90:
1080            \$(CPP) \$(DEFINES) \$(INCLUDES) > \$@
1081    .f90.o:
1082            \$(F90C) \$(F90FLAGS) \$(F90OPTIM) -c \$<
1083  .c.o:  .c.o:
1084          \$(CC) \$(CFLAGS) -c \$<          \$(CC) \$(CFLAGS) -c \$<
1085    

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.22