/[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.48 by heimbach, Tue Nov 25 16:03:38 2003 UTC revision 1.61 by edhill, Thu Jan 15 04:27:39 2004 UTC
# Line 1  Line 1 
1  #!/bin/sh  #! /usr/bin/env bash
2  #  #
3  # $Header$  # $Header$
4  #  #
# Line 13  Line 13 
13  test_for_package_in_cpp_options() {  test_for_package_in_cpp_options() {
14      cpp_options=$1      cpp_options=$1
15      pkg=$2      pkg=$2
16      grep -i "#define.*ALLOW_$pkg" $cpp_options > /dev/null 2>&1      test_for_string_in_file $cpp_options "^[ ]*#define.*ALLOW_$pkg" || exit 99
17      RETVAL=$?      test_for_string_in_file $cpp_options "^[ ]*#undef.*ALLOW_$pkg" || exit 99
18      if test "x${RETVAL}" = x0 ; then      test_for_string_in_file $cpp_options "^[ ]*#define.*DISABLE_$pkg" || exit 99
19          echo "Error: In $cpp_options there is an illegal line: #define ALLOW_$pkg"      test_for_string_in_file $cpp_options "^[ ]*#undef.*DISABLE_$pkg" || exit 99
20          exit 99  }
21      fi  
22      grep -i "#undef.*ALLOW_$pkg" $cpp_options > /dev/null 2>&1  # Search for particular CPP #cmds associated with MPI
23      RETVAL=$?  # usage: test_for_mpi_in_cpp_eeoptions CPP_file
24      if test "x${RETVAL}" = x0 ; then  test_for_mpi_in_cpp_eeoptions() {
25          echo "Error: In $cpp_options there is an illegal line: #undef ALLOW_$pkg"      cpp_options=$1
26          exit 99      test_for_string_in_file $cpp_options "^[ ]*#define.*ALLOW_USE_MPI" || exit 99
27      fi      test_for_string_in_file $cpp_options "^[ ]*#undef.*ALLOW_USE_MPI" || exit 99
28      grep -i "#define.*DISABLE_$pkg" $cpp_options > /dev/null 2>&1      test_for_string_in_file $cpp_options "^[ ]*#define.*ALWAYS_USE_MPI" || exit 99
29        test_for_string_in_file $cpp_options "^[ ]*#undef.*ALWAYS_USE_MPI" || exit 99
30    }
31    
32    # Search for particular string in a file. Return 1 if detected, 0 if not
33    # usage: test_for_string_in_file file string
34    test_for_string_in_file() {
35        file=$1
36        strng=$2
37        grep -i "$strng" $file > /dev/null 2>&1
38      RETVAL=$?      RETVAL=$?
39      if test "x${RETVAL}" = x0 ; then      if test "x${RETVAL}" = x0 ; then
40          echo "Error: In $cpp_options there is an illegal line: #define DISABLE_$pkg"          echo -n "Error: In $file there is an illegal line: "
41          exit 99          grep -i "$strng" $file
42            return 1
43      fi      fi
44      grep -i "#undef.*DISABLE_$pkg" $cpp_options > /dev/null 2>&1      return 0
     RETVAL=$?  
     if test "x${RETVAL}" = x0 ; then  
         echo "Error: In $cpp_options there is an illegal line: #undef DISABLE_$pkg"  
         exit 99  
    fi  
45  }  }
46    
47  # Read the $ROOTDIR/pkg/pkg_groups file and expand any references to  # Read the $ROOTDIR/pkg/pkg_groups file and expand any references to
# Line 73  find_possible_configs()  { Line 78  find_possible_configs()  {
78      tmp1=`uname`"_"`uname -m`      tmp1=`uname`"_"`uname -m`
79      tmp2=`echo $tmp1 | sed -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`      tmp2=`echo $tmp1 | sed -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
80      tmp3=`echo $tmp2 | sed -e 's/power macintosh/ppc/'`      tmp3=`echo $tmp2 | sed -e 's/power macintosh/ppc/'`
81      PLATFORM=`echo $tmp3 | sed -e 's/i[3-6]86/ia32/' | sed -e 's/athlon/ia32/'`      tmp1=`echo $tmp3 | sed -e 's|x86_64|amd64|'`
82        tmp2=`echo $tmp1 | sed -e 's/i[3-6]86/ia32/' | sed -e 's/athlon/ia32/'`
83        PLATFORM=$tmp2
84      OFLIST=`(cd $ROOTDIR/tools/build_options; ls | grep "^$PLATFORM")`      OFLIST=`(cd $ROOTDIR/tools/build_options; ls | grep "^$PLATFORM")`
85      echo "  The platform appears to be:  $PLATFORM"      echo "  The platform appears to be:  $PLATFORM"
86            
# Line 430  EOF Line 437  EOF
437  }  }
438    
439    
440    check_netcdf_libs()  {
441        cat <<EOF > genmake_tnc.F
442          program fgennc
443    #include "netcdf.inc"
444          integer iret, ncid, xid
445          iret = nf_create('genmake_tnc.nc', NF_CLOBBER, ncid)
446          IF (iret .NE. NF_NOERR) write(*,*) NF_STRERROR(iret)
447          iret = nf_def_dim(ncid, 'X', 11, xid)
448          IF (iret .NE. NF_NOERR) write(*,*) NF_STRERROR(iret)
449          iret = nf_close(ncid)
450          IF (iret .NE. NF_NOERR) write(*,*) NF_STRERROR(iret)
451          end
452    EOF
453        $CPP genmake_tnc.F > genmake_tnc.f  \
454            &&  $FC $FFLAGS $FOPTIM -o genmake_tnc genmake_tnc.f $LIBS >> genmake_tnc.log 2>&1
455        RET_COMPILE=$?
456        test -x ./genmake_tnc  &&  ./genmake_tnc >> genmake_tnc.log 2>&1
457        RETVAL=$?
458        if test "x$RET_COMPILE" = x0 -a "x$RETVAL" = x0 ; then
459            HAVE_NETCDF=t
460        else
461            cat genmake_tnc.log >> genmake_warnings
462        fi
463        rm -f genmake_tnc*
464    }
465    
466    
467  #  Set defaults here  #  Set defaults here
468  COMMANDL="$0 $@"  COMMANDL="$0 $@"
469    
# Line 438  LN= Line 472  LN=
472  S64=  S64=
473  KPP=  KPP=
474  FC=  FC=
475    CPP=
476  LINK=  LINK=
477  # DEFINES="-DWORDLENGTH=4"  # DEFINES="-DWORDLENGTH=4"
478  DEFINES=  DEFINES=
# Line 466  HAVE_SYSTEM= Line 501  HAVE_SYSTEM=
501  HAVE_FDATE=  HAVE_FDATE=
502  FC_NAMEMANGLE=  FC_NAMEMANGLE=
503  HAVE_CLOC=  HAVE_CLOC=
504    HAVE_NETCDF=
505    
506  MODS=  MODS=
507  TOOLSDIR=  TOOLSDIR=
508  SOURCEDIRS=  SOURCEDIRS=
509  INCLUDEDIRS=  INCLUDEDIRS=
510  STANDARDDIRS=  STANDARDDIRS="USE_THE_DEFAULT"
511    
512  PWD=`pwd`  PWD=`pwd`
513  MAKE=make  MAKE=make
# Line 505  TAMC_EXTRA= Line 541  TAMC_EXTRA=
541    
542  #  The following state can be set directly by command-line switches  #  The following state can be set directly by command-line switches
543  gm_s1="OPTFILE PDEPEND PDEFAULT MAKEFILE PLATFORM ROOTDIR MODS DISABLE ENABLE"  gm_s1="OPTFILE PDEPEND PDEFAULT MAKEFILE PLATFORM ROOTDIR MODS DISABLE ENABLE"
544  gm_s2="FC IEEE MPI JAM DUMPSTATE STANDARDDIRS"  gm_s2="FC CPP IEEE MPI JAM DUMPSTATE STANDARDDIRS"
545    
546  #  The following state is not directly set by command-line switches  #  The following state is not directly set by command-line switches
547  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 "
# Line 586  for ac_option ; do Line 622  for ac_option ; do
622          -optfile=* | --optfile=* | -of=* | --of=*)          -optfile=* | --optfile=* | -of=* | --of=*)
623              OPTFILE=$ac_optarg ;;              OPTFILE=$ac_optarg ;;
624                    
625          -adoptfile | --adoptfile | -ad | --ad)          -adoptfile | --adoptfile | -adof | --adof)
626              ac_prev=AD_OPTFILE ;;              ac_prev=AD_OPTFILE ;;
627          -adoptfile=* | --adoptfile=* | -adof=* | --adof=*)          -adoptfile=* | --adoptfile=* | -adof=* | --adof=*)
628              AD_OPTFILE=$ac_optarg ;;              AD_OPTFILE=$ac_optarg ;;
# Line 888  if test "x$HAVE_CLOC" != x ; then Line 924  if test "x$HAVE_CLOC" != x ; then
924  else  else
925      echo "no"      echo "no"
926  fi  fi
 echo "$FC_NAMEMANGLE" > FC_NAMEMANGLE.h.template  
 cmp FC_NAMEMANGLE.h FC_NAMEMANGLE.h.template > /dev/null 2>&1  
 RETVAL=$?  
 if test "x$RETVAL" != x0 ; then  
     mv -f FC_NAMEMANGLE.h.template FC_NAMEMANGLE.h  
 fi  
927  rm -f genmake_t*  rm -f genmake_t*
928    
929    echo -n "  Can we create NetCDF-enabled binaries...  "
930    check_netcdf_libs
931    if test "x$HAVE_NETCDF" != x ; then
932        echo "yes"
933    else
934        echo "no"
935    fi
936    
937    
938  printf "\n===  Setting defaults  ===\n"  printf "\n===  Setting defaults  ===\n"
939  echo -n "  Adding MODS directories:  "  echo -n "  Adding MODS directories:  "
# Line 961  if test -r $ROOTDIR"/eesupp/src/Makefile Line 999  if test -r $ROOTDIR"/eesupp/src/Makefile
999      fi      fi
1000  fi  fi
1001    
1002    #same for exch2
1003    if test -r $ROOTDIR"/pkg/exch2/Makefile" ; then
1004        echo "  Making source files in exch2 from  templates"
1005        ( cd $ROOTDIR"/pkg/exch2/" && $MAKE ) > make_exch2.errors 2>&1
1006        RETVAL=$?
1007        if test "x${RETVAL}" = x0 ; then
1008            rm -f make_exch2.errors
1009        else
1010            echo "Error: problem encountered while building source files in exch2:"
1011            cat make_exch2.errors
1012            exit 1
1013        fi
1014    fi
1015    
1016  printf "\n===  Determining package settings  ===\n"  printf "\n===  Determining package settings  ===\n"
1017  if  test "x${PDEPEND}" = x ; then  if  test "x${PDEPEND}" = x ; then
1018      tmp=$ROOTDIR"/pkg/pkg_depend"      tmp=$ROOTDIR"/pkg/pkg_depend"
# Line 1144  for i in $PACKAGES ; do Line 1196  for i in $PACKAGES ; do
1196      fi      fi
1197  done  done
1198    
1199    #  Check for ability to build and use NetCDF
1200    echo $PACKAGES | grep ' mnc ' > /dev/null 2>&1
1201    RETVAL=$?
1202    if test "x$RETVAL" = x0 -a "x$HAVE_NETCDF" != xt ; then
1203        cat <<EOF
1204    
1205    WARNING: the "mnc" package has been enabled but tests failed to
1206      compile and/or execute NetCDF applications.  Please check that:
1207    
1208      1) NetCDF is installed for your compiler and
1209      2) the LIBS variable (within the 'optfile") specifies the correct
1210           NetCDF library to link against.
1211      
1212    EOF
1213    fi
1214    
1215  # Create a list of #define and #undef to enable/disable packages  # Create a list of #define and #undef to enable/disable packages
1216  PACKAGES_DOT_H=PACKAGES_CONFIG.h  PACKAGES_DOT_H=PACKAGES_CONFIG.h
# Line 1178  for i in $PACKAGES ; do Line 1245  for i in $PACKAGES ; do
1245  #EH3  WARNING :  This is an UGLY HACK that needs to be removed!!!  #EH3  WARNING :  This is an UGLY HACK that needs to be removed!!!
1246      case $i in      case $i in
1247          aim_v23)          aim_v23)
             DEFINES="$DEFINES -DALLOW_AIM"  
1248              ENABLED_PACKAGES="$ENABLED_PACKAGES -DALLOW_AIM"              ENABLED_PACKAGES="$ENABLED_PACKAGES -DALLOW_AIM"
1249              echo "Warning: ALLOW_AIM is set to enable aim_v23. This is REALLY ugly Jean-Michel :-)"              echo "Warning: ALLOW_AIM is set to enable aim_v23."
1250              ;;              ;;
1251      esac      esac
1252  #EH3  WARNING :  This is an UGLY HACK that needs to be removed!!!  #EH3  WARNING :  This is an UGLY HACK that needs to be removed!!!
# Line 1189  done Line 1255  done
1255    
1256  echo "  Adding STANDARDDIRS"  echo "  Adding STANDARDDIRS"
1257  BUILDDIR=${BUILDDIR:-.}  BUILDDIR=${BUILDDIR:-.}
1258  if test "x$STANDARDDIRS" = x ; then  if test "x$STANDARDDIRS" = xUSE_THE_DEFAULT ; then
1259      STANDARDDIRS="eesupp model"      STANDARDDIRS="eesupp model"
1260  fi  fi
1261  for d in $STANDARDDIRS ; do  if test "x$STANDARDDIRS" != x ; then
1262      adr="$ROOTDIR/$d/src"      for d in $STANDARDDIRS ; do
1263      if test ! -d $adr ; then          adr="$ROOTDIR/$d/src"
1264          echo "Error:  directory $adr not found -- please check that ROOTDIR=\"$ROOTDIR\""          if test ! -d $adr ; then
1265          echo "  is correct and that you correctly specified the STANDARDDIRS option"              echo "Error:  directory $adr not found -- please check that ROOTDIR=\"$ROOTDIR\""
1266          exit 1              echo "  is correct and that you correctly specified the STANDARDDIRS option"
1267      else              exit 1
1268          SOURCEDIRS="$SOURCEDIRS $adr"          else
1269      fi              SOURCEDIRS="$SOURCEDIRS $adr"
1270      adr="$ROOTDIR/$d/inc"          fi
1271      if test ! -d $adr ; then          adr="$ROOTDIR/$d/inc"
1272          echo "Error:  directory $adr not found -- please check that ROOTDIR=\"$ROOTDIR\""          if test ! -d $adr ; then
1273          echo "  is correct and that you correctly specified the STANDARDDIRS option"              echo "Error:  directory $adr not found -- please check that ROOTDIR=\"$ROOTDIR\""
1274          exit 1              echo "  is correct and that you correctly specified the STANDARDDIRS option"
1275      else              exit 1
1276          INCLUDEDIRS="$INCLUDEDIRS $adr"          else
1277      fi              INCLUDEDIRS="$INCLUDEDIRS $adr"
1278  done          fi
1279        done
1280    fi
1281    
1282  echo "  Searching for CPP_OPTIONS.h in order to warn about the presence"  echo "  Searching for *OPTIONS.h files in order to warn about the presence"
1283  echo "    of \"#define ALLOW_PKGNAME\"-type statements:"  echo "    of \"#define \"-type statements that are no longer allowed:"
1284  CPP_OPTIONS=  CPP_OPTIONS=
1285    CPP_EEOPTIONS=
1286  spaths=". $INCLUDEDIRS"  spaths=". $INCLUDEDIRS"
1287    names=`ls -1 "$ROOTDIR/pkg"`
1288  for i in $spaths ; do  for i in $spaths ; do
1289      try="$i/CPP_OPTIONS.h"      try="$i/CPP_OPTIONS.h"
1290      #  echo -n "    trying $try : "      if test -f $try -a -r $try -a "x$CPP_OPTIONS" = x ; then
     if test -f $try -a -r $try ; then  
1291          echo "    found CPP_OPTIONS=\"$try\""          echo "    found CPP_OPTIONS=\"$try\""
1292          CPP_OPTIONS="$try"          CPP_OPTIONS="$try"
1293          break          # New safety test: make sure packages are not mentioned in CPP_OPTIONS.h
1294            for n in $names ; do
1295                test_for_package_in_cpp_options $CPP_OPTIONS $n
1296            done
1297        fi
1298        try="$i/CPP_EEOPTIONS.h"
1299        if test -f $try -a -r $try -a "x$CPP_EEOPTIONS" = x ; then
1300            echo "    found CPP_EEOPTIONS=\"$try\""
1301            # New safety test: make sure MPI is not determined by CPP_EEOPTIONS.h
1302    #**** not yet enabled ****
1303    #        test_for_mpi_in_cpp_eeoptions $try
1304    #**** not yet enabled ****
1305            CPP_EEOPTIONS="$try"
1306      fi      fi
1307  done  done
1308  if test "x$CPP_OPTIONS" = x ; then  if test "x$CPP_OPTIONS" = x ; then
1309      echo "Error: can't find \"CPP_OPTIONS.h\" in the path list: $spaths"      echo "Error: can't find \"CPP_OPTIONS.h\" in the path list: $spaths"
1310      exit 1      exit 1
1311  fi  fi
 # New safety test: make sure packages are not mentioned in CPP_OPTIONS.h  
 names=`ls -1 "$ROOTDIR/pkg"`  
 for n in $names ; do  
     test_for_package_in_cpp_options $CPP_OPTIONS $n  
 done  
   
1312    
1313  #  Here, we build the list of files to be "run through" the adjoint  #  Here, we build the list of files to be "run through" the adjoint
1314  #  compiler.  #  compiler.
# Line 1248  for i in $SOURCEDIRS ; do Line 1323  for i in $SOURCEDIRS ; do
1323      done      done
1324  done  done
1325    
1326    
1327  echo  echo
1328  echo "===  Creating the Makefile  ==="  echo "===  Creating the Makefile  ==="
1329  echo "  setting INCLUDES"  echo "  setting INCLUDES"
# Line 1347  EXE_FTL=$EXECUTABLE"_ftl" Line 1423  EXE_FTL=$EXECUTABLE"_ftl"
1423  EXE_SVD=$EXECUTABLE"_svd"  EXE_SVD=$EXECUTABLE"_svd"
1424    
1425  cat >>$MAKEFILE <<EOF  cat >>$MAKEFILE <<EOF
1426    #
1427    # OPTFILE="$OPTFILE"
1428  #  #
1429  # BUILDDIR     : Directory where object files are written  # BUILDDIR     : Directory where object files are written
1430  # SOURCEDIRS   : Directories containing the source (.F) files  # SOURCEDIRS   : Directories containing the source (.F) files
# Line 1383  EXE_SVD     = ${EXE_SVD} Line 1461  EXE_SVD     = ${EXE_SVD}
1461  ENABLED_PACKAGES = ${ENABLED_PACKAGES}  ENABLED_PACKAGES = ${ENABLED_PACKAGES}
1462  DISABLED_PACKAGES = ${DISABLED_PACKAGES}  DISABLED_PACKAGES = ${DISABLED_PACKAGES}
1463    
1464    # These files are created by Makefile
1465    SPECIAL_FILES = ${PACKAGES_DOT_H} AD_CONFIG.h FC_NAMEMANGLE.h
1466    
1467  EOF  EOF
1468    
1469  #  Note: figure out some way to add Hyades JAM libraries here  #  Note: figure out some way to add Hyades JAM libraries here
# Line 1447  cat >>$MAKEFILE <<EOF Line 1528  cat >>$MAKEFILE <<EOF
1528  .SUFFIXES: .o .f .p .F .c .F90 .f90  .SUFFIXES: .o .f .p .F .c .F90 .f90
1529    
1530  all: \$(EXECUTABLE)  all: \$(EXECUTABLE)
1531  \$(EXECUTABLE): links \$(OBJFILES)  \$(EXECUTABLE): \$(SPECIAL_FILES) \$(SRCFILES) \$(CSRCFILES) \$(HEADERFILES) \$(F90SRCFILES) \$(OBJFILES)
1532          @echo Creating \$@ ...          @echo Creating \$@ ...
1533          \$(LINK) -o \$@ \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) \$(LIBS)          \$(LINK) -o \$@ \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) \$(LIBS)
1534  depend:  depend:
# Line 1455  depend: Line 1536  depend:
1536          \$(MAKEDEPEND) -o .f \$(DEFINES) \$(INCLUDES) \$(SRCFILES)          \$(MAKEDEPEND) -o .f \$(DEFINES) \$(INCLUDES) \$(SRCFILES)
1537          \$(TOOLSDIR)/f90mkdepend >> \$(MAKEFILE)          \$(TOOLSDIR)/f90mkdepend >> \$(MAKEFILE)
1538    
1539  links: \$(SRCFILES) \$(CSRCFILES) \$(HEADERFILES) \$(F90SRCFILES) ${PACKAGES_DOT_H} AD_CONFIG.h  links: \$(SRCFILES) \$(CSRCFILES) \$(HEADERFILES) \$(F90SRCFILES) \$(SPECIAL_FILES)
1540    
1541  small_f: \$(F77FILES) \$(F90FILES)  small_f: \$(F77FILES) \$(F90FILES)
1542    
# Line 1468  clean: Line 1549  clean:
1549  Clean:  Clean:
1550          @make clean          @make clean
1551          @make cleanlinks          @make cleanlinks
1552          -rm -f ${PACKAGES_DOT_H} AD_CONFIG.h          -rm -f \$(SPECIAL_FILES)
1553          -rm -f Makefile.bak genmake_state genmake_*optfile genmake_warnings make.log          -rm -f genmake_state genmake_*optfile genmake_warnings make.log run.log *.bak
1554  CLEAN:  CLEAN:
1555          @make Clean          @make Clean
1556          -find \$(EXEDIR) -name "*.meta" -exec rm {} \;          -find \$(EXEDIR) -name "*.meta" -exec rm {} \;
# Line 1483  makefile: Line 1564  makefile:
1564  cleanlinks:  cleanlinks:
1565          -find . -type l -exec rm {} \;          -find . -type l -exec rm {} \;
1566    
1567  # Special targets  # Special targets ($SPECIAL_FILES) which are create by make
1568  ${PACKAGES_DOT_H}:  ${PACKAGES_DOT_H}:
1569          @echo Creating \$@ ...          @echo Creating \$@ ...
1570          @\$(TOOLSDIR)/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -bPACKAGES_CONFIG_H "Disabled packages:" \$(DISABLED_PACKAGES) " " "Enabled packages:" \$(ENABLED_PACKAGES) > \$@          @\$(TOOLSDIR)/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -bPACKAGES_CONFIG_H "Disabled packages:" \$(DISABLED_PACKAGES) " " "Enabled packages:" \$(ENABLED_PACKAGES) > \$@
1571  AD_CONFIG.h:  AD_CONFIG.h:
1572          @echo Creating \$@ ...          @echo Creating \$@ ...
1573          @\$(TOOLSDIR)/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -bAD_CONFIG_H -UALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN -UALLOW_ECCO_OPTIMIZATION > \$@          @\$(TOOLSDIR)/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -bAD_CONFIG_H -UALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN -UALLOW_ECCO_OPTIMIZATION > \$@
1574    FC_NAMEMANGLE.h:
1575            @echo Creating \$@ ...
1576            echo "$FC_NAMEMANGLE" > \$@
1577    
1578  # The normal chain of rules is (  .F - .f - .o  )  # The normal chain of rules is (  .F - .f - .o  )
1579  .F.f:  .F.f:
# Line 1659  $TOOLSDIR/convert_cpp_cmd2defines "Warni Line 1743  $TOOLSDIR/convert_cpp_cmd2defines "Warni
1743  if test ! -f $PACKAGES_DOT_H ; then  if test ! -f $PACKAGES_DOT_H ; then
1744      mv -f $PACKAGES_DOT_H".tmp" $PACKAGES_DOT_H      mv -f $PACKAGES_DOT_H".tmp" $PACKAGES_DOT_H
1745  else  else
1746      cmp $PACKAGES_DOT_H".tmp" $PACKAGES_DOT_H      cmp $PACKAGES_DOT_H".tmp" $PACKAGES_DOT_H > /dev/null 2>&1
1747      RETVAL=$?      RETVAL=$?
1748      if test "x$RETVAL" = x0 ; then      if test "x$RETVAL" = x0 ; then
1749          rm -f $PACKAGES_DOT_H".tmp"          rm -f $PACKAGES_DOT_H".tmp"

Legend:
Removed from v.1.48  
changed lines
  Added in v.1.61

  ViewVC Help
Powered by ViewVC 1.1.22