aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/highfive
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/highfive')
-rw-r--r--vcpkg/ports/highfive/portfile.cmake44
-rw-r--r--vcpkg/ports/highfive/usage4
-rw-r--r--vcpkg/ports/highfive/vcpkg.json50
3 files changed, 98 insertions, 0 deletions
diff --git a/vcpkg/ports/highfive/portfile.cmake b/vcpkg/ports/highfive/portfile.cmake
new file mode 100644
index 0000000..1c1b0aa
--- /dev/null
+++ b/vcpkg/ports/highfive/portfile.cmake
@@ -0,0 +1,44 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO highfive-devs/highfive
+ REF "v${VERSION}"
+ SHA512 0f72eadfff9b0dd8bcf70654ae5ac526565df58be47d432e5f44fbc5b36b47989061308629ea34d403b9b96362abc2e42e9cbd6eaa78d1ba0326737493468d05
+ HEAD_REF master
+)
+
+vcpkg_check_features(
+ OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ boost HIGHFIVE_TEST_BOOST
+ opencv HIGHFIVE_TEST_OPENCV
+ xtensor HIGHFIVE_TEST_XTENSOR
+ eigen3 HIGHFIVE_TEST_EIGEN
+)
+
+if(HDF5_WITH_PARALLEL)
+ message(STATUS "${HDF5_WITH_PARALLEL} Enabling HIGHFIVE_PARALLEL_HDF5.")
+ list(APPEND FEATURE_OPTIONS "-DHIGHFIVE_PARALLEL_HDF5=ON")
+endif()
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ DISABLE_PARALLEL_CONFIGURE
+ OPTIONS
+ ${FEATURE_OPTIONS}
+ -DHIGHFIVE_UNIT_TESTS=OFF
+ -DHIGHFIVE_EXAMPLES=OFF
+ -DHIGHFIVE_BUILD_DOCS=OFF
+)
+
+vcpkg_cmake_install()
+
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/HighFive)
+if(NOT EXISTS "${CURRENT_PACKAGES_DIR}/share/HighFive/HighFiveConfig.cmake")
+ # left over with mixed case
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/HighFive")
+endif()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug" "${CURRENT_PACKAGES_DIR}/lib")
+
+file(INSTALL "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/highfive/usage b/vcpkg/ports/highfive/usage
new file mode 100644
index 0000000..336af87
--- /dev/null
+++ b/vcpkg/ports/highfive/usage
@@ -0,0 +1,4 @@
+highfive provides CMake targets:
+
+ find_package(HighFive CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE HighFive)
diff --git a/vcpkg/ports/highfive/vcpkg.json b/vcpkg/ports/highfive/vcpkg.json
new file mode 100644
index 0000000..e3d1962
--- /dev/null
+++ b/vcpkg/ports/highfive/vcpkg.json
@@ -0,0 +1,50 @@
+{
+ "name": "highfive",
+ "version": "3.2.0",
+ "description": "HighFive is a modern, user-friendly, header-only, C++14 interface for libhdf5.",
+ "homepage": "https://github.com/highfive-devs/highfive",
+ "license": "BSL-1.0",
+ "dependencies": [
+ {
+ "name": "hdf5",
+ "default-features": false
+ },
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ],
+ "features": {
+ "boost": {
+ "description": "Enable testing Boost features",
+ "dependencies": [
+ "boost-multi-array",
+ "boost-serialization",
+ "boost-system",
+ "boost-ublas"
+ ]
+ },
+ "eigen3": {
+ "description": "Enable testing Eigen",
+ "dependencies": [
+ "eigen3"
+ ]
+ },
+ "opencv": {
+ "description": "Enable testing OpenCV",
+ "dependencies": [
+ "opencv"
+ ]
+ },
+ "xtensor": {
+ "description": "Enable testing xtensor",
+ "dependencies": [
+ "xtensor"
+ ]
+ }
+ }
+}