forked from HDFGroup/hdf4
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge hdf4-examples repo into library (HDFGroup#465)
- Loading branch information
Showing
214 changed files
with
16,937 additions
and
68 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -263,6 +263,13 @@ set (HDF4_PACKAGE_BUGREPORT "[email protected]") | |
set (HDF4_PACKAGE_SOVERSION "${H4_VERS_MAJOR}.${H4_VERS_RELEASE}.${H4_VERS_MINOR}") | ||
set (HDF4_PACKAGE_SOVERSION_MAJOR "${H4_VERS_MAJOR}") | ||
|
||
#----------------------------------------------------------------------------- | ||
# Set variables needed for installation | ||
#----------------------------------------------------------------------------- | ||
set (HDF4_VERSION_STRING ${HDF4_PACKAGE_VERSION}) | ||
set (HDF4_VERSION_MAJOR ${HDF4_PACKAGE_VERSION_MAJOR}) | ||
set (HDF4_VERSION_MINOR ${HDF4_PACKAGE_VERSION_MINOR}) | ||
|
||
#----------------------------------------------------------------------------- | ||
# Include some macros for reusable code | ||
#----------------------------------------------------------------------------- | ||
|
@@ -447,7 +454,7 @@ if (MSVC) | |
endif () | ||
|
||
include (${HDF_RESOURCES_DIR}/HDFCompilerFlags.cmake) | ||
set (CMAKE_MODULE_PATH ${HDF_RESOURCES_DIR} ${HDF_RESOURCES_DIR} ${CMAKE_MODULE_PATH}) | ||
set (CMAKE_MODULE_PATH ${HDF_RESOURCES_DIR} ${CMAKE_MODULE_PATH}) | ||
|
||
#----------------------------------------------------------------------------- | ||
# Include user macros | ||
|
@@ -601,26 +608,6 @@ endif () | |
add_subdirectory (hdf) | ||
add_subdirectory (mfhdf) | ||
|
||
#----------------------------------------------------------------------------- | ||
# Option to build HDF4 Examples | ||
#----------------------------------------------------------------------------- | ||
if (EXISTS "${HDF4_SOURCE_DIR}/mfhdf/examples" AND IS_DIRECTORY "${HDF4_SOURCE_DIR}/mfhdf/examples") | ||
option (HDF4_BUILD_EXAMPLES "Build HDF4 Examples" OFF) | ||
if (HDF4_BUILD_EXAMPLES) | ||
if (HDF4_BUILD_FORTRAN) | ||
if (EXISTS "${HDF4_SOURCE_DIR}/hdf/fortran/examples" AND IS_DIRECTORY "${HDF4_SOURCE_DIR}/hdf/fortran/examples") | ||
add_subdirectory (hdf/fortran/examples) | ||
endif () | ||
if (EXISTS "${HDF4_SOURCE_DIR}/mfhdf/fortran/examples" AND IS_DIRECTORY "${HDF4_SOURCE_DIR}/mfhdf/fortran/examples") | ||
add_subdirectory (mfhdf/fortran/examples) | ||
endif () | ||
endif () | ||
|
||
add_subdirectory (hdf/examples) | ||
add_subdirectory (mfhdf/examples) | ||
endif () | ||
endif () | ||
|
||
#----------------------------------------------------------------------------- | ||
# Option to build HDF4 Java Library | ||
#----------------------------------------------------------------------------- | ||
|
@@ -631,6 +618,18 @@ if (EXISTS "${HDF4_SOURCE_DIR}/java" AND IS_DIRECTORY "${HDF4_SOURCE_DIR}/java") | |
endif () | ||
endif () | ||
|
||
#----------------------------------------------------------------------------- | ||
# Option to build HDF4 Examples | ||
#----------------------------------------------------------------------------- | ||
if (EXISTS "${HDF4_SOURCE_DIR}/HDF4Examples" AND IS_DIRECTORY "${HDF4_SOURCE_DIR}/HDF4Examples") | ||
option (HDF4_BUILD_EXAMPLES "Build HDF4 Library Examples" ON) | ||
if (HDF4_BUILD_EXAMPLES) | ||
include (${HDF_RESOURCES_DIR}/HDF4ExampleCache.cmake) | ||
set (HDF4_VERSION ${HDF4_PACKAGE_VERSION}) | ||
add_subdirectory (HDF4Examples) | ||
endif () | ||
endif () | ||
|
||
#----------------------------------------------------------------------------- | ||
# Generate the H4config.h file containing user settings needed by compilation | ||
#----------------------------------------------------------------------------- | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,102 @@ | ||
cmake_minimum_required (VERSION 3.12) | ||
project (H4EXAMPLES C) | ||
|
||
#----------------------------------------------------------------------------- | ||
# Define some CMake variables for use later in the project | ||
#----------------------------------------------------------------------------- | ||
set (HDF4EX_HDFSRC_DIR ${H4EXAMPLES_SOURCE_DIR}/hdf) | ||
set (HDF4EX_HDF_FORTRAN_DIR ${H4EXAMPLES_SOURCE_DIR}/hdf/fortran) | ||
set (HDF4EX_MFHDFSRC_DIR ${H4EXAMPLES_SOURCE_DIR}/mfhdf) | ||
set (HDF4EX_MFHDF_FORTRAN_DIR ${H4EXAMPLES_SOURCE_DIR}/mfhdf/fortran) | ||
set (HDF4EX_JAVA_DIR ${H4EXAMPLES_SOURCE_DIR}/JAVA) | ||
set (HDF4EX_RESOURCES_DIR ${H4EXAMPLES_SOURCE_DIR}/config/cmake) | ||
|
||
#----------------------------------------------------------------------------- | ||
# Basic HDF4Examples stuff here | ||
#----------------------------------------------------------------------------- | ||
include (${HDF4EX_RESOURCES_DIR}/HDFMacros.cmake) | ||
include (${HDF4EX_RESOURCES_DIR}/HDFExampleMacros.cmake) | ||
set (CMAKE_JAVA_INCLUDE_PATH "") | ||
|
||
SET_HDF_BUILD_TYPE() | ||
|
||
BASIC_SETTINGS (EXAMPLES) | ||
|
||
#----------------------------------------------------------------------------- | ||
# HDF4 support | ||
#----------------------------------------------------------------------------- | ||
HDF4_SUPPORT (TRUE) | ||
message (STATUS "HDF4 link libs: ${H4EX_HDF4_LINK_LIBS}") | ||
|
||
if (WIN32) | ||
set(CMAKE_TEST_LIB_DIRECTORY "${HDF4_TOOLS_DIR}") | ||
else () | ||
set(CMAKE_TEST_LIB_DIRECTORY "${HDF4_LIBRARY_PATH}") | ||
endif () | ||
|
||
#----------------------------------------------------------------------------- | ||
# All examples need the main include directories | ||
#----------------------------------------------------------------------------- | ||
INCLUDE_DIRECTORIES (${H4EX_HDF4_INCLUDE_DIRS}) | ||
|
||
#----------------------------------------------------------------------------- | ||
# Dashboard and Testing Settings | ||
#----------------------------------------------------------------------------- | ||
option (H4EX_BUILD_TESTING "Build HDF4 Example Testing" OFF) | ||
if (H4EX_BUILD_TESTING) | ||
set (DART_TESTING_TIMEOUT 1200 CACHE STRING | ||
"Timeout in seconds for each test (default 1200=20minutes)" | ||
) | ||
enable_testing () | ||
include (CTest) | ||
include (${PROJECT_SOURCE_DIR}/CTestConfig.cmake) | ||
configure_file (${HDF4EX_RESOURCES_DIR}/CTestCustom.cmake ${PROJECT_BINARY_DIR}/CTestCustom.ctest @ONLY) | ||
endif () | ||
|
||
#----------------------------------------------------------------------------- | ||
# Option to build Fortran examples | ||
# Make sure this appears before the CONFIGURE_FILE step | ||
# so that fortran name mangling is detected before writing H4config.h | ||
#----------------------------------------------------------------------------- | ||
# Set default name mangling : overridden by Fortran detection in fortran dir | ||
set (H4_F77_FUNC "H4_F77_FUNC(name,NAME) name ## _") | ||
set (H4_F77_FUNC_ "H4_F77_FUNC_(name,NAME) name ## __") | ||
if (EXISTS "${H4EXAMPLES_SOURCE_DIR}/mfhdf/fortran" AND IS_DIRECTORY "${H4EXAMPLES_SOURCE_DIR}/mfhdf/fortran") | ||
option (HDF_BUILD_FORTRAN "Build FORTRAN support" OFF) | ||
if (HDF_BUILD_FORTRAN AND HDF4_BUILD_FORTRAN) | ||
set (H4EX_LINK_Fortran_LIBS ${H4EX_HDF4_LINK_LIBS}) | ||
|
||
if (WIN32) | ||
set (H4_F77_FUNC "H4_F77_FUNC(name,NAME) NAME") | ||
set (H4_F77_FUNC_ "H4_F77_FUNC_(name,NAME) NAME") | ||
endif () | ||
else () | ||
set (HDF_BUILD_FORTRAN OFF CACHE BOOL "Build examples FORTRAN support" FORCE) | ||
endif () | ||
else () | ||
set (HDF_BUILD_FORTRAN OFF CACHE BOOL "Build examples FORTRAN support" FORCE) | ||
endif () | ||
|
||
#----------------------------------------------------------------------------- | ||
# Option to build JAVA examples | ||
#----------------------------------------------------------------------------- | ||
if (EXISTS "${H4EXAMPLES_SOURCE_DIR}/JAVA" AND IS_DIRECTORY "${H4EXAMPLES_SOURCE_DIR}/JAVA") | ||
option (HDF_BUILD_JAVA "Build JAVA support" OFF) | ||
else () | ||
set (HDF_BUILD_JAVA OFF CACHE BOOL "Build examples JAVA support" FORCE) | ||
endif () | ||
|
||
#----------------------------------------------------------------------------- | ||
# Build examples | ||
#----------------------------------------------------------------------------- | ||
if (HDF_BUILD_C) | ||
add_subdirectory (hdf/examples) | ||
add_subdirectory (mfhdf/examples) | ||
endif () | ||
if (HDF_BUILD_FORTRAN AND HDF4_BUILD_FORTRAN) | ||
add_subdirectory (mfhdf/fortran) | ||
add_subdirectory (hdf/fortran) | ||
endif () | ||
if (HDF_BUILD_JAVA AND HDF4_BUILD_JAVA) | ||
add_subdirectory (JAVA) | ||
endif () |
Oops, something went wrong.