/[MITgcm]/MITgcm/tools/genmake
ViewVC logotype

Diff of /MITgcm/tools/genmake

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

revision 1.12 by adcroft, Tue Mar 14 16:21:41 2000 UTC revision 1.19 by heimbach, Tue Sep 12 19:20:35 2000 UTC
# Line 60  echo Operating system: $mach Line 60  echo Operating system: $mach
60  #   copy everything in ../eesupp/src, ../model/src,  #   copy everything in ../eesupp/src, ../model/src,
61  #   ../eesupp/inc and ../model/inc into a directory and then  #   ../eesupp/inc and ../model/inc into a directory and then
62  #   edit the paths below to ./  #   edit the paths below to ./
63  set SOURCEDIRS  = ( ../eesupp/src/ ../model/src/ ../diags/src/)  set SOURCEDIRS  = ( ../eesupp/src/ ../model/src/ ../diags/src/ ../pkg/*/ )
64  set INCLUDEDIRS = ( ../eesupp/inc/ ../model/inc/ ../diags/inc/)  set INCLUDEDIRS = ( ./ ../eesupp/inc/ ../model/inc/ ../diags/inc/ ../pkg/*/ )
65  set BUILDDIR    = ( ../bin/ )  set BUILDDIR    = ( ../bin/ )
66  set EXEDIR      = ( ../exe/ )  set EXEDIR      = ( ../exe/ )
67  set EXECUTABLE  = ( mitgcmuv )  set EXECUTABLE  = ( mitgcmuv )
# Line 182  switch ($platform$USEMPI) Line 182  switch ($platform$USEMPI)
182      breaksw      breaksw
183    case Linux+mpi:    case Linux+mpi:
184      set LIBS       = ( '-L/usr/local/lib/LINUX/ch_p4/ -lfmpich -lmpich' )      set LIBS       = ( '-L/usr/local/lib/LINUX/ch_p4/ -lfmpich -lmpich' )
185        set INCLUDES   = ( '-I/usr/local/include' )
186    case Linux:    case Linux:
187      set LN         = ( '/bin/ln -fs' )      set LN         = ( '/bin/ln -fs' )
188      set CPP        = ( '/usr/lib/gcc-lib/i386-redhat-linux/2.7.2.3/cpp  -traditional -P' )      set CPP        = ( '/lib/cpp  -traditional -P' )
189      set DEFINES    = ( ${DEFINES} '-D_BYTESWAPIO -DWORDLENGTH=4' )      set DEFINES    = ( ${DEFINES} '-D_BYTESWAPIO -DWORDLENGTH=4' )
     set INCLUDES   = ( '-I/usr/local/include' )  
190      set FC         = ( 'g77' )      set FC         = ( 'g77' )
191      set FFLAGS     = ( ' ' )      set FFLAGS     = ( '-Wimplicit -Wunused -Wuninitialized' )
192      set FOPTIM     = ( '-O3 -funroll-loops ' )      set FOPTIM     = ( '-O3 -malign-double -funroll-loops ' )
193      set LINK       = ( 'g77' )      set LINK       = ( 'g77' )
194      breaksw      breaksw
195      case Linux+pgi+mpi:
196        if ($?include_jam_libs) then
197         set INCLUDES   = ( '-I/usr/local//mpich-cnh-install/include' )
198         set LIBS       = ( '-L/usr/local/mpich-cnh-install/lib/LINUX/ch_p4/ -lfmpich -lmpich' )
199        else
200         set INCLUDES   = ( '-I/usr/local/include' )
201         set LIBS       = ( '-L/usr/local/lib/LINUX/ch_p4/ -lfmpich -lmpich' )
202        endif
203    case Linux+pgi:    case Linux+pgi:
204      set LN         = ( '/bin/ln -fs' )      set LN         = ( '/bin/ln -fs' )
205      set CPP        = ( '/usr/lib/gcc-lib/i386-redhat-linux/2.7.2.3/cpp -P' )      set CPP        = ( '/lib/cpp -traditional -P' )
206      set DEFINES    = ( ${DEFINES} '-DWORDLENGTH=4' )      set DEFINES    = ( ${DEFINES} '-DWORDLENGTH=4' )
     set INCLUDES   = ( '-I/usr/local/include' )  
207      set FC         = ( 'pgf77' )      set FC         = ( 'pgf77' )
208      set FFLAGS     = ( '-byteswapio' )      set FFLAGS     = ( '-byteswapio' )
209      set FOPTIM     = ( '-tp p6 -v -O2 -Munroll -Mvect=cachesize:512000,transform -Kieee' )      set FOPTIM     = ( '-tp p6 -v -O2 -Munroll -Mvect=cachesize:512000,transform -Kieee' )
210      set LINK       = ( 'pgf77' )      set LINK       = ( 'pgf77' )
211      set LIBS       = ( '-L/usr/local/lib/LINUX/ch_p4/ -lfmpich -lmpich -Kieee' )      breaksw
212      case T3E:
213      case sn6312:
214        set CPP        = ( '/opt/ctl/bin/cpp -P')
215        set DEFINES    = ( ${DEFINES} '-DTARGET_T3E -DWORDLENGTH=4' )
216        set FC         = ( 'f90' )
217        set LINK       = ( 'f90' )
218        set FFLAGS     = ( '-O 2,fusion' )
219        breaksw
220      case T90:
221      case sn7113:
222        set FC         = ( 'f90' )
223        set LINK       = ( 'f90' )
224        set LN         = ( '/bin/ln -fs' )
225        set CPP        = ( '/opt/ctl/bin/cpp -N -P' )
226        set DEFINES    = ( ${DEFINES} '-DTARGET_CRAY_VECTOR -DWORDLENGTH=4' )
227        set FFLAGS     = ( '-m3 -Rabc -N 132')
228        set FOPTIM     = ( '-O0' )
229        set NOOPTFLAGS = ( '-O0' )
230        set NOOPTFILES = ( 'barrier.F different_multiple.F load_external_fields.F')
231        breaksw
232      case SV1:
233      case sn3002:
234        set FC         = ( 'f90' )
235        set LINK       = ( 'f90' )
236        set LN         = ( '/bin/ln -fs' )
237        set CPP        = ( '/opt/ctl/bin/cpp -N -P' )
238        set DEFINES    = ( ${DEFINES} '-DTARGET_CRAY_VECTOR -DWORDLENGTH=4' )
239        set FFLAGS     = ( '-m3 -Rabc -ei -eI -s cf77types -N 132')
240        set FOPTIM     = ( '-O0' )
241        set NOOPTFLAGS = ( '-O0' )
242        set NOOPTFILES = ( 'barrier.F different_multiple.F load_external_fields.F')
243      breaksw      breaksw
244    default:    default:
245      echo "Error: platform not recognized: uname -p = " $platform$USEMPI      echo "Error: platform not recognized: uname -p = " $platform$USEMPI
# Line 219  endsw Line 257  endsw
257  # Create list of files  # Create list of files
258  set flist = `ls -1 ${SOURCEDIRS} | grep '.*\.[F]$'`  set flist = `ls -1 ${SOURCEDIRS} | grep '.*\.[F]$'`
259  if ( $#flist ) then  if ( $#flist ) then
260   echo -n "SRCFILES = " > srclist.inc   echo -n 'SRCFILES = ' > srclist.inc
  echo -n "F77FILES = " > f77list.inc  
  echo -n "OBJFILES = " > objlist.inc  
261   foreach ff ( ${flist} )   foreach ff ( ${flist} )
262    set fname = ( ${ff:t}       )    set fname = ( ${ff:t}       )
263    echo ' \' >> srclist.inc    echo    ' \'                       >> srclist.inc
264    echo -n "           " ${fname:r}.F >> srclist.inc    echo -n "           " ${fname:r}.F >> srclist.inc
   echo ' \' >> f77list.inc  
   echo -n "           " ${fname:r}.f >> f77list.inc  
   echo ' \' >> objlist.inc  
   echo -n "           " ${fname:r}.o >> objlist.inc  
265   end   end
266  else  else
267   echo No source files found...\!   echo No source files found...\!
268   exit   exit
269  endif  endif
270    echo " " >> srclist.inc
271    
272  set flist = `ls -1 ${SOURCEDIRS} | grep '.*\.[c]$'`  set flist = `ls -1 ${SOURCEDIRS} | grep '.*\.[c]$'`
273  if ( $#flist ) then  if ( $#flist ) then
274     echo -n 'CSRCFILES = ' > csrclist.inc
275   foreach ff ( ${flist} )   foreach ff ( ${flist} )
276    set fname = ( ${ff:t}       )    set fname = ( ${ff:t}       )
277    echo ' \' >> objlist.inc    echo    ' \'                   >> csrclist.inc
278    echo -n "           " ${fname:r}.o >> objlist.inc    echo -n "           " ${fname} >> csrclist.inc
279    else
280     echo -n 'CSRCFILES =' > csrclist.inc
281  endif  endif
282  echo " " >> srclist.inc  echo " " >> csrclist.inc
 echo " " >> f77list.inc  
 echo " " >> objlist.inc  
283    
284  # Convert lists of directories into command-line options  # Convert lists of directories into command-line options
285  foreach inc ($INCLUDEDIRS)  foreach inc ($INCLUDEDIRS)
# Line 303  if ($?include_jam_libs) then Line 338  if ($?include_jam_libs) then
338  cat >> ${mfile} <<EOF  cat >> ${mfile} <<EOF
339  # extra stuff for Hyades ............................................  # extra stuff for Hyades ............................................
340  HYADES_DIR = /u/u0/cnh/jam-lib/software  HYADES_DIR = /u/u0/cnh/jam-lib/software
341    HYADES_DIR = /u/u0/cnh/jam-lib-twoproc
342  WORK_DIR   = \$(HYADES_DIR)  WORK_DIR   = \$(HYADES_DIR)
343  DEPOSIT_DIR = linux_bin  DEPOSIT_DIR = linux_bin
344    
# Line 356  FOPTIM = ${FOPTIM} Line 392  FOPTIM = ${FOPTIM}
392  NOOPTFILES = ${NOOPTFILES}  NOOPTFILES = ${NOOPTFILES}
393  NOOPTFLAGS = ${NOOPTFLAGS}  NOOPTFLAGS = ${NOOPTFLAGS}
394  # Flags and libraries needed for linking  # Flags and libraries needed for linking
395  LIBS = ${LIBS}  LIBS = ${LIBS} \$(XLIBS)
396    
397  EOF  EOF
398    
399  cat srclist.inc >> ${mfile}  cat srclist.inc  >> ${mfile}
400  cat f77list.inc >> ${mfile}  cat csrclist.inc >> ${mfile}
401  cat objlist.inc >> ${mfile}  echo 'F77FILES =  $(SRCFILES:.F=.f)'                    >> ${mfile}
402  rm -f srclist.inc f77list.inc objlist.inc  echo 'OBJFILES =  $(SRCFILES:.F=.o) $(CSRCFILES:.c=.o)' >> ${mfile}
403    
404    rm -f srclist.inc
405    
406  cat >> ${mfile} <<EOF  cat >> ${mfile} <<EOF
407    
# Line 378  links: Line 416  links:
416  depend:  depend:
417          @make links          @make links
418          makedepend -o .f \$(INCLUDES) \$(SRCFILES)          makedepend -o .f \$(INCLUDES) \$(SRCFILES)
419    
420    small_f: \$(F77FILES)
421    
422  clean:  clean:
423          -rm -rf *.o *.f *.p ${RMFILES}          -rm -rf *.o *.f *.p ${RMFILES}
424  Clean:  Clean:

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.19

  ViewVC Help
Powered by ViewVC 1.1.22