* Ed Hartnett wrote on Mon, Jan 24, 2005 at 05:26:40PM CET: > > Here's how I do it, but I'm sure there must be a better way. In I don't think it works.. > particular, how do I set the macro USE_NETCDF4 to 1, when > AC_ARG_ENABLE sets ac_cv_use_netcdf4 to either "yes" or "no." > > The way I do it is to introduce a new variable, ac_use_netcdf4_num, > which I set to 0 or 1. Is there a better way to do this? > > # Does the user want to build netcdf-4? > AC_MSG_CHECKING([whether netCDF-4 is to be built]) > AC_ARG_ENABLE([netcdf-4], > [AS_HELP_STRING([--enable-netcdf-4], > [build with netcdf-4 (HDF5 is required)])], > [ac_cv_use_netcdf4=$enableval], > [ac_cv_use_netcdf4=no]) > AC_MSG_RESULT($ac_cv_use_netcdf4) > AM_CONDITIONAL(USE_NETCDF4, [test x$ac_cv_use_netcdf4 != xno]) > if test x$ac_cv_use_netcdf4 == xyes; You only want `=' here, not `=='. See the manual for test. (It works by chance with bash but, e.g., not with ash.) I would also put $ac_cv_use_netcdf4 in double quotes here. > then ac_use_netcdf4_num=1 > else ac_use_netcdf4_num=0 > fi > AC_DEFINE_UNQUOTED([USE_NETCDF4], [$ac_use_netcdf4_num], > [if true, build netCDF-4]) As for length: you could elide the last two arguments to AC_ARG_ENABLE and work with the variable names autoconf creates. I would not do that, just leave it as-is. If you have many macros of this form, you can write a macro to create them... Regards, Ralf _______________________________________________ Autoconf mailing list Autoconf@xxxxxxx http://lists.gnu.org/mailman/listinfo/autoconf