/[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.66 by edhill, Mon Feb 23 21:51:32 2004 UTC revision 1.69 by edhill, Wed Feb 25 19:12:10 2004 UTC
# Line 100  find_possible_configs()  { Line 100  find_possible_configs()  {
100          CPP="cpp -traditional -P"          CPP="cpp -traditional -P"
101      fi      fi
102    
103      # makedepend is not always available      #  The "original" makedepend is part of the Imake system that is
104        #  most often distributed with XFree86 or with an XFree86 source
105        #  package.  As a result, many machines (eg. generic Linux) do not
106        #  have a system-default "makedepend" available.  For those
107        #  systems, we have two fall-back options:
108        #
109        #    1) a makedepend implementation shipped with the cyrus-imapd
110        #       package:  ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/
111        #
112        #    2) a known-buggy xmakedpend shell script
113        #
114        #  So the choices are, in order:
115        #
116        #    1) use the user-specified program
117        #    2) use a system-wide default
118        #    3) locally build and use the cyrus implementation
119        #    4) fall back to the buggy local xmakedpend script
120        #
121      if test "x${MAKEDEPEND}" = x ; then      if test "x${MAKEDEPEND}" = x ; then
122        which makedepend >& /dev/null        which makedepend >& /dev/null
123        RETVAL=$?        RETVAL=$?
124        if test "x${RETVAL}" = x1 ; then        if test ! "x${RETVAL}" = x0 ; then
125           echo "    makedepend was not found. Using xmakedpend instead."           echo "    a system-default makedepend was not found."
126           MAKEDEPEND='$(TOOLSDIR)/xmakedepend'  
127             #  Try to build the cyrus impl
128             rm -f ./genmake_cy_md
129             (
130                 cd $ROOTDIR/tools/cyrus-imapd-makedepend  \
131                     &&  ./configure > /dev/null 2>&1  \
132                     &&  make > /dev/null 2>&1  \
133                     &&  ./makedepend ifparser.c > /dev/null 2>&1  \
134                     &&  echo "true"
135             ) > ./genmake_cy_md
136             grep true ./genmake_cy_md > /dev/null 2>&1
137             RETVAL=$?
138             if test "x$RETVAL" = x0 ; then
139                 MAKEDEPEND='$(TOOLSDIR)/cyrus-imapd-makedepend/makedepend'
140             else
141                 MAKEDEPEND='$(TOOLSDIR)/xmakedepend'
142             fi
143             rm -f ./genmake_cy_md
144        fi        fi
145      fi      fi
146    
# Line 145  EOF Line 179  EOF
179          echo "   "$p_FC          echo "   "$p_FC
180          if test "x$FC" = x ; then          if test "x$FC" = x ; then
181              FC=`echo $p_FC | $AWK '{print $1}'`              FC=`echo $p_FC | $AWK '{print $1}'`
182                echo "  Setting FORTRAN compiler to: "$FC
183          fi          fi
184      fi      fi
185    
186      for i in $p_FC ; do      if test "x$OPTFILE" = x ; then
187          p_OF=$ROOTDIR"/tools/build_options/"$PLATFORM"_"$i          OPTFILE=$ROOTDIR"/tools/build_options/"$PLATFORM"_"$FC
188          if test -r $p_OF ; then          if test ! -r $OPTFILE ; then
189              OPTFILE=$p_OF               echo "  I looked for the file "$OPTFILE" but did not find it"
190              echo "  The options file:  $p_OF"          fi
191              echo "    appears to match so we'll use it."      fi
192              break  #    echo "  The options file:  $p_OF"
193          fi  #    echo "    appears to match so we'll use it."
194      done  #   for i in $p_FC ; do
195    #p_OF=$ROOTDIR"/tools/build_options/"$PLATFORM"_"$i
196    #if test -r $p_OF ; then
197    #    OPTFILE=$p_OF
198    #    echo "  The options file:  $p_OF"
199    #    echo "    appears to match so we'll use it."
200    #    break
201    #fi
202    #   done
203      if test "x$OPTFILE" = x ; then      if test "x$OPTFILE" = x ; then
204          cat 1>&2 <<EOF          cat 1>&2 <<EOF
205    
# Line 253  Usage: "$0" [OPTIONS] Line 296  Usage: "$0" [OPTIONS]
296        --makefile=NAME | -mf=NAME        --makefile=NAME | -mf=NAME
297            Call the makefile "NAME".  The default is "Makefile".            Call the makefile "NAME".  The default is "Makefile".
298    
299        -makedepend NAME | -md NAME
300          --makedepend=NAME | -md=NAME
301              Use "NAME" for the MAKEDEPEND program.
302    
303      -rootdir NAME | --rootdir NAME | -rd NAME | --rd NAME      -rootdir NAME | --rootdir NAME | -rd NAME | --rd NAME
304        -rootdir=NAME | --rootdir=NAME | -rd=NAME | --rd=NAME        -rootdir=NAME | --rootdir=NAME | -rd=NAME | --rd=NAME
305            Specify the location of the MITgcm ROOTDIR as "NAME".            Specify the location of the MITgcm ROOTDIR as "NAME".
# Line 294  Usage: "$0" [OPTIONS] Line 341  Usage: "$0" [OPTIONS]
341            *only* works if it is supported by the OPTFILE that            *only* works if it is supported by the OPTFILE that
342            is being used.            is being used.
343    
344        -mpi | --mpi
345              Include MPI header files and link to MPI libraries
346        -mpi=PATH | --mpi=PATH
347              Include MPI header files and link to MPI libraries using MPI_ROOT
348              set to PATH. i.e. Include files from $PATH/include, link to libraries
349              from $PATH/lib and use binaries from $PATH/bin.
350    
351    While it is most often a single word, the "NAME" variables specified    While it is most often a single word, the "NAME" variables specified
352    above can in many cases be a space-delimited string such as:    above can in many cases be a space-delimited string such as:
353    
# Line 476  EOF Line 530  EOF
530  }  }
531    
532    
533    
534    ###############################################################################
535    #   Sequential part of script starts here
536    ###############################################################################
537    
538  #  Set defaults here  #  Set defaults here
539  COMMANDL="$0 $@"  COMMANDL="$0 $@"
540    
# Line 486  KPP= Line 545  KPP=
545  FC=  FC=
546  CPP=  CPP=
547  LINK=  LINK=
 # DEFINES="-DWORDLENGTH=4"  
548  DEFINES=  DEFINES=
549  PACKAGES=  PACKAGES=
550  ENABLE=  ENABLE=
# Line 507  LIBS= Line 565  LIBS=
565  KPPFILES=  KPPFILES=
566  NOOPTFILES=  NOOPTFILES=
567  NOOPTFLAGS=  NOOPTFLAGS=
568    MPI=
569    MPIPATH=
570    
571  # DEFINES checked by test compilation  # DEFINES checked by test compilation
572  HAVE_SYSTEM=  HAVE_SYSTEM=
# Line 654  for ac_option ; do Line 714  for ac_option ; do
714          -make=* | --make=* | -m=* | --m=*)          -make=* | --make=* | -m=* | --m=*)
715              MAKE=$ac_optarg ;;              MAKE=$ac_optarg ;;
716                    
717            -makedepend | --makedepend | -md | --md)
718                ac_prev=MAKEDEPEND ;;
719            -makedepend=* | --makedepend=* | -md=* | --md=*)
720                MAKEDEPEND=$ac_optarg ;;
721            
722          -makefile | --makefile | -ma | --ma)          -makefile | --makefile | -ma | --ma)
723              ac_prev=MAKEFILE ;;              ac_prev=MAKEFILE ;;
724          -makefile=* | --makefile=* | -ma=* | --ma=*)          -makefile=* | --makefile=* | -ma=* | --ma=*)
# Line 705  for ac_option ; do Line 770  for ac_option ; do
770              IEEE=true ;;              IEEE=true ;;
771          -noieee | --noieee)          -noieee | --noieee)
772              IEEE= ;;              IEEE= ;;
773    
774            -mpi | --mpi)
775                MPI=true ;;
776            -mpi=* | --mpi=*)
777                MPIPATH=$ac_optarg
778                MPI=true ;;
779                    
780  #       -jam | --jam)  #       -jam | --jam)
781  #           JAM=1 ;;  #           JAM=1 ;;
# Line 897  EOF Line 968  EOF
968  fi  fi
969  rm -f genmake_test_ln genmake_tlink  rm -f genmake_test_ln genmake_tlink
970    
971    if test ! "x$MPI" = x ; then
972          echo "  Turning on MPI cpp macros"
973          DEFINES="$DEFINES -DALLOW_USE_MPI -DALWAYS_USE_MPI"
974    fi
975    
976  printf "\n===  Checking system libraries  ===\n"  printf "\n===  Checking system libraries  ===\n"
977  echo -n "  Do we have the system() command using $FC...  "  echo -n "  Do we have the system() command using $FC...  "

Legend:
Removed from v.1.66  
changed lines
  Added in v.1.69

  ViewVC Help
Powered by ViewVC 1.1.22