From 96320e69c087ff011370a3f070500fa1f9a52a23 Mon Sep 17 00:00:00 2001 From: Robb Matzke Date: Thu, 4 Mar 1999 15:22:42 -0500 Subject: [svn-r1117] Changes since 19990303 ---------------------- ./configure.in ./configure [REGENERATED] The path for a command is calculated explicitly the hard way because `type -path' isn't portable. ./config/freebsd ./config/linux-gnu ./config/linux-gnulibc2 Changed the way files reference each other. ./config/gnu-flags [NEW] ./config/dec-flags [NEW] These files figure out what flags to pass to certain compilers so we can reuse code in more than one config/* file. They also have better warning messages when old compilers are used. ./config/linux-gnulibc1 ./config/dec-osf4.x These files use the new *-flags files. ./src/H5D.c ./src/H5Onull.c ./src/H5Tconv.c ./tools/h5ls.c Fixed a compiler warning. ./src/H5detect.c Added a better comment to the top of the generated file. --- MANIFEST | 2 + README | 2 +- config/dec-flags | 62 +++++++++++++++++++++ config/dec-osf4.x | 45 ++------------- config/freebsd | 15 ++++- config/gnu-flags | 149 ++++++++++++++++++++++++++++++++++++++++++++++++++ config/linux-gnu | 3 + config/linux-gnulibc1 | 66 ++-------------------- config/linux-gnulibc2 | 70 +----------------------- configure | 36 ++++++++---- configure.in | 24 ++++++-- src/H5D.c | 2 - src/H5Onull.c | 3 +- src/H5Tconv.c | 1 + src/H5detect.c | 3 +- tools/h5ls.c | 2 +- 16 files changed, 291 insertions(+), 194 deletions(-) create mode 100644 config/dec-flags create mode 100644 config/gnu-flags diff --git a/MANIFEST b/MANIFEST index 656e0a1..a723217 100644 --- a/MANIFEST +++ b/MANIFEST @@ -43,9 +43,11 @@ ./config/BlankForm ./config/commence.in ./config/conclude.in +./config/dec-flags ./config/dec-osf4.x ./config/depend.in ./config/freebsd +./config/gnu-flags ./config/hpux10.20 ./config/hpux9.03 ./config/intel-osf1 diff --git a/README b/README index 428c9b7..f221f7b 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -This is hdf5-1.1.56 released on Thu Mar 4 04:22:08 CST 1999 +This is hdf5-1.1.57 released on Thu Mar 4 15:16:37 CST 1999 Please refer to the INSTALL file for installation instructions. ------------------------------------------------------------------------------ diff --git a/config/dec-flags b/config/dec-flags new file mode 100644 index 0000000..edb6695 --- /dev/null +++ b/config/dec-flags @@ -0,0 +1,62 @@ +# -*- shell-script -*- +# +# This file should be sourced into configure if the compiler is a DEC +# compiler. It is careful not to do anything if the compiler is not +# DEC; otherwise `cc_flags_set' is set to `yes' +# + +# Get the compiler version unless it's already known. +# +# cc_vendor: The compiler vendor: DEC +# cc_version: Version number, like: V5.2-038 +# +if test X = "X$cc_flags_set"; then + cc_vendor=DEC + cc_version="`$CC $CFLAGS -V 2>&1 |head -1 |\ + sed 's/.*DEC C \(V[0-9][-\.0-9]*\).*/\1/'`" + if test X != "$gcc_version"; then + echo "compiler '$CC' is $cc_vendor-$cc_version" + else + cc_vendor= + fi +fi + +# Warn about old compilers that don't work right. +case "$cc_vendor-$cc_version" in + DEC-V5.2-038) + cat </dev/null`" in - "DEC C V5.2-038 "*) - echo " +------------------------------------------------+" - echo " | You have an old version of cc. Please upgrade. |" - echo " | Continuing anyway, but code generation might be|" - echo " | incorrect, especially if optimizations are |" - echo " | enabled (look for -O) |" - echo " +------------------------------------------------+" - sleep 5 - ;; - esac - - # Debugging - DEBUG_CFLAGS="-g -std -verbose -warnprotos" - DEBUG_CPPFLAGS="-DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - - # Production - PROD_CFLAGS="-g0 -verbose -warnprotos -std -O4 -arch host -tune host -ansi_args -fp_reorder -readonly_strings -inline speed" - PROD_CPPFLAGS="-D_INTRINSICS -D_INLINE_INTRINSICS" +# Architecture dependent flags +ARCH=${ARCH:='-arch host -tune host'} - # Profiling - PROFILE_CFLAGS="-pg -std -verbose -warnprotos" - PROFILE_CPPFLAGS= - ;; -esac +# Try compiler flags. +. ./config/gnu-flags +. ./config/dec-flags diff --git a/config/freebsd b/config/freebsd index 96d918e..4d9d221 100644 --- a/config/freebsd +++ b/config/freebsd @@ -5,4 +5,17 @@ # # See BlankForm in this directory for details. -. config/linux-gnulibc1 +# The default compiler is `gcc' +if test "X-" = "X-$CC"; then + CC=gcc + CC_BASENAME=gcc +fi + +# Architecture-specific flags +ARCH= + +# Omit frame pointer for optimized code? +NOFP=${NOFP:=-fomit-frame-pointer} + +# Figure out compiler flags +. ./config/gnu-flags diff --git a/config/gnu-flags b/config/gnu-flags new file mode 100644 index 0000000..83c0ed7 --- /dev/null +++ b/config/gnu-flags @@ -0,0 +1,149 @@ +# -*- shell-script -*- +# +# This file should be sourced into configure if the compiler is the +# GNU gcc compiler or a derivative. It is careful not to do anything +# if the compiler is not GNU; otherwise `cc_flags_set' is set to `yes' +# + +# Get the compiler version in a way that works for gcc, egcs, and +# pgcc unless a compiler version is already known +# +# cc_vendor: The compiler name: gcc, egcs, or pgcc +# cc_version: Version number: 2.91.60, 2.7.2.1 +# +if test X = "X$cc_flags_set"; then + cc_version="`$CC $CFLAGS -v 2>&1 |grep 'gcc version' |\ + sed 's/.*gcc version \([-a-z0-9\.]*\).*/\1/'`" + cc_vendor=`echo $cc_version |sed 's/\([a-z]*\).*/\1/'` + cc_version=`echo $cc_version |sed 's/[-a-z]//g'` + if test X = "X$cc_vendor" -a X != "X$cc_version"; then + cc_vendor=gcc + fi + if test "-" != "$cc_vendor-$cc_version"; then + echo "compiler '$CC' is GNU $cc_vendor-$cc_version" + fi +fi + +# Warn about old GNU compilers that don't work right. +case "$cc_vendor-$cc_version" in + gcc-2.7.*) + cat <&1 |grep 'gcc version' |sed 's/.*gcc version //'` in - 2.7.*) - echo " +------------------------------------------------+" - echo " | You have an old version of gcc. Please upgrade |" - echo " | to 2.8.1 or better. Continuing anyway, but |" - echo " | code generation may be wrong on some platforms.|" - echo " +------------------------------------------------+" - sleep 5 - CFLAGS="$CFLAGS -ansi" - PROD_CFLAGS="-O3 $NOFP -finline-functions -Wno-shadow" - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; +# Omit frame pointer for optimized code? +NOFP=${NOFP:=-fomit-frame-pointer} - 2.8.*) - CFLAGS="$CFLAGS -Wsign-compare" - PROD_CFLAGS="$ARCH -O3 $NOFP -finline-functions -fschedule-insns2 -Wno-shadow" - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; - - egcs-*) - CFLAGS="$CFLAGS -Wsign-compare" - PROD_CFLAGS="$ARCH -O6 $NOFP -Wno-shadow" - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; - - pgcc-*) - CFLAGS="$CFLAGS -Wsign-compare" - PROD_CFLAGS="$ARCH -O6 $NOFP -Wno-shadow" - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; - - *) - PROD_CFLAGS=-O - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; -esac +# Figure out compiler flags +. ./config/gnu-flags diff --git a/config/linux-gnulibc2 b/config/linux-gnulibc2 index f314915..67bdfdd 100644 --- a/config/linux-gnulibc2 +++ b/config/linux-gnulibc2 @@ -6,71 +6,5 @@ # # See BlankForm in this directory for details. -# The default compiler is `gcc'. -if test "X-" = "X-$CC"; then - CC=gcc - CC_BASENAME=gcc -fi - -ARCH="-mcpu=pentiumpro -march=pentiumpro -malign-double" -NOFP="-fomit-frame-pointer" -#HDF4_FLAGS="-D__i386" - -# Compiler flags. We use `-v' to get the version number because it almost -# always works on Linux systems. -case `$CC -v 2>&1 |grep 'gcc version' |sed 's/.*gcc version //'` in - 2.7.*) - echo " +------------------------------------------------+" - echo " | You have an old version of gcc. Please upgrade |" - echo " | to 2.8.1 or better. Continuing anyway, but |" - echo " | code generation may be wrong on some platforms.|" - echo " +------------------------------------------------+" - sleep 5 - CFLAGS="$CFLAGS -ansi" - PROD_CFLAGS="-O3 $NOFP -finline-functions -Wno-shadow" - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; - - 2.8.*) - CFLAGS="$CFLAGS -Wsign-compare" - PROD_CFLAGS="$ARCH -O3 $NOFP -finline-functions -fschedule-insns2 -Wno-shadow" - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; - - egcs-*) - CFLAGS="$CFLAGS -Wsign-compare" - PROD_CFLAGS="$ARCH -O6 $NOFP -Wno-shadow" - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; - - pgcc-*) - CFLAGS="$CFLAGS -Wsign-compare" - PROD_CFLAGS="$ARCH -O6 $NOFP -Wno-shadow" - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; - - *) - PROD_CFLAGS=-O - PROD_CPPFLAGS="$HDF4_FLAGS" - DEBUG_CFLAGS="-g" - DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2" - PROFILE_CFLAGS=-pg - PROFILE_CPPFLAGS= - ;; -esac +# Same as with gnulibc1 for now +. ./config/linux-gnulibc1 diff --git a/configure b/configure index a203070..d8d8c83 100755 --- a/configure +++ b/configure @@ -4530,15 +4530,27 @@ case "$CC_BASENAME" in PARALLEL=yes echo $ac_n "checking for mpirun""... $ac_c" 1>&6 echo "configure:4533: checking for mpirun" >&5 - CC_path=`type -path $CC` - CC_path=`echo $CC_path |sed -e 's/\/mpicc$//'` - if test -x $CC_path/mpirun; then - echo "$ac_t""$CC_path/mpirun" 1>&6 + + # Find the path where mpicc is located. + cmd=`echo $CC |cut -f1 -d' '` + if (echo $cmd |grep / >/dev/null); then + path="`echo $cmd |sed 's/\(.*\)\/.*$/\1/'`" + else + for path in `echo $PATH |tr : ' '`; do + if test -x $path/$cmd; then + break; + fi + done + fi + + # Is there an mpirun at that path? + if test -x $path/mpirun; then + echo "$ac_t""$path/mpirun" 1>&6 if test "X-" = "X-$RUNSERIAL"; then - RUNSERIAL="$CC_path/mpirun -np 1" + RUNSERIAL="$path/mpirun -np 1" fi if test "X-" = "X-$RUNPARALLEL"; then - RUNPARALLEL="$CC_path/mpirun -np \$\${NPROCS:=2}" + RUNPARALLEL="$path/mpirun -np \$\${NPROCS:=2}" fi else echo "$ac_t""none" 1>&6 @@ -4564,7 +4576,7 @@ fi echo $ac_n "checking for parallel support files""... $ac_c" 1>&6 -echo "configure:4568: checking for parallel support files" >&5 +echo "configure:4580: checking for parallel support files" >&5 case "X-$enable_parallel" in X-|X-no|X-none) # Either we are not compiling for parallel or the header and library @@ -4588,7 +4600,7 @@ case "X-$enable_parallel" in # is missing. PARALLEL=yes echo $ac_n "checking for MPI_Init in -lmpich""... $ac_c" 1>&6 -echo "configure:4592: checking for MPI_Init in -lmpich" >&5 +echo "configure:4604: checking for MPI_Init in -lmpich" >&5 ac_lib_var=`echo mpich'_'MPI_Init | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4596,7 +4608,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lmpich $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4623: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4656,10 +4668,10 @@ EOF # Display what we found about running programs echo $ac_n "checking how to run on one processor""... $ac_c" 1>&6 -echo "configure:4660: checking how to run on one processor" >&5 +echo "configure:4672: checking how to run on one processor" >&5 echo "$ac_t""$RUNSERIAL" 1>&6 echo $ac_n "checking how to run in parallel""... $ac_c" 1>&6 -echo "configure:4663: checking how to run in parallel" >&5 +echo "configure:4675: checking how to run in parallel" >&5 echo "$ac_t""$RUNPARALLEL" 1>&6 # There *must* be some way to run in parallel even if it's just the diff --git a/configure.in b/configure.in index 52673d0..8f50572 100644 --- a/configure.in +++ b/configure.in @@ -559,15 +559,27 @@ case "$CC_BASENAME" in # exists. PARALLEL=yes AC_MSG_CHECKING(for mpirun) - CC_path=`type -path $CC` - CC_path=`echo $CC_path |sed -e 's/\/mpicc$//'` - if test -x $CC_path/mpirun; then - AC_MSG_RESULT($CC_path/mpirun) + + # Find the path where mpicc is located. + cmd=`echo $CC |cut -f1 -d' '` + if (echo $cmd |grep / >/dev/null); then + path="`echo $cmd |sed 's/\(.*\)\/.*$/\1/'`" + else + for path in `echo $PATH |tr : ' '`; do + if test -x $path/$cmd; then + break; + fi + done + fi + + # Is there an mpirun at that path? + if test -x $path/mpirun; then + AC_MSG_RESULT($path/mpirun) if test "X-" = "X-$RUNSERIAL"; then - RUNSERIAL="$CC_path/mpirun -np 1" + RUNSERIAL="$path/mpirun -np 1" fi if test "X-" = "X-$RUNPARALLEL"; then - RUNPARALLEL="$CC_path/mpirun -np \$\${NPROCS:=2}" + RUNPARALLEL="$path/mpirun -np \$\${NPROCS:=2}" fi else AC_MSG_RESULT(none) diff --git a/src/H5D.c b/src/H5D.c index a303af5..8f416f6 100644 --- a/src/H5D.c +++ b/src/H5D.c @@ -85,9 +85,7 @@ const H5D_xfer_t H5D_xfer_dflt = { * Default to no upper limit on hyperslab * block size to cache */ -#ifdef HAVE_PARALLEL H5D_XFER_DFLT, /* Independent data transfer */ -#endif }; /* Interface initialization? */ diff --git a/src/H5Onull.c b/src/H5Onull.c index b2b9136..ff33d42 100644 --- a/src/H5Onull.c +++ b/src/H5Onull.c @@ -29,6 +29,7 @@ const H5O_class_t H5O_NULL[1] = {{ NULL, /*no copy method */ NULL, /*no size method */ NULL, /*no reset method */ - NULL, /*no share method */ + NULL, /*no get share method */ + NULL, /*no set share method */ NULL, /*no debug method */ }}; diff --git a/src/H5Tconv.c b/src/H5Tconv.c index f16a738..711c0ec 100644 --- a/src/H5Tconv.c +++ b/src/H5Tconv.c @@ -305,6 +305,7 @@ static intn interface_initialize_g = 0; if (d_mv) priv->d_aligned += nelmts; \ for (elmtno=0; elmtno