mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-12-03 02:32:04 +08:00
Merge pull request #2470 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '07a66822fb1350955150295fcd6d9f53d3b7ee15': TRILAB-24 use CHECK_STRUCT_HAS_MEMBER
This commit is contained in:
commit
bf5ef12d50
@ -20,6 +20,7 @@ include (CheckSymbolExists)
|
|||||||
include (CheckTypeSize)
|
include (CheckTypeSize)
|
||||||
include (CheckVariableExists)
|
include (CheckVariableExists)
|
||||||
include (TestBigEndian)
|
include (TestBigEndian)
|
||||||
|
include (CheckStructHasMember)
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# APPLE/Darwin setup
|
# APPLE/Darwin setup
|
||||||
@ -328,7 +329,7 @@ if (MINGW OR NOT WINDOWS)
|
|||||||
|
|
||||||
CHECK_FUNCTION_EXISTS (fseeko ${HDF_PREFIX}_HAVE_FSEEKO)
|
CHECK_FUNCTION_EXISTS (fseeko ${HDF_PREFIX}_HAVE_FSEEKO)
|
||||||
|
|
||||||
HDF_FUNCTION_TEST (HAVE_STAT64_STRUCT)
|
CHECK_STRUCT_HAS_MEMBER("struct stat64" st_blocks "sys/types.h;sys/stat.h" HAVE_STAT64_STRUCT)
|
||||||
if (HAVE_STAT64_STRUCT)
|
if (HAVE_STAT64_STRUCT)
|
||||||
CHECK_FUNCTION_EXISTS (stat64 ${HDF_PREFIX}_HAVE_STAT64)
|
CHECK_FUNCTION_EXISTS (stat64 ${HDF_PREFIX}_HAVE_STAT64)
|
||||||
endif ()
|
endif ()
|
||||||
@ -438,14 +439,18 @@ if (MINGW OR NOT WINDOWS)
|
|||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Check a bunch of time functions
|
# Check a bunch of time functions
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
|
CHECK_STRUCT_HAS_MEMBER("struct tm" tm_gmtoff "time.h" ${HDF_PREFIX}_HAVE_TM_GMTOFF)
|
||||||
|
CHECK_STRUCT_HAS_MEMBER("struct tm" __tm_gmtoff "time.h" ${HDF_PREFIX}_HAVE___TM_GMTOFF)
|
||||||
|
CHECK_STRUCT_HAS_MEMBER("struct tm" tm_sec "sys/types.h;sys/time.h;time.h" ${HDF_PREFIX}_TIME_WITH_SYS_TIME)
|
||||||
|
if (${HDF_PREFIX}_HAVE_SYS_TIME_H)
|
||||||
|
CHECK_STRUCT_HAS_MEMBER("struct tm" tz_minuteswest "sys/types.h;sys/time.h;time.h" ${HDF_PREFIX}_HAVE_STRUCT_TIMEZONE)
|
||||||
|
else ()
|
||||||
|
CHECK_STRUCT_HAS_MEMBER("struct tm" tz_minuteswest "sys/types.h;time.h" ${HDF_PREFIX}_HAVE_STRUCT_TIMEZONE)
|
||||||
|
endif ()
|
||||||
CHECK_FUNCTION_EXISTS (gettimeofday ${HDF_PREFIX}_HAVE_GETTIMEOFDAY)
|
CHECK_FUNCTION_EXISTS (gettimeofday ${HDF_PREFIX}_HAVE_GETTIMEOFDAY)
|
||||||
foreach (time_test
|
foreach (time_test
|
||||||
HAVE_TM_GMTOFF
|
|
||||||
HAVE___TM_GMTOFF
|
|
||||||
# HAVE_TIMEZONE
|
# HAVE_TIMEZONE
|
||||||
HAVE_STRUCT_TIMEZONE
|
|
||||||
GETTIMEOFDAY_GIVES_TZ
|
GETTIMEOFDAY_GIVES_TZ
|
||||||
TIME_WITH_SYS_TIME
|
|
||||||
HAVE_TM_ZONE
|
HAVE_TM_ZONE
|
||||||
HAVE_STRUCT_TM_TM_ZONE
|
HAVE_STRUCT_TM_TM_ZONE
|
||||||
)
|
)
|
||||||
@ -453,20 +458,19 @@ if (MINGW OR NOT WINDOWS)
|
|||||||
endforeach ()
|
endforeach ()
|
||||||
if (NOT CYGWIN AND NOT MINGW)
|
if (NOT CYGWIN AND NOT MINGW)
|
||||||
HDF_FUNCTION_TEST (HAVE_TIMEZONE)
|
HDF_FUNCTION_TEST (HAVE_TIMEZONE)
|
||||||
# HDF_FUNCTION_TEST (HAVE_STAT_ST_BLOCKS)
|
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
# ----------------------------------------------------------------------
|
# ----------------------------------------------------------------------
|
||||||
# Does the struct stat have the st_blocks field? This field is not Posix.
|
# Does the struct stat have the st_blocks field? This field is not Posix.
|
||||||
#
|
#
|
||||||
HDF_FUNCTION_TEST (HAVE_STAT_ST_BLOCKS)
|
CHECK_STRUCT_HAS_MEMBER("struct stat" st_blocks "sys/types.h;sys/stat.h" ${HDF_PREFIX}_HAVE_STAT_ST_BLOCKS)
|
||||||
|
|
||||||
# ----------------------------------------------------------------------
|
# ----------------------------------------------------------------------
|
||||||
# How do we figure out the width of a tty in characters?
|
# How do we figure out the width of a tty in characters?
|
||||||
#
|
#
|
||||||
CHECK_FUNCTION_EXISTS (ioctl ${HDF_PREFIX}_HAVE_IOCTL)
|
CHECK_FUNCTION_EXISTS (ioctl ${HDF_PREFIX}_HAVE_IOCTL)
|
||||||
HDF_FUNCTION_TEST (HAVE_STRUCT_VIDEOCONFIG)
|
CHECK_STRUCT_HAS_MEMBER ("struct videoconfig" numtextcols "" ${HDF_PREFIX}_HAVE_STRUCT_VIDEOCONFIG)
|
||||||
HDF_FUNCTION_TEST (HAVE_STRUCT_TEXT_INFO)
|
CHECK_STRUCT_HAS_MEMBER ("struct text_info" screenwidth "" ${HDF_PREFIX}_HAVE_STRUCT_TEXT_INFO)
|
||||||
CHECK_FUNCTION_EXISTS (_getvideoconfig ${HDF_PREFIX}_HAVE__GETVIDEOCONFIG)
|
CHECK_FUNCTION_EXISTS (_getvideoconfig ${HDF_PREFIX}_HAVE__GETVIDEOCONFIG)
|
||||||
CHECK_FUNCTION_EXISTS (gettextinfo ${HDF_PREFIX}_HAVE_GETTEXTINFO)
|
CHECK_FUNCTION_EXISTS (gettextinfo ${HDF_PREFIX}_HAVE_GETTEXTINFO)
|
||||||
CHECK_FUNCTION_EXISTS (_scrsize ${HDF_PREFIX}_HAVE__SCRSIZE)
|
CHECK_FUNCTION_EXISTS (_scrsize ${HDF_PREFIX}_HAVE__SCRSIZE)
|
||||||
|
@ -88,25 +88,6 @@ int main(void)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef TIME_WITH_SYS_TIME
|
|
||||||
/* Time with sys/time test */
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
|
||||||
#include <sys/time.h>
|
|
||||||
#include <time.h>
|
|
||||||
|
|
||||||
int
|
|
||||||
main ()
|
|
||||||
{
|
|
||||||
if ((struct tm *) 0)
|
|
||||||
return 0;
|
|
||||||
;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef STDC_HEADERS
|
#ifdef STDC_HEADERS
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
@ -162,26 +143,6 @@ main ()
|
|||||||
|
|
||||||
#endif /* HAVE_FUNCTION */
|
#endif /* HAVE_FUNCTION */
|
||||||
|
|
||||||
#ifdef HAVE_TM_GMTOFF
|
|
||||||
|
|
||||||
#ifdef HAVE_SYS_TIME_H
|
|
||||||
#include <sys/time.h>
|
|
||||||
#endif
|
|
||||||
#include <time.h>
|
|
||||||
SIMPLE_TEST(struct tm tm; tm.tm_gmtoff=0);
|
|
||||||
|
|
||||||
#endif /* HAVE_TM_GMTOFF */
|
|
||||||
|
|
||||||
#ifdef HAVE___TM_GMTOFF
|
|
||||||
|
|
||||||
#ifdef HAVE_SYS_TIME_H
|
|
||||||
#include <sys/time.h>
|
|
||||||
#endif
|
|
||||||
#include <time.h>
|
|
||||||
SIMPLE_TEST(struct tm tm; tm.__tm_gmtoff=0);
|
|
||||||
|
|
||||||
#endif /* HAVE_TM___GMTOFF */
|
|
||||||
|
|
||||||
#ifdef HAVE_TIMEZONE
|
#ifdef HAVE_TIMEZONE
|
||||||
|
|
||||||
#ifdef HAVE_SYS_TIME_H
|
#ifdef HAVE_SYS_TIME_H
|
||||||
@ -192,24 +153,6 @@ SIMPLE_TEST(timezone=0);
|
|||||||
|
|
||||||
#endif /* HAVE_TIMEZONE */
|
#endif /* HAVE_TIMEZONE */
|
||||||
|
|
||||||
#ifdef HAVE_STRUCT_TIMEZONE
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
|
||||||
#ifdef HAVE_SYS_TIME_H
|
|
||||||
#include <sys/time.h>
|
|
||||||
#endif
|
|
||||||
#include <time.h>
|
|
||||||
SIMPLE_TEST(struct timezone tz; tz.tz_minuteswest=0);
|
|
||||||
|
|
||||||
#endif /* HAVE_STRUCT_TIMEZONE */
|
|
||||||
|
|
||||||
#ifdef HAVE_STAT_ST_BLOCKS
|
|
||||||
|
|
||||||
#include <sys/stat.h>
|
|
||||||
SIMPLE_TEST(struct stat sb; sb.st_blocks=0);
|
|
||||||
|
|
||||||
#endif /* HAVE_STAT_ST_BLOCKS */
|
|
||||||
|
|
||||||
#ifdef PRINTF_LL_WIDTH
|
#ifdef PRINTF_LL_WIDTH
|
||||||
|
|
||||||
#ifdef HAVE_LONG_LONG
|
#ifdef HAVE_LONG_LONG
|
||||||
@ -319,16 +262,6 @@ int main()
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_STAT64_STRUCT
|
|
||||||
#include <sys/types.h>
|
|
||||||
#include <sys/stat.h>],
|
|
||||||
struct stat64 sb;
|
|
||||||
int main()
|
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef TEST_DIRECT_VFD_WORKS
|
#ifdef TEST_DIRECT_VFD_WORKS
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
@ -432,18 +365,6 @@ int main ()
|
|||||||
|
|
||||||
#endif /* HAVE_IOEO */
|
#endif /* HAVE_IOEO */
|
||||||
|
|
||||||
#ifdef HAVE_STRUCT_VIDEOCONFIG
|
|
||||||
|
|
||||||
SIMPLE_TEST(struct videoconfig w; w.numtextcols=0);
|
|
||||||
|
|
||||||
#endif /* HAVE_STRUCT_VIDEOCONFIG */
|
|
||||||
|
|
||||||
#ifdef HAVE_STRUCT_TEXT_INFO
|
|
||||||
|
|
||||||
SIMPLE_TEST(struct text_info w; w.screenwidth=0);
|
|
||||||
|
|
||||||
#endif /* HAVE_STRUCT_TEXT_INFO */
|
|
||||||
|
|
||||||
#if defined( HAVE_INLINE ) || defined( HAVE___INLINE__ ) || defined( HAVE___INLINE )
|
#if defined( HAVE_INLINE ) || defined( HAVE___INLINE__ ) || defined( HAVE___INLINE )
|
||||||
#ifndef __cplusplus
|
#ifndef __cplusplus
|
||||||
#if defined( HAVE_INLINE )
|
#if defined( HAVE_INLINE )
|
||||||
|
@ -48,6 +48,13 @@ New Features
|
|||||||
|
|
||||||
Configuration:
|
Configuration:
|
||||||
-------------
|
-------------
|
||||||
|
- CMake ConfigureChecks.cmake file now uses CHECK_STRUCT_HAS_MEMBER
|
||||||
|
|
||||||
|
Some handcrafted tests in HDFTests.c has been removed and the CMake
|
||||||
|
CHECK_STRUCT_HAS_MEMBER module has been used.
|
||||||
|
|
||||||
|
(ADB - 2020/03/24, TRILAB-24)
|
||||||
|
|
||||||
- Both build systems use same set of warnings flags
|
- Both build systems use same set of warnings flags
|
||||||
|
|
||||||
GNU C warnings flags were moved to files in a config sub-folder
|
GNU C warnings flags were moved to files in a config sub-folder
|
||||||
|
Loading…
Reference in New Issue
Block a user