diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/parallelstl | |
Diffstat (limited to 'vcpkg/ports/parallelstl')
| -rw-r--r-- | vcpkg/ports/parallelstl/fix-cmakelist.patch | 32 | ||||
| -rw-r--r-- | vcpkg/ports/parallelstl/portfile.cmake | 27 | ||||
| -rw-r--r-- | vcpkg/ports/parallelstl/vcpkg.json | 18 |
3 files changed, 77 insertions, 0 deletions
diff --git a/vcpkg/ports/parallelstl/fix-cmakelist.patch b/vcpkg/ports/parallelstl/fix-cmakelist.patch new file mode 100644 index 0000000..01a2c22 --- /dev/null +++ b/vcpkg/ports/parallelstl/fix-cmakelist.patch @@ -0,0 +1,32 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 878b212..caa3cba 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -44,7 +44,7 @@ add_library(pstl::ParallelSTL ALIAS ParallelSTL)
+ if (PARALLELSTL_USE_PARALLEL_POLICIES)
+ message(STATUS "Using Parallel Policies")
+ if (PARALLELSTL_BACKEND STREQUAL "tbb")
+- find_package(TBB 2018 REQUIRED tbb OPTIONAL_COMPONENTS tbbmalloc)
++ find_package(TBB CONFIG REQUIRED tbb OPTIONAL_COMPONENTS tbbmalloc)
+ message(STATUS "Parallel STL uses TBB ${TBB_VERSION} (interface version: ${TBB_INTERFACE_VERSION})")
+ target_link_libraries(ParallelSTL INTERFACE TBB::tbb)
+ else()
+@@ -64,8 +64,7 @@ target_include_directories(ParallelSTL
+ INTERFACE
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/stdlib>
+- $<INSTALL_INTERFACE:include>
+- $<INSTALL_INTERFACE:stdlib>)
++ $<INSTALL_INTERFACE:include>)
+
+ target_compile_features(ParallelSTL
+ INTERFACE
+@@ -100,6 +99,8 @@ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ParallelSTLConfig.cmake"
+ DESTINATION lib/cmake/ParallelSTL)
+ install(DIRECTORY include/pstl
+ DESTINATION include)
++file(GLOB STDLIB_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/stdlib/pstl/*)
++install(FILES ${STDLIB_HEADERS} DESTINATION include/pstl)
+
+ add_custom_target(install-pstl
+ COMMAND "${CMAKE_COMMAND}" -P "${PROJECT_BINARY_DIR}/cmake_install.cmake" -DCOMPONENT=ParallelSTL)
diff --git a/vcpkg/ports/parallelstl/portfile.cmake b/vcpkg/ports/parallelstl/portfile.cmake new file mode 100644 index 0000000..efc6b64 --- /dev/null +++ b/vcpkg/ports/parallelstl/portfile.cmake @@ -0,0 +1,27 @@ +vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO intel/parallelstl
+ REF 0241743d73bb405b16d9c4a24b693e4533dc34a7 # 20200330
+ SHA512 cd2f1b60639e9da35a722bdef0bc6420ddca064e3bff979d8a6ea591fb43865b7614c811bced642fd5ff1fab659da1dfaa248dc2b321db7f27d0e74544a2f21e
+ HEAD_REF master
+ PATCHES
+ fix-cmakelist.patch
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DPARALLELSTL_USE_PARALLEL_POLICIES=ON
+)
+
+vcpkg_cmake_install()
+
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/ParallelSTL)
+
+vcpkg_copy_pdbs()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib")
+
+# Handle copyright
+file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/vcpkg/ports/parallelstl/vcpkg.json b/vcpkg/ports/parallelstl/vcpkg.json new file mode 100644 index 0000000..8cae816 --- /dev/null +++ b/vcpkg/ports/parallelstl/vcpkg.json @@ -0,0 +1,18 @@ +{ + "name": "parallelstl", + "version": "20200330", + "port-version": 3, + "description": "Parallel STL is an implementation of the C++ standard library algorithms with support for execution policies, as specified in ISO/IEC 14882:2017 standard, commonly called C++17.", + "homepage": "https://github.com/intel/parallelstl", + "dependencies": [ + "tbb", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |