early-access version 2853

This commit is contained in:
pineappleEA
2022-07-23 03:01:36 +02:00
parent 1f2b5081b5
commit 1f111bb69c
8955 changed files with 418777 additions and 999 deletions

View File

@@ -0,0 +1,49 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f06fcc0..a19ab28 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -622,9 +622,23 @@ write_basic_package_version_file(
VERSION ${NCXX_VERSION}
COMPATIBILITY SameMajorVersion
)
+
+install(
+ EXPORT netcdf-cxx4Targets
+ FILE netcdf-cxx4Targets.cmake
+ NAMESPACE netCDF::
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/netCDFCxx
+ )
+configure_package_config_file(
+ "${CMAKE_CURRENT_SOURCE_DIR}/netCDFCxxConfig.cmake.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/netCDFCxxConfig.cmake"
+ INSTALL_DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/netCDFCxx"
+ )
+
install(
FILES
+ "${CMAKE_CURRENT_BINARY_DIR}/netCDFCxxConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/netCDF/netCDFCxxConfigVersion.cmake"
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/netCDFCxx
COMPONENT headers
diff --git a/cxx4/CMakeLists.txt b/cxx4/CMakeLists.txt
index b433786..5ef4bed 100644
--- a/cxx4/CMakeLists.txt
+++ b/cxx4/CMakeLists.txt
@@ -32,7 +32,7 @@ SET(ALL_TLL_LIBS ${ALL_TLL_LIBS} ${HDF5_C_LIBRARY_hdf5})
SET(ALL_TLL_LIBS ${ALL_TLL_LIBS} ${EXTRA_DEPS} PARENT_SCOPE)
ADD_LIBRARY(netcdf-cxx4 ${CXX_SOURCES})
-TARGET_INCLUDE_DIRECTORIES(netcdf-cxx4 PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}")
+TARGET_INCLUDE_DIRECTORIES(netcdf-cxx4 PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<INSTALL_INTERFACE:include>)
TARGET_LINK_LIBRARIES(netcdf-cxx4 ${ALL_TLL_LIBS})
SET_TARGET_PROPERTIES(netcdf-cxx4 PROPERTIES
VERSION ${NCXX_LIB_VERSION}
@@ -49,6 +49,7 @@ INSTALL(
)
INSTALL(
TARGETS netcdf-cxx4
+ EXPORT netcdf-cxx4Targets
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}

View File

@@ -0,0 +1,41 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 60c699d..f06fcc0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -395,14 +395,20 @@ ENDIF(NC_HAS_DEF_VAR_FILTER)
###
# Find HDF5
###
-IF(MSVC)
+IF(0)
SET(SEARCH_PACKAGE_NAME ${HDF5_PACKAGE_NAME})
FIND_PACKAGE(HDF5 NAMES ${SEARCH_PACKAGE_NAME} COMPONENTS C HL NO_MODULES REQUIRED ${NC_HDF5_LINK_TYPE})
ELSE(MSVC)
- FIND_PACKAGE(HDF5 COMPONENTS C HL REQUIRED)
+ FIND_PACKAGE(hdf5 CONFIG REQUIRED)
+ set(HDF5_FOUND ${hdf5_FOUND})
+ if (NOT HDF5_USE_STATIC_LIBRARIES)
+ set(HDF5_C_LIBRARY_hdf5 hdf5::hdf5-shared hdf5::hdf5_hl-shared)
+ else()
+ set(HDF5_C_LIBRARY_hdf5 hdf5::hdf5-static hdf5::hdf5_hl-static)
+ endif()
ENDIF(MSVC)
-CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5free_memory "" HAVE_H5FREE_MEMORY)
+set(HAVE_H5FREE_MEMORY ON)
IF(NOT HAVE_H5FREE_MEMORY)
MESSAGE(STATUS "Plugin support requires libhdf5 with H5Free support. Your libhdf5 install does not provide H5Free. Please install a newer version of libhdf5 if you require plugin compression support.")
SET(NC_HAS_DEF_VAR_FILTER "")
diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt
index 30a4a96..1809d29 100644
--- a/plugins/CMakeLists.txt
+++ b/plugins/CMakeLists.txt
@@ -23,7 +23,7 @@ SET_TARGET_PROPERTIES(test_bzip2 PROPERTIES OUTPUT_NAME "bzip2")
SET_TARGET_PROPERTIES(test_bzip2 PROPERTIES LIBRARY_OUTPUT_NAME "h5bzip2")
SET_TARGET_PROPERTIES(test_bzip2 PROPERTIES ARCHIVE_OUTPUT_NAME "h5bzip2")
SET_TARGET_PROPERTIES(test_bzip2 PROPERTIES RUNTIME_OUTPUT_NAME "h5bzip2")
-TARGET_LINK_LIBRARIES(test_bzip2 ${ALL_TLL_LIBS})
+TARGET_LINK_LIBRARIES(test_bzip2 ${ALL_TLL_LIBS} ${HDF5_C_LIBRARY_hdf5})
ADD_LIBRARY(misc MODULE ${libmisc_SOURCES})
SET_TARGET_PROPERTIES(misc PROPERTIES LIBRARY_OUTPUT_NAME "misc")

View File

@@ -0,0 +1,29 @@
# NetCDF CXX Configuration Summary
@PACKAGE_INIT@
include(CMakeFindDependencyMacro)
if (@netCDF_FOUND@)
if(EXISTS "@netCDF_ROOT@")
set(netCDF_ROOT "@netCDF_ROOT@")
endif()
if(EXISTS "@netCDF_DIR@")
set(netCDF_DIR "@netCDF_DIR@")
endif()
find_dependency(netCDF)
set(NETCDF_C_LIBRARY ${netCDF_LIBRARIES})
set(NETCDF_C_INCLUDE_DIR ${netCDF_INCLUDE_DIR})
else()
set(NETCDF_C_LIBRARY "@NETCDF_C_LIBRARY@")
set(NETCDF_C_INCLUDE_DIR "@NETCDF_C_INCLUDE_DIR@")
endif()
if (NOT TARGET netCDF::netcdf)
add_library(netCDF::netcdf UNKNOWN IMPORTED)
set_target_properties(netCDF::netcdf PROPERTIES
IMPORTED_LOCATION "${NETCDF_C_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${NETCDF_C_INCLUDE_DIR}"
)
endif()
include("${CMAKE_CURRENT_LIST_DIR}/netcdf-cxx4Targets.cmake")

View File

@@ -0,0 +1,42 @@
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" HDF5_USE_STATIC_LIBRARIES)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Unidata/netcdf-cxx4
REF f8882188267488ef801691e69ad072e3eb217ad8 # v4.3.1
SHA512 9816acf221d196e21af19d4c3d85484934916e7c018e9b2c96aab9f5660b2f08c5db9cd8254ba3fa5f0aa5f5c5ad7bd3a3aaba559e5e640c5349d44e07a20ed3
HEAD_REF master
PATCHES
fix-dependecy-hdf5.patch
export-cmake-targets.patch
)
#Provided by upstream https://github.com/Unidata/netcdf-cxx4/blob/master/netCDFCxxConfig.cmake.in
file(COPY ${CMAKE_CURRENT_LIST_DIR}/netCDFCxxConfig.cmake.in DESTINATION ${SOURCE_PATH})
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DNCXX_ENABLE_TESTS=OFF
-DCMAKE_INSTALL_CMAKECONFIGDIR=share/netCDFCxx
-DHDF5_USE_STATIC_LIBRARIES=${HDF5_USE_STATIC_LIBRARIES}
# OPTIONS_RELEASE -DOPTIMIZE=1
# OPTIONS_DEBUG -DDEBUGGABLE=1
)
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/netCDFCxx TARGET_PATH share/netCDFCxx)
vcpkg_copy_pdbs()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()
# Handle copyright
file(INSTALL ${SOURCE_PATH}/COPYRIGHT DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)

11
externals/vcpkg/ports/netcdf-cxx4/vcpkg.json vendored Executable file
View File

@@ -0,0 +1,11 @@
{
"name": "netcdf-cxx4",
"version-string": "4.3.1",
"port-version": 3,
"description": "a set of machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data.",
"homepage": "https://github.com/Unidata/netcdf-cxx4",
"dependencies": [
"hdf5",
"netcdf-c"
]
}