[netcdfgroup] netcdf-4.0: bugs in configure script

Hi,

netcdf-4.0 as distributed has some bugs in the configure script,
see attachment.

The quoting of unquoted variables in the tests are just one variant
of a possible fix.

The construct

   if ! test "${F90+set}" = set; then

is probably illegal, at least one ksh implementation rejects it.
Replace by:

   if test "${F90+set}" != set; then

It would be nice if these patches could be applied to a future
netcdf distribution.

Regards,
-ha

--
Harald Anlauf
Deutscher Wetterdienst (DWD)           | Phone:  +49 69 8062 4941
FE12 / Datenassimilation               | Fax:    +49 69 8062 4954
63067 Offenbach                        | e-Mail: harald.anlauf@xxxxxx
--- ./acinclude.m4.orig 2008-05-23 15:41:36.000000000 +0000
+++ ./acinclude.m4      2008-10-06 14:51:51.883266000 +0000
@@ -68,7 +68,7 @@
 ac_cv_c_long_long=yes, ac_cv_c_long_long=no, :)
 fi])dnl
 AC_MSG_RESULT($ac_cv_c_long_long)
-if test $ac_cv_c_long_long = yes; then
+if test "$ac_cv_c_long_long" = yes; then
   AC_DEFINE([HAVE_LONG_LONG], [], [have long long type])
 fi
 ])
@@ -142,7 +142,7 @@
 #endif
 }],ac_cv_c_ieeefloat=yes, ac_cv_c_ieeefloat=no, :)
 AC_MSG_RESULT($ac_cv_c_ieeefloat)
-if test $ac_cv_c_ieeefloat = no; then
+if test "$ac_cv_c_ieeefloat" = no; then
   AC_DEFINE([NO_IEEE_FLOAT], [], [no IEEE float on this platform])
 fi
 ])
--- ./configure.ac.orig 2008-06-29 19:34:02.000000000 +0000
+++ ./configure.ac      2008-10-06 14:52:28.140906000 +0000
@@ -81,7 +81,7 @@
 AC_MSG_RESULT([$nc4_build])
 
 # The code below will not run on netCDF-3 builds.
-if test $nc4_build = yes; then
+if test "$nc4_build" = yes; then
 
    AC_MSG_NOTICE([Processing NetCDF-4 options.])
    # Remove the following for netCDF-3.x builds.
@@ -618,7 +618,7 @@
 # See if the fortran 90 build is desired. If so, set some stuff
 if test "x$nc_build_f90" = xyes; then
    AC_MSG_NOTICE([setting up Fortran 90])
-   if ! test "${F90+set}" = set; then 
+   if test "${F90+set}" != set; then 
       F90=$FC 
    fi
 
@@ -828,7 +828,7 @@
 # This will test the f77 compiler, as well as check some fortran types.
 if test "x$nc_build_f77" = xyes; then
 
-   if test $enable_fortran_type_check = yes; then
+   if test "$enable_fortran_type_check" = yes; then
       UD_FORTRAN_TYPES
       if test "x$ud_fc_failed" = xyes -a "x$enable_compiler_recover" = xno -a 
"x$nc_build_f77" = xyes; then
          AC_MSG_ERROR([F77 compiler doesn't work, and compiler recovery 
disabled.])
  • 2008 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: