Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions ports/netcdf-c/CONTROL
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Source: netcdf-c
Version: 4.7.3
Port-Version: 3
Build-Depends: hdf5, curl, embree3(linux|osx)
Port-Version: 4
Build-Depends: hdf5, curl, embree3
Comment thread
JackBoosY marked this conversation as resolved.
Outdated
Homepage: https://github.com/Unidata/netcdf-c
Description: a set of self-describing, machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data.
25 changes: 25 additions & 0 deletions ports/netcdf-c/fix-dependency-libmath.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 35c694f..e2c03e5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -839,7 +839,7 @@ ENDIF()

# Check for the math library so it can be explicitly linked.
IF(NOT WIN32)
- FIND_LIBRARY(HAVE_LIBM NAMES math m libm)
+ FIND_LIBRARY(HAVE_LIBM NAMES m libm math)
MESSAGE(STATUS "Found Math library: ${HAVE_LIBM}")
IF(NOT HAVE_LIBM)
MESSAGE(FATAL_ERROR "Unable to find the math library.")
diff --git a/netCDFConfig.cmake.in b/netCDFConfig.cmake.in
index 102828f..c5052cc 100644
--- a/netCDFConfig.cmake.in
+++ b/netCDFConfig.cmake.in
@@ -16,6 +16,7 @@ include(CMakeFindDependencyMacro)
find_dependency(ZLIB)
find_dependency(HDF5 CONFIG)
find_dependency(CURL CONFIG)
+find_dependency(embree CONFIG)
Comment thread
JackBoosY marked this conversation as resolved.
Outdated
Comment thread
JackBoosY marked this conversation as resolved.
Outdated
include("${CMAKE_CURRENT_LIST_DIR}/netCDFTargets.cmake")

# Compiling Options
1 change: 1 addition & 0 deletions ports/netcdf-c/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ vcpkg_from_github(
config-pkg-location.patch
use_targets.patch
mpi.patch
fix-dependency-libmath.patch
)

#Remove outdated find modules
Expand Down
2 changes: 1 addition & 1 deletion ports/netcdf-c/usage
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
The package netcdf-c provides CMake targets:

find_package(netCDF CONFIG REQUIRED)
target_link_libraries(main PRIVATE netcdf)
target_link_libraries(main PRIVATE netcdf)
1 change: 1 addition & 0 deletions ports/netcdf-cxx4/CONTROL
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Source: netcdf-cxx4
Version: 4.3.1
Port-Version: 1
Build-Depends: hdf5, netcdf-c
Homepage: https://github.com/Unidata/netcdf-cxx4
Description: a set of machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data.
43 changes: 26 additions & 17 deletions ports/netcdf-cxx4/fix-dependecy-hdf5.patch
Original file line number Diff line number Diff line change
@@ -1,32 +1,41 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 60c699d..6bd7822 100644
index 60c699d..f06fcc0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -402,7 +402,7 @@ ELSE(MSVC)
FIND_PACKAGE(HDF5 COMPONENTS C HL REQUIRED)
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/CMakeLists.txt b/CMakeLists.txt
index 6a48709..79de128 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -399,7 +399,13 @@ IF(MSVC)
@@ -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 (BUILD_SHARED_LIBS)
+ 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)

set(HAVE_H5FREE_MEMORY ON)
-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")
4 changes: 2 additions & 2 deletions ports/netcdf-cxx4/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" HDF5_USE_STATIC_LIBRARIES)

set(HDF5_USE_STATIC_LIBRARIES ON)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
Expand Down