summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2011-08-10 21:14:21 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2011-08-10 21:14:21 (GMT)
commitec76ca98c1a11b4943d39ff392d214c61eebc7cb (patch)
tree198f56354830b785c651148f07161dabbabcc694
parentada604b46f81b75881d762cab4da6d00326f6d06 (diff)
downloadhdf5-ec76ca98c1a11b4943d39ff392d214c61eebc7cb.zip
hdf5-ec76ca98c1a11b4943d39ff392d214c61eebc7cb.tar.gz
hdf5-ec76ca98c1a11b4943d39ff392d214c61eebc7cb.tar.bz2
[svn-r21217] Change CTEST_NAME to HDF5 - the project name
Implement InitOnceExecuteOnce - HDFFV-5929 Change command to generate output source files Tested: local linux, windows
-rw-r--r--CMakeLists.txt11
-rw-r--r--CTestConfig.cmake3
-rw-r--r--config/cmake/ConfigureChecks.cmake4
-rw-r--r--fortran/src/CMakeLists.txt31
-rw-r--r--src/CMakeLists.txt21
5 files changed, 29 insertions, 41 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6aedef8..ac3acd0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -371,7 +371,11 @@ ENDIF (CMAKE_BUILD_TYPE MATCHES Debug)
# Compiler specific flags : Shouldn't there be compiler tests for these
#-----------------------------------------------------------------------------
IF (CMAKE_COMPILER_IS_GNUCC)
+ IF (CMAKE_BUILD_TYPE MATCHES Debug)
+ SET (CMAKE_C_FLAGS "${CMAKE_ANSI_CFLAGS} ${CMAKE_C_FLAGS} -std=c99 -finline-functions -fno-common")
+ ELSE (CMAKE_BUILD_TYPE MATCHES Debug)
SET (CMAKE_C_FLAGS "${CMAKE_ANSI_CFLAGS} ${CMAKE_C_FLAGS} -std=c99 -fomit-frame-pointer -finline-functions -fno-common")
+ ENDIF (CMAKE_BUILD_TYPE MATCHES Debug)
ENDIF (CMAKE_COMPILER_IS_GNUCC)
#-----------------------------------------------------------------------------
@@ -593,6 +597,11 @@ IF (WIN32 AND NOT CYGWIN)
IF (H5_HAVE_IOEO)
MESSAGE (STATUS " **** Windows Threads only available in WINVER>=0x600 (Vista or Windows 7)**** ")
SET (H5_HAVE_WIN_THREADS 1)
+ ELSE (H5_HAVE_IOEO)
+ IF (NOT H5_HAVE_PTHREAD_H)
+ SET (H5_HAVE_THREADSAFE 0)
+ MESSAGE (FATAL " **** Threadsafe option requires thread library **** ")
+ ENDIF (NOT H5_HAVE_PTHREAD_H)
ENDIF (H5_HAVE_IOEO)
ENDIF (HDF5_ENABLE_THREADSAFE)
ENDIF (WIN32 AND NOT CYGWIN)
@@ -844,7 +853,7 @@ IF (NOT HDF5_EXTERNALLY_CONFIGURED)
IF (HDF5_ENABLE_PARALLEL)
SET (release_files
${release_files}
- ${HDF5_SOURCE_DIR}/release_docs/INSTALL_parallel.txt
+ ${HDF5_SOURCE_DIR}/release_docs/INSTALL_parallel
)
ENDIF (HDF5_ENABLE_PARALLEL)
INSTALL (
diff --git a/CTestConfig.cmake b/CTestConfig.cmake
index fbd1dfc..655f76d 100644
--- a/CTestConfig.cmake
+++ b/CTestConfig.cmake
@@ -4,15 +4,14 @@
## # The following are required to uses Dart and the Cdash dashboard
## ENABLE_TESTING()
## INCLUDE(CTest)
+SET (CTEST_PROJECT_NAME "HDF5")
SET (CTEST_DROP_METHOD "http")
IF (CDASH_LOCAL)
- SET (CTEST_PROJECT_NAME "HDF5.1.8")
SET (CTEST_NIGHTLY_START_TIME "20:00:00 CST")
SET (CTEST_DROP_SITE "nei.hdfgroup.uiuc.edu")
SET (CTEST_DROP_LOCATION "/cdash/submit.php?project=HDF5.1.8")
ELSE (CDASH_LOCAL)
- SET (CTEST_PROJECT_NAME "HDF518")
SET (CTEST_NIGHTLY_START_TIME "00:00:00 EST")
SET (CTEST_DROP_SITE "cdash.hdfgroup.uiuc.edu")
SET (CTEST_DROP_LOCATION "/submit.php?project=HDF518")
diff --git a/config/cmake/ConfigureChecks.cmake b/config/cmake/ConfigureChecks.cmake
index 9c9c8d1..332239b 100644
--- a/config/cmake/ConfigureChecks.cmake
+++ b/config/cmake/ConfigureChecks.cmake
@@ -590,7 +590,7 @@ ENDIF (NOT WINDOWS)
#-----------------------------------------------------------------------------
# Check if InitOnceExecuteOnce is available
#-----------------------------------------------------------------------------
-IF (WINDOWS)
+IF (WINDOWS AND NOT HDF5_NO_IOEO_TEST)
MESSAGE (STATUS "Checking for InitOnceExecuteOnce:")
IF("${H5_HAVE_IOEO}" MATCHES "^${H5_HAVE_IOEO}$")
IF (LARGEFILE)
@@ -648,7 +648,7 @@ IF (WINDOWS)
"Return value: ${HAVE_IOEO_EXITCODE}\n")
ENDIF("${HAVE_IOEO_EXITCODE}" EQUAL 0)
ENDIF("${H5_HAVE_IOEO}" MATCHES "^${H5_HAVE_IOEO}$")
-ENDIF (WINDOWS)
+ENDIF (WINDOWS AND NOT HDF5_NO_IOEO_TEST)
#-----------------------------------------------------------------------------
diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt
index d5cbc1b..e2da265 100644
--- a/fortran/src/CMakeLists.txt
+++ b/fortran/src/CMakeLists.txt
@@ -2,15 +2,6 @@ cmake_minimum_required (VERSION 2.8)
PROJECT (HDF5_F90_SRC C CXX Fortran)
#-----------------------------------------------------------------------------
-# When building utility executables that generate other (source) files :
-# we make use of the following variables defined in the root CMakeLists.
-# Certain systems may add /Debug or /Release to output paths
-# and we need to call the executable from inside the CMake configuration
-#-----------------------------------------------------------------------------
-#inherit EXE_EXT from parent HDF5 cmake project
-#inherit CFG_INIT from parent HDF5 cmake project
-
-#-----------------------------------------------------------------------------
# Setup the Fortran auto-detection utilities
# H5test_kind(_SIZEOF).f90 used to generate H5fortran_detect.f90
# H5fortran_detect.f90 used to generate H5fort_type_defines.h
@@ -39,7 +30,7 @@ IF (WIN32 AND MSVC)
ENDIF (WIN32 AND MSVC)
SET_TARGET_PROPERTIES (H5test_FortranHavekind PROPERTIES LINKER_LANGUAGE Fortran)
-SET (CMD ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${CFG_INIT}/H5test_FortranHavekind${EXE_EXT})
+SET (CMD $<TARGET_FILE:H5test_FortranHavekind>)
ADD_CUSTOM_COMMAND (
OUTPUT ${HDF5_F90_BINARY_DIR}/H5fortran_detect.f90
COMMAND ${CMD}
@@ -63,9 +54,9 @@ IF (WIN32 AND MSVC)
LINK_FLAGS "/SUBSYSTEM:CONSOLE"
)
ENDIF (WIN32 AND MSVC)
-SET_TARGET_PROPERTIES (H5test_FortranHavekind PROPERTIES LINKER_LANGUAGE Fortran)
+SET_TARGET_PROPERTIES (H5fortran_detect PROPERTIES LINKER_LANGUAGE Fortran)
-SET (CMD ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${CFG_INIT}/H5fortran_detect${EXE_EXT})
+SET (CMD $<TARGET_FILE:H5fortran_detect>)
ADD_CUSTOM_COMMAND (
OUTPUT ${HDF5_F90_BINARY_DIR}/H5fort_type_defines.h
COMMAND ${CMD}
@@ -80,7 +71,7 @@ ADD_EXECUTABLE (H5match_types
${HDF5_F90_BINARY_DIR}/H5fort_type_defines.h
${HDF5_F90_SRC_SOURCE_DIR}/H5match_types.c
)
-SET (CMD ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${CFG_INIT}/H5match_types${EXE_EXT})
+SET (CMD $<TARGET_FILE:H5match_types>)
ADD_CUSTOM_COMMAND (
OUTPUT ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h
${HDF5_F90_BINARY_DIR}/H5fortran_types.f90
@@ -189,16 +180,20 @@ SET (SHARED_LINK_FLAGS " ")
IF (WIN32 AND NOT CYGWIN)
IF (BUILD_SHARED_LIBS)
SET_PROPERTY (TARGET ${HDF5_F90_LIB_TARGET}
- APPEND PROPERTY COMPILE_DEFINITIONS
- BUILD_HDF5_DLL
- )
+ APPEND PROPERTY COMPILE_DEFINITIONS
+ BUILD_HDF5_DLL
+ )
IF (MSVC)
- SET (SHARED_LINK_FLAGS "/DLL /DEF:${HDF5_F90_SRC_SOURCE_DIR}/hdf5_fortrandll.def")
+ IF (H5_HAVE_PARALLEL)
+ SET (SHARED_LINK_FLAGS "/DLL /DEF:${HDF5_F90_SRC_SOURCE_DIR}/phdf5_fortrandll.def")
+ ELSE (H5_HAVE_PARALLEL)
+ SET (SHARED_LINK_FLAGS "/DLL /DEF:${HDF5_F90_SRC_SOURCE_DIR}/hdf5_fortrandll.def")
+ ENDIF (H5_HAVE_PARALLEL)
ENDIF (MSVC)
ENDIF (BUILD_SHARED_LIBS)
SET_PROPERTY (TARGET ${HDF5_F90_LIB_TARGET}
APPEND PROPERTY COMPILE_DEFINITIONS
- HDF5F90_WINDOWS
+ HDF5F90_WINDOWS
)
ENDIF (WIN32 AND NOT CYGWIN)
TARGET_FORTRAN_WIN_PROPERTIES (${HDF5_F90_LIB_TARGET} ${SHARED_LINK_FLAGS})
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index d4df2b9..b56e1b9 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -562,27 +562,15 @@ INCLUDE_DIRECTORIES (${HDF5_SOURCE_DIR})
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR})
#-----------------------------------------------------------------------------
-# When building utility executables that generate other (source) files :
-# we make use of the following variables defined in the root CMakeLists.
-# Certain systems may add /Debug or /Release to output paths
-# and we need to call the executable from inside the CMake configuration
-#-----------------------------------------------------------------------------
-#inherit EXE_EXT from parent HDF5 cmake project
-#inherit CFG_INIT from parent HDF5 cmake project
-
-#-----------------------------------------------------------------------------
# Setup the H5Detect utility which generates H5Tinit with platform
# specific type checks inside
#-----------------------------------------------------------------------------
-SET (CMD ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${CFG_INIT}/H5detect${EXE_EXT})
-IF (XCODE)
- SET (CMD "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/\${CONFIGURATION}/H5detect")
-ENDIF (XCODE)
ADD_EXECUTABLE (H5detect ${HDF5_SRC_DIR}/H5detect.c)
IF (MSVC)
TARGET_LINK_LIBRARIES (H5detect "ws2_32.lib")
ENDIF (MSVC)
+SET (CMD $<TARGET_FILE:H5detect>)
ADD_CUSTOM_COMMAND (
OUTPUT ${HDF5_BINARY_DIR}/H5Tinit.c
COMMAND ${CMD}
@@ -590,18 +578,15 @@ ADD_CUSTOM_COMMAND (
DEPENDS H5detect
)
-SET (CMDL ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${CFG_INIT}/H5make_libsettings${EXE_EXT})
-IF (XCODE)
- SET (CMDL "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/\${CONFIGURATION}/H5make_libsettings")
-ENDIF (XCODE)
ADD_EXECUTABLE (H5make_libsettings ${HDF5_SRC_DIR}/H5make_libsettings.c)
IF (MSVC)
TARGET_LINK_LIBRARIES (H5make_libsettings "ws2_32.lib")
ENDIF (MSVC)
+SET (CMD $<TARGET_FILE:H5make_libsettings>)
ADD_CUSTOM_COMMAND (
OUTPUT ${HDF5_BINARY_DIR}/H5lib_settings.c
- COMMAND ${CMDL}
+ COMMAND ${CMD}
ARGS > ${HDF5_BINARY_DIR}/H5lib_settings.c
DEPENDS H5make_libsettings
)