/[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.22.2.2 by adcroft, Thu Jan 25 15:31:36 2001 UTC revision 1.22.2.3 by adcroft, Thu Jan 25 17:56:33 2001 UTC
# Line 84  if ($?MYMODS == 0) then Line 84  if ($?MYMODS == 0) then
84   set SOURCEDIRS  = ( $ROOTDIR/{eesupp,model,diags}/src/ $ROOTDIR/pkg/[a-z]*/ )   set SOURCEDIRS  = ( $ROOTDIR/{eesupp,model,diags}/src/ $ROOTDIR/pkg/[a-z]*/ )
85   set INCLUDEDIRS = ( ./ $ROOTDIR/{eesupp,model,diags}/inc/ $ROOTDIR/pkg/[a-z]*/ )   set INCLUDEDIRS = ( ./ $ROOTDIR/{eesupp,model,diags}/inc/ $ROOTDIR/pkg/[a-z]*/ )
86  else  else
87   set SOURCEDIRS  = ( $ROOTDIR/{eesupp,model,diags}/src/ $ROOTDIR/pkg/[a-z]*/ $MYMODS/ )   set SOURCEDIRS  = ( $MYMODS/ $ROOTDIR/{eesupp,model,diags}/src/ $ROOTDIR/pkg/[a-z]*/ )
88   set INCLUDEDIRS = ( ./ $MYMODS/ $ROOTDIR/{eesupp,model,diags}/inc/ $ROOTDIR/pkg/[a-z]*/ )   set INCLUDEDIRS = ( ./ $MYMODS/ $ROOTDIR/{eesupp,model,diags}/inc/ $ROOTDIR/pkg/[a-z]*/ )
89  endif  endif
90  if ($?BUILDDIR == 0) set BUILDDIR = ( ./ )  if ($?BUILDDIR == 0) set BUILDDIR = ( ./ )
# Line 318  endsw Line 318  endsw
318  ##                                                                           ##  ##                                                                           ##
319  ###############################################################################  ###############################################################################
320    
 # Create list of files  
 set flist = `ls -1 ${SOURCEDIRS} | grep '.*\.[F]$'`  
 if ( $#flist ) then  
  echo -n 'SRCFILES = ' > srclist.inc  
  foreach ff ( ${flist} )  
   set fname = ( ${ff:t}       )  
   echo    ' \'                       >> srclist.inc  
   echo -n "           " ${fname:r}.F >> srclist.inc  
  end  
 else  
  echo No source files found...\!  
  exit  
 endif  
 echo " " >> srclist.inc  
   
 set flist = `ls -1 ${SOURCEDIRS} | grep '.*\.[c]$'`  
 if ( $#flist ) then  
  echo -n 'CSRCFILES = ' > csrclist.inc  
  foreach ff ( ${flist} )  
   set fname = ( ${ff:t}       )  
   echo    ' \'                   >> csrclist.inc  
   echo -n "           " ${fname} >> csrclist.inc  
 else  
  echo -n 'CSRCFILES =' > csrclist.inc  
 endif  
 echo " " >> csrclist.inc  
   
321  # Convert lists of directories into command-line options  # Convert lists of directories into command-line options
322  foreach inc ($INCLUDEDIRS)  foreach inc ($INCLUDEDIRS)
323   set INCLUDES = ($INCLUDES -I$inc)   set INCLUDES = ($INCLUDES -I$inc)
324  end  end
325  set SRCSTARS = ( )  
326    # Search for source code
327    rm -rf .links.tmp;mkdir .links.tmp
328    echo "# This section creates symbolic links" > srclinks.tmp
329    echo "" >> srclinks.tmp
330    echo -n 'SRCFILES = ' > srclist.inc
331    echo -n 'CSRCFILES = ' > csrclist.inc
332    #echo -n 'HEADERFILES = ' > hlist.inc
333  foreach dr ($SOURCEDIRS)  foreach dr ($SOURCEDIRS)
334   set SRCSTARS = ("${SRCSTARS}" $dr\*.\[Fc\] )   set deplist=( )
335     foreach srcfile (`cd $dr; ls *.[hcF]`)
336      if (! -r .links.tmp/$srcfile) then
337       if (-f $dr/$srcfile) then
338        switch ($srcfile:e)
339        case F:
340         touch .links.tmp/$srcfile
341         set deplist=($deplist $srcfile)
342         echo    ' \'                   >> srclist.inc
343         echo -n "           " $srcfile >> srclist.inc
344         breaksw
345        case c:
346         touch .links.tmp/$srcfile
347         set deplist=($deplist $srcfile)
348         echo    ' \'                   >> csrclist.inc
349         echo -n "           " $srcfile >> csrclist.inc
350         breaksw
351        case h:
352    #     touch .links.tmp/$srcfile
353    #     set deplist=($deplist $srcfile)
354    #     echo    ' \'                   >> hlist.inc
355    #     echo -n "           " $srcfile >> hlist.inc
356         breaksw
357        endsw
358       endif
359      endif
360     end
361     if ($#deplist != 0) then
362      echo "# These files are linked from $dr" >> srclinks.tmp
363      echo $deplist':' >> srclinks.tmp
364      echo '\t$(LN) '$dr'$@ $@' >> srclinks.tmp
365     endif
366  end  end
367    rm -rf .links.tmp
368    echo "" >> srclist.inc
369    echo "" >> csrclist.inc
370    #echo "" >> hlist.inc
371    
372  set THISHOSTNAME = ( `hostname` )  set THISHOSTNAME = ( `hostname` )
373  set THISCWD = ( `pwd` )  set THISCWD = ( `pwd` )
# Line 467  cat csrclist.inc >> ${mfile} Line 482  cat csrclist.inc >> ${mfile}
482  echo 'F77FILES =  $(SRCFILES:.F=.f)'                    >> ${mfile}  echo 'F77FILES =  $(SRCFILES:.F=.f)'                    >> ${mfile}
483  echo 'OBJFILES =  $(SRCFILES:.F=.o) $(CSRCFILES:.c=.o)' >> ${mfile}  echo 'OBJFILES =  $(SRCFILES:.F=.o) $(CSRCFILES:.c=.o)' >> ${mfile}
484    
485  rm -f srclist.inc csrclist.inc  rm -f srclist.inc csrclist.inc flist.tmp clist.tmp
486    
487  cat >> ${mfile} <<EOF  cat >> ${mfile} <<EOF
488    
# Line 477  cat >> ${mfile} <<EOF Line 492  cat >> ${mfile} <<EOF
492  all: \$(EXECUTABLE)  all: \$(EXECUTABLE)
493  \$(EXECUTABLE): \$(OBJFILES)  \$(EXECUTABLE): \$(OBJFILES)
494          \$(LINK) -o \$@ \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) \$(LIBS)          \$(LINK) -o \$@ \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) \$(LIBS)
 links: \$(SRCFILES)  
 #       @-\$(LN) $SRCSTARS .  
495  depend:  depend:
496          @make links          @make links
497          makedepend -o .f \$(INCLUDES) \$(SRCFILES)          makedepend -o .f \$(INCLUDES) \$(SRCFILES)
498    links: \$(SRCFILES)
499    
500  small_f: \$(F77FILES)  small_f: \$(F77FILES)
501    
# Line 522  foreach sf ($NOOPTFILES) Line 536  foreach sf ($NOOPTFILES)
536  end  end
537  echo "" >> ${mfile}  echo "" >> ${mfile}
538    
539  foreach dr ($SOURCEDIRS)  # Add rules for links
540  set srcfiles=(`cd $dr; ls *.[hcF]`:)  cat srclinks.tmp >> ${mfile}
541  echo "# These are the rules for creating the links from $dr" >> ${mfile}  rm -f srclinks.tmp
 echo $srcfiles >> ${mfile}  
 echo '\t$(LN) '$dr'$@ $@' >> ${mfile}  
 end  
542    
543  echo "" >> ${mfile}  echo "" >> ${mfile}
544  echo "# DO NOT DELETE" >> ${mfile}  echo "# DO NOT DELETE" >> ${mfile}

Legend:
Removed from v.1.22.2.2  
changed lines
  Added in v.1.22.2.3

  ViewVC Help
Powered by ViewVC 1.1.22