Commit Graph

11 Commits

Author SHA1 Message Date
Raymond Lu
04b7826ed1 [svn-r10218] Purpose: Bug fix
Description:  This commit is actually revision 1.155, which is the 3rd step of
changing conversion test.  It's for conversion from floating-point to integer.

In this step, the source buffer is filled in with normalized and denormalized
floating-point values.  For the normalized values, it starts from FLT(DBL, or
LDBL)_MIN, multiplied by 10(10000 for double, 100000000 for long double) for
the next value, until reaches to FLT_MAX.  For denormalized values, the
exponent part is always 0.  Mantissa part starts with 000...001, 000...011,
000...111, until reaches to 111...111.  The same is with negative values.

There're also fixes in config/hpux11.00 for kelgia where default macro table
size wasn't big enough to handle the big macro in dtypes.c.


Platforms tested: h5committest and kelgia.
2005-03-15 11:31:48 -05:00
James Laird
25df1908bc [svn-r10158] Purpose:
Automake version upgrade

Description:
Upgraded automake version from 1.6.2 to 1.9.5.
Changed bin/reconfigure script to use automake 1.9.5.
Changed configure.in and Makefiles to use new FCFLAGS and FC variables
instead of FFLAGS and F9X.
Automake and configure should now do the lion's share of the work
supporting Fortran 9X; macros in acsite.m4 are now mostly unused (will
be cleaned later).
Altered how configure handles pmake; now root-level Makefile.in is
processed by bin/reconfigure to have a .MAKEFLAGS target, since
automake no longer allows us to define unused variables.
Configure now always checks for C++ compiler even if it is not
used, since automake thinks this is the Right Thing To Do and
will break otherwise.

Platforms tested:
Sol, copper, heping, mir, sleipnir, eirene, pommier, kelgia, modi4.
2005-03-07 12:57:27 -05:00
Quincey Koziol
c04b612eb4 [svn-r9801] Purpose:
Bug fix

Description:
    Belatedly chase change of hobj_ref_t in C APIs.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/backward compatibility turned on
    IRIX64 6.5 (modi4) w/FORTRAN
    h5committest
2005-01-10 17:56:20 -05:00
Bill Wendling
b303888f43 [svn-r7854] Purpose:
Bug Fix

Description:
    The FFLAGS, CXXFLAGS, and CPPFLAGS variables weren't carrying
    user-defined values into the Makefiles.

Solution:
    Changed the flags from FOO="..." to FOO="$FOO ..."

Platforms tested:
    Copper
    Verbena
    Arabica

Misc. update:
2003-11-14 15:36:53 -05:00
Bill Wendling
0603e2db00 [svn-r7269] Purpose:
Update

Description:
    Revamped the configuration system. The configurations for the Fortran
    and C++ libraries are no longer separate from the "main"
    configuration system. This involved removing the "configure*" and
    "aclocal.m4" files from the fortran/ and c++/ subdirectories. Also
    merging settings in the config/ subdirectories into the main config/
    subdirectory.

    Fortran header files had to be modified a little for Linux. It was
    checking if it was a Linux machine by some #defines, however with the
    -std=c99 switch, these defines weren't there. I added a check for
    some other ones which should be there whether the -std=c99 switch is
    used or not.

Platforms tested:
    Verbena (Fortran & C++)
    Sol (Fortran & C++)
    Copper (Fortran & C++)
    Modi4 (Parallel, Fortran, & C++)

Misc. update:
2003-07-28 16:38:04 -05:00
Robb Matzke
cbf68fc824 [svn-r1568] Changes since 19990730
----------------------

This extensive change is the virtual file layer implementation. I've
ported and tested the sec2, family, and core drivers and only ported
the mpio driver (Albert will test it).  So if you need MPIO I would
recommend sticking with the previous version for a while.

You will get a few compile warnings about split and stdio drivers not
being implemented and possibly tracing information not inserted in
some of the drivers. You can safely ignore them but I plan to fix
them.

I'm still working on the split driver because I just realized that it
needs a part of the VFL that isn't written yet.

Documentation is being updated also because there were some minor
changes (mostly just name changes). It should be available on my web
site later this week.

./MANIFEST
./src/Makefile.in
./src/hdf5.h
./src/H5Flow.c			[REMOVED]
./src/H5Fstdio.c		[REMOVED]
./src/H5Fsec2.c			[REMOVED]
./src/H5Fsplit.c		[REMOVED]
./src/H5Fmpio.c			[REMOVED]
./src/H5Ffamily.c		[REMOVED]
./src/H5Fcore.c			[REMOVED]
./src/H5MFpublic.h		[REMOVED]
./src/H5FD.c			[NEW]
./src/H5FDcore.c		[NEW]
./src/H5FDcore.h		[NEW]
./src/H5FDfamily.c		[NEW]
./src/H5FDfamily.h		[NEW]
./src/H5FDmpio.c		[NEW]
./src/H5FDmpio.h		[NEW]
./src/H5FDprivate.h		[NEW]
./src/H5FDpublic.h		[NEW]
./src/H5FDsec2.c		[NEW]
./src/H5FDsec2.h		[NEW]
	Removed/added files for virtual file layer.

./bin/trace
./src/H5.c
	Removed unused public datatypes and added new VFL public
	datatypes.

	Changed an error message.

./config/BlankForm
./config/dec-flags
./config/gnu-flags
./config/hpux10.20
./config/hpux9.03
./config/irix5.x
./config/irix6.x
./config/solaris2.x
./config/unicosmk
	Removed the H5F_OPT_SEEK and H5F_LOW_DFLT constants from the
	configuration since they're no longer applicable. The default
	file driver is always the sec2 driver and it always optimizes
	calls to lseek() or lseek64().

./config/depend.in
	C preprocessor errors generated during automatic dependency
	building are sent to /dev/null to prevent them from appearing
	twice in the make output.

./src/H5AC.c
./src/H5B.c
./src/H5D.c
./src/H5F.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5Oattr.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Oshared.c
./src/H5T.c
./src/H5detect.c
./test/ohdr.c
	Changed H5F_ADDR_UNDEF to HADDR_UNDEF to be more consistent
	with the `haddr_t' datatype which is now a public type.

./src/H5D.c
./src/H5P.c
./src/H5Ppublic.h
./src/H5Tconv.c
./test/cmpd_dset.c
./test/dsets.c
./test/overhead.c
./test/tselect.c
./test/tvltypes.c
	The H5P_DATASET_XFER constant was changed to H5P_DATA_XFER
	because the properties apply to all types of I/O operations,
	not just datasets.

./src/H5B.c
./src/H5Bprivate.h
./src/H5D.c
./src/H5Dpublic.h
./src/H5F.c
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fprivate.h
./src/H5Fpublic.h
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5R.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Spoint.c
./src/H5Sprivate.h
./test/big.c
./test/h5test.c
./test/istore.c
./testpar/t_dset.c
./testpar/t_file.c
./tools/h5debug.c
./tools/h5ls.c
	Modified to work with the virtual file layer by calling H5FD_*
	functions instead of H5F_low_* functions and by passing file
	access and data transfer properties by object ID instead of
	pointer.

	Changed H5D_transfer_t to H5FD_mpio_xfer_t since the
	COLLECTIVE vs. INDEPENDENT transfer mode is specific to the
	MPIO file driver.

	Moved MPIO-specific stuff into the MPIO driver.

./src/H5B.c
./src/H5D.c
./src/H5Fprivate.h
	The H5F_mpio_* private functions were renamed and placed in
	the H5FDmpio driver except those which appeared in H5Smpio.c.

./src/H5E.c
./src/H5Epublic.h
	Added major error number H5E_VFL for virtual file layer
	related errors.

./src/H5F.c
./src/H5Fprivate.h
	Changed the logic that controls whether the boot block is
	written. Instead of assuming that the first call to write the
	boot block is only to allocate space, I've added a function
	argument which makes this explicit.

	Changed the way files are compared so that a driver-defined
	comparison function can be called.  Files which belong to
	different drivers are always considered different.

	Removed H5F_driver_t since file drivers are now identified by
	object ID instead of a special non-user-extendible datatype.

	Removed all the hard-coded low-level file properties which
	have been replaced by the various file drivers.

./src/H5I.c
./src/H5Iprivate.h
	Added the H5I_inc_ref() which was removed a few months ago
	since we finally have a use for it.

./src/H5Ipublic.h
	Added the H5I_VFL object ID type to identify file drivers in
	the virtual file layer.

./src/H5MF.c
./src/H5MFprivate.h
	Moved all the allocation/deallocation code into the virtual
	file layer which allows file drivers to override much of it.

./src/H5P.c
./src/H5Ppublic.h
	Moved file driver-specific code into the various file driver
	files.

	The H5Pcopy() and H5Pclose() functions make calls into the
	virtual file driver to manage the memory for driver-specific
	file access and data transfer properties.

./src/H5private.h
./src/H5public.h
	The `haddr_t' type is now public.

./test/tfile.c
	Added a few more comments.
1999-08-10 15:21:32 -05:00
Quincey Koziol
c00d3bcc92 [svn-r1036] Updated compiler flags 1999-01-28 17:00:01 -05:00
Robb Matzke
071aa057aa [svn-r907] Changes since 19981111
----------------------

./INSTALL
	Added instructions about specifying a path for GNU zlib and
	HDF4 headers and library.

	Added comments for each of the tool names.  Added h5toh4 as a
	tool name.

./configure.in
./conigure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	The config/* scripts get invoked with $CC_BASENAME set the
	base name of the compiler in order to make it easier to handle
	setting compiler flags for different compilers in a big case
	statement.  For instance, if $CC has the value

	    /usr/local/mpi/bin/mpicc -ansi -64

	then $CC_BASENAME will be `mpicc'.  The $CC_BASENAME is not
	set if $CC is not set.

	Fixed alignment in `configure --help'.

	An include and/or library path can be specified for GNU zlib
	if configure can't find it in normal places.  The "normal"
	means wherever your compiler normally searches, including
	search paths you've added through environment variables like
	CPPFLAGS and LDFLAGS.  The INSTALL file has instructions.

	The `-ljpeg' library is detected.

	If `ssize_t' is not found then a #define is added to
	H5config.h similar to what we already do for `size_t'.

	We detect the hdf5 header file `mfhdf.h' and libraries
	`-lmfhdf' and `-ldf' and if found define the H5TOH4 and
	TESTH5TOH4 Makefile variables.  The user can specify an
	include and/or library path. The INSTALL file has
	instructions.

	The `RUNTEST' variable has been split into `RUNSERIAL' and
	`RUNPARALLEL' because these are different commands.  The
	makefile still uses `RUNTEST', which defaults to the RUNSERIAL
	value.  The new testpar/Makefile.in sets RUNTEST to the
	RUNPARALLEL value. The default RUNSERIAL value is empty and
	the default RUNPARALLEL value is `mpirun -np 2'.  These can
	both be overridden in the config/* files.  To make the value
	the empty string set it like `RUNPARALLEL=none' in the
	config/* file.

	The new testpar/Makefile is generated from testpar/Makefile.in

./config/commence.in
	Added the RUNSERIAL and RUNPARALLEL makefile definitions.

./src/Makefile.in
	The `H5detect' program is run with RUNSERIAL, which is empty
	on all platforms except intel-osf1 (ASCI/Red)

./config/conclude.in
	Removed the `.c.a:' implicit rule -- we don't use it any more.

./config/BlankForm
./config/alpha-dec
./config/alpha-dec-osf4.0
./config/freebsd2.2.7
./config/hpux10.20
./config/hpux9.03
./config/intel-osf1
./config/irix5.3
./config/irix6.2
./config/irix64
./config/linux
./config/powerpc-ibm-aix4.2.1.0
./config/rs6000-ibm-aix4.1.4.0
./config/solaris2.5
	All of these files have been updated to hande multiple
	compilers. Most of them assume `cc' if CC is not set. The
	documentation in `BlankForm' has been updated and
	documentation in the other files refer to `BlankForm'.

	The intel-osf1 uses LDFLAGS instead of LIBS to specify the extra
	library search paths.

./examples/Makefile.in
./test/Makefile.in
./tools/Makefile.in
	Simplified by grouping some dependency information together
	more succinctly.

	The tools Makefile.in has been modified to work with the
	`h5toh4' and `testh5toh4' programs.  Until Paul checks these
	in you may have problems compiling.  If so, just create files
	h5toh4.c and testh5toh4.c that contain:

	    #include <stdio.h>
	    int main(int argc, char *argv[]) {
	        fprintf(stderr, "%s: not implemented\n", argv[0]);
		return 1;
	    }

./src/H5public.h
	Removed definition for `ssize_t' since this is now handled by
	configure in H5config.h with a #define.


./MANIFEST
./testpar/Makefile.in	[NEW]
	Added a makefile for parallel tests.  As soon as we get this
	working properly we can remove the other four makefiles in
	that directory and maintain just one.
1998-11-13 10:06:06 -05:00
Quincey Koziol
7b18991338 [svn-r711] Updated flags for better production compiling 1998-09-21 18:41:45 -05:00
Robb Matzke
a780cdd178 [svn-r335] Changes since 19980330
----------------------

./MANIFEST
./src/Makefile.in
./test/Makefile.in
        Added new files.

./config/linux
./src/H5HL.c
./src/H5HLprivate.h
./src/H5MF.c
./src/H5MFprivate.h
        Added `-DH5HL_DEBUG -DH5MF_DEBUG' to the debug list.

./html/H5.format.html
        Updated shared object message information.

./src/H5D.c
        Datasets can now share data types.

./src/H5F.c
        Updated a comment that referred to H5ACC_WRITE.

./src/H5HG.c
./src/H5HGprivate.h
        Moved a few things around.  Made debugging better so you can
        now give a collection address to ./src/debug and it shows some
        useful stuff.

./src/H5O.c
./src/H5Ocont.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Olayout.c
./src/H5Oname.c
./src/H5Onull.c
./src/H5Oprivate.h
./src/H5Osdspace.c
./src/H5Oshared.c       [NEW]
./src/H5Ostab.c
        Supports shared messages.

./src/H5T.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
        The H5Tshare() function allows the user to give the library
        hints about how a data type will be used.

./test/shtype.c
        Tests the H5Tshare() function.

./test/gheap.c
        Tests the global heap.

./configure.in
./config/BlankForm      [NEW]
./config/alpha-dec
./config/freebsd2.2.1
./config/hpux10.20
./config/irix6.2
./config/irix64
./config/linux
./config/powerpc-ibm-aix4.2.1.0
./config/rs6000-ibm-aix4.1.4.0
./config/solaris2.5
        Cleaned up lots of configuration stuff and made the site
        configuration files lots easier and more uniform.  To make a
        new file grab the BlankForm and modify it.

        By default, debugging is turned on for most packages.  Within
        a package one can use `#ifdef H5AC_DEBUG' to wrap debugging
        code.  Other options are:

           --enable-debug
           --enable-debug=yes
               The default, most but not all packages.

           --disable-debug
           --enable-debug=no
           --enable-debug=none
               The symbol NDEBUG is defined and none of the package
               debug symbols.

           --enable-debug=all
               Debugging is turned on for all packages.  This might
               produce lots of output.

           --enable-debug=g,d
               Debugging is turned on for H5G and H5D.

        A compile mode is also now supported

           --enable-production
           --enable-production=yes
               The library is compiled with optimizations turned on.
               The compiler flags are augmented by adding PROD_CFLAGS
               and PROD_CPPFLAGS which are defined in the site config
               file.

           --disable-production
           --enable-production=no
               The default.  The library is compiled for development
               by including DEBUG_CFLAGS and DEBUG_CPPFLAGS defined in
               the site config file.  This is usually just `-g'.

           --enable-production=profile
           --enable-production=pg
               Builds a library for profiling by including the flags
               from PROFILE_CFLAGS and PROFILE_CPPFLAGS defined in the
               site config file.  This is usullay just `-pg' but it
               could include optimization flags as well depending on
               the type of profile one wants.

        In summary, configure by saying `./configure' and you'll get a
        development version of the library.  Configure by saying
        `./configure --enable-production --disable-debug' and you'll
        get a production version with no debugging code.
1998-04-02 22:29:38 -05:00
Quincey Koziol
ee6ec48f0a [svn-r104] Add site configuration file for HPUX 10.20 to help it compile 1997-09-19 14:27:22 -05:00