mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-06-07 12:17:05 +08:00
[netcdf-c] Fix dependency libmath (#12434)
* [netcdf-c] Add dependency embree3 * [netcdf-c] remove dependency embree3, change the search sequence * [netcdf-cxx4] Re-fix dependency hdf5 * Update ports/netcdf-c/CONTROL * [netcdf-c] Remove dependency embree
This commit is contained in:
parent
fa1823dcad
commit
7ad0f085d7
@ -1,6 +1,6 @@
|
|||||||
Source: netcdf-c
|
Source: netcdf-c
|
||||||
Version: 4.7.3
|
Version: 4.7.3
|
||||||
Port-Version: 3
|
Port-Version: 4
|
||||||
Build-Depends: hdf5, curl, embree3(linux|osx)
|
Build-Depends: hdf5, curl
|
||||||
Homepage: https://github.com/Unidata/netcdf-c
|
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.
|
Description: a set of self-describing, machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data.
|
||||||
|
13
ports/netcdf-c/fix-dependency-libmath.patch
Normal file
13
ports/netcdf-c/fix-dependency-libmath.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
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.")
|
@ -9,6 +9,7 @@ vcpkg_from_github(
|
|||||||
config-pkg-location.patch
|
config-pkg-location.patch
|
||||||
use_targets.patch
|
use_targets.patch
|
||||||
mpi.patch
|
mpi.patch
|
||||||
|
fix-dependency-libmath.patch
|
||||||
)
|
)
|
||||||
|
|
||||||
#Remove outdated find modules
|
#Remove outdated find modules
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
The package netcdf-c provides CMake targets:
|
The package netcdf-c provides CMake targets:
|
||||||
|
|
||||||
find_package(netCDF CONFIG REQUIRED)
|
find_package(netCDF CONFIG REQUIRED)
|
||||||
target_link_libraries(main PRIVATE netcdf)
|
target_link_libraries(main PRIVATE netcdf)
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
Source: netcdf-cxx4
|
Source: netcdf-cxx4
|
||||||
Version: 4.3.1
|
Version: 4.3.1
|
||||||
|
Port-Version: 1
|
||||||
Build-Depends: hdf5, netcdf-c
|
Build-Depends: hdf5, netcdf-c
|
||||||
Homepage: https://github.com/Unidata/netcdf-cxx4
|
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.
|
Description: a set of machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data.
|
||||||
|
@ -1,9 +1,24 @@
|
|||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
index 60c699d..6bd7822 100644
|
index 60c699d..f06fcc0 100644
|
||||||
--- a/CMakeLists.txt
|
--- a/CMakeLists.txt
|
||||||
+++ b/CMakeLists.txt
|
+++ b/CMakeLists.txt
|
||||||
@@ -402,7 +402,7 @@ ELSE(MSVC)
|
@@ -395,14 +395,20 @@ ENDIF(NC_HAS_DEF_VAR_FILTER)
|
||||||
FIND_PACKAGE(HDF5 COMPONENTS C HL REQUIRED)
|
###
|
||||||
|
# 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)
|
ENDIF(MSVC)
|
||||||
|
|
||||||
-CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5free_memory "" HAVE_H5FREE_MEMORY)
|
-CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5free_memory "" HAVE_H5FREE_MEMORY)
|
||||||
@ -11,22 +26,16 @@ index 60c699d..6bd7822 100644
|
|||||||
IF(NOT HAVE_H5FREE_MEMORY)
|
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.")
|
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 "")
|
SET(NC_HAS_DEF_VAR_FILTER "")
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt
|
||||||
index 6a48709..79de128 100644
|
index 30a4a96..1809d29 100644
|
||||||
--- a/CMakeLists.txt
|
--- a/plugins/CMakeLists.txt
|
||||||
+++ b/CMakeLists.txt
|
+++ b/plugins/CMakeLists.txt
|
||||||
@@ -399,7 +399,13 @@ IF(MSVC)
|
@@ -23,7 +23,7 @@ SET_TARGET_PROPERTIES(test_bzip2 PROPERTIES OUTPUT_NAME "bzip2")
|
||||||
SET(SEARCH_PACKAGE_NAME ${HDF5_PACKAGE_NAME})
|
SET_TARGET_PROPERTIES(test_bzip2 PROPERTIES LIBRARY_OUTPUT_NAME "h5bzip2")
|
||||||
FIND_PACKAGE(HDF5 NAMES ${SEARCH_PACKAGE_NAME} COMPONENTS C HL NO_MODULES REQUIRED ${NC_HDF5_LINK_TYPE})
|
SET_TARGET_PROPERTIES(test_bzip2 PROPERTIES ARCHIVE_OUTPUT_NAME "h5bzip2")
|
||||||
ELSE(MSVC)
|
SET_TARGET_PROPERTIES(test_bzip2 PROPERTIES RUNTIME_OUTPUT_NAME "h5bzip2")
|
||||||
- FIND_PACKAGE(HDF5 COMPONENTS C HL REQUIRED)
|
-TARGET_LINK_LIBRARIES(test_bzip2 ${ALL_TLL_LIBS})
|
||||||
+ FIND_PACKAGE(hdf5 CONFIG REQUIRED)
|
+TARGET_LINK_LIBRARIES(test_bzip2 ${ALL_TLL_LIBS} ${HDF5_C_LIBRARY_hdf5})
|
||||||
+ set(HDF5_FOUND ${hdf5_FOUND})
|
|
||||||
+ if (BUILD_SHARED_LIBS)
|
|
||||||
+ 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)
|
ADD_LIBRARY(misc MODULE ${libmisc_SOURCES})
|
||||||
|
SET_TARGET_PROPERTIES(misc PROPERTIES LIBRARY_OUTPUT_NAME "misc")
|
||||||
|
@ -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(
|
vcpkg_from_github(
|
||||||
OUT_SOURCE_PATH SOURCE_PATH
|
OUT_SOURCE_PATH SOURCE_PATH
|
||||||
|
Loading…
Reference in New Issue
Block a user