diff options
author | Robb Matzke <matzke@llnl.gov> | 1998-11-02 17:58:28 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1998-11-02 17:58:28 (GMT) |
commit | 254ae8d43d796c02aedfb7393726a80be14b95d5 (patch) | |
tree | a8be7fe29a273fb0ae4c21e41625755ae6ae88f9 /src/H5detect.c | |
parent | a125ee351ba738a61d35755fbb2880b011ac6649 (diff) | |
download | hdf5-254ae8d43d796c02aedfb7393726a80be14b95d5.zip hdf5-254ae8d43d796c02aedfb7393726a80be14b95d5.tar.gz hdf5-254ae8d43d796c02aedfb7393726a80be14b95d5.tar.bz2 |
[svn-r859] Changes since 19981030
----------------------
./MANIFEST
Added new Pablo files HDF5record_RT.h and ProcIDs.h
./acconfig.h
./configure [REGENERATED]
./configure.in
./src/H5.c
./src/H5Vprivate.h
./src/H5config.h.in [REGENERATED]
./src/H5private.h
./src/H5public.h
./test/big.c
Added more configuration stuff for the Win32 environment. Removed all
the #ifdef WIN32 from the source and replaced them with OS-independent
stuff. Specifics follow:
Check for non-Posix.1 `st_blocks' field in `struct stat' which is used
by the big file test to decide if the file system supports holes. If
the st_blocks field isn't present then we just skip the test.
Configure checks for <io.h> <sys/resource.h> <sys/time.h> and
<winsock.h> and defines HAVE_IO_H, HAVE_SYS_RESOURCE_H,
HAVE_SYS_TIME_H and HAVE_WINSOCK_H when they're found.
Configure checks whether both <sys/time.h> and <time.h> can be
included and defines SYS_TIME_WITH_TIME if so. Otherwise include only
<sys/time.h> or <time.h> even if both exist.
Configure checks sizeof(__int64) and defines SIZEOF___INT64 to the
result or to zero if __int64 isn't defined. The source uses `long
long' in preference to `__int64'.
Removed null WIN32 definition for `inline' since such a definition
already exists in H5config.h
Protected gettimeofday() calls in debugging code with
HAVE_GETTIMEOFDAY instead of WIN32.
./src/H5F.c
./src/H5Flow.c
./src/H5Fmpio.c
./src/H5Fsec2.c
./src/H5Fstdio.h
./src/H5P.c
./src/H5Tconv.c
./src/H5private.h
Removed #include of system files from library source files and
consolodated them into H5private.h where they're protected by various
configuration macros (most of them were duplicated there already
anyway).
./test/big.c
./test/chunk.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
./test/fillval.c
./test/flush1.c
./test/flush2.c
./test/iopipe.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/overhead.c
./test/ragged.c
./test/shtype.c
./test/unlink.c
Protected system #include's with #ifdef's from H5config.h.
Undefined NDEBUG since some of the tests rely on assert() to check
return values.
Removed WIN32 definitions for __unused__ since this can be controlled
by the definition of HAVE_ATTRIBUTE in H5config.h
./test/testhdf5.h
Removed the CLEAN_CMD definition because we no longer use it.
Albert's cleanup() functions replaced it.
./test/fillval.c
Initialized auto hid_t variables to fix warnings in error recovery
code when data flow analysis is turned on in compilers.
./test/h5tools.c
Initialized an auto variable to fix a compiler warning.
./test/chunk.c
./test/ragged.c
The WIN32 had some unsigned variables changed to signed because the
compiler generates warnings when coercing unsigned to double(?). I
changed them back to unsigned because they really are unsigned
quantities. If this the change was just to shut up extraneous warnings
then perhaps a compiler flag can do the same; otherwise if the
compiler generates bad code then we should supply a patch file instead
messing up source code with bug work-arounds.
./src/H5detect.c
Protected system #include's with #ifdef's from H5config.h thereby
removing a WIN32.
If getpwuid() doesn't exist (HAVE_GETPWUID) then we assume that
`struct passwd' doesn't exist either (we don't really need it in that
case).
The H5T_NATIVE_LLONG and H5T_NATIVE_ULLONG are defined in terms of
`long long' or else `__int64' or else `long' depending on what's
available.
./src/H5Flow.c
./src/H5Ofill.c
Added __unused__ to some function arguments that aren't used when
assertions are turned off.
./src/H5V.c
Changed an auto variable name in some hand-inlined code to get rid of
a warning about the variable shadowing a previous auto.
Diffstat (limited to 'src/H5detect.c')
-rw-r--r-- | src/H5detect.c | 66 |
1 files changed, 41 insertions, 25 deletions
diff --git a/src/H5detect.c b/src/H5detect.c index bbd9ba9..9979135 100644 --- a/src/H5detect.c +++ b/src/H5detect.c @@ -30,19 +30,33 @@ static const char *FileHeader = "\n\ *------------------------------------------------------------------------- */ #undef NDEBUG -#include <assert.h> -#include <math.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <time.h> -#if !defined(WIN32) -#include <unistd.h> -#include <sys/time.h> -#include <pwd.h> +#include <H5config.h> + +/* See H5private.h for how to include files */ +#ifdef STDC_HEADERS +# include <assert.h> +# include <math.h> +# include <stdio.h> +# include <stdlib.h> +# include <string.h> #endif -#include <H5config.h> +#ifdef HAVE_UNISTD_H +# include <sys/types.h> +# include <unistd.h> +#endif +#ifdef _POSIX_VERSION +# include <pwd.h> +#endif + +#if defined(TIME_WITH_SYS_TIME) +# include <sys/time.h> +# include <time.h> +#elif defined(HAVE_SYS_TIME_H) +# include <sys/time.h> +#else +# include <time.h> +#endif #define MAXDETECT 16 @@ -801,11 +815,15 @@ print_header(void) time_t now = time(NULL); struct tm *tm = localtime(&now); - struct passwd *pwd = NULL; char real_name[30]; char host_name[256]; int i; const char *s; +#ifdef HAVE_GETPWUID + struct passwd *pwd = NULL; +#else + int pwd = 1; +#endif static const char *month_name[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", @@ -895,7 +913,7 @@ bit.\n"; if (pwd || real_name[0] || host_name[0]) { printf(" *\t\t\t"); if (real_name[0]) printf("%s <", real_name); -#if !defined(WIN32) +#ifdef HAVE_GETPWUID if (pwd) fputs(pwd->pw_name, stdout); #endif if (host_name[0]) printf("@%s", host_name); @@ -953,23 +971,21 @@ main(void) DETECT_I(long, LONG, d[nd]); nd++; DETECT_I(unsigned long, ULONG, d[nd]); nd++; -#if SIZEOF_LONG == SIZEOF_LONG_LONG +#if SIZEOF_LONG_LONG > SIZEOF_LONG + DETECT_I(long long, LLONG, d[nd]); nd++; + DETECT_I(unsigned long long, ULLONG, d[nd]); nd++; +#elif SIZEOF___INT64 > SIZEOF_LONG + DETECT_I(__int64, LLONG, d[nd]); nd++; + DETECT_I(unsigned __int64, ULLONG, d[nd]); nd++; +#else /* - * If sizeof(long)==sizeof(long long) then assume that `long long' isn't - * supported and use `long' instead. This suppresses warnings on some - * systems. + * This architecture doesn't support an integer type larger than `long' + * so we'll just make H5T_NATIVE_LLONG the same as H5T_NATIVE_LONG. */ DETECT_I(long, LLONG, d[nd]); nd++; DETECT_I(unsigned long, ULLONG, d[nd]); nd++; -#else -#if defined(WIN32) - DETECT_I(__int64, LLONG, d[nd]); nd++; - DETECT_I(unsigned __int64, ULLONG, d[nd]); nd++; -#else - DETECT_I(long long, LLONG, d[nd]); nd++; - DETECT_I(unsigned long long, ULLONG, d[nd]); nd++; -#endif #endif + DETECT_F(float, FLOAT, d[nd]); nd++; DETECT_F(double, DOUBLE, d[nd]); nd++; |