aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/caf
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/caf')
-rw-r--r--vcpkg/ports/caf/fix_cxx17.patch20
-rw-r--r--vcpkg/ports/caf/fix_dependency.patch11
-rw-r--r--vcpkg/ports/caf/portfile.cmake35
-rw-r--r--vcpkg/ports/caf/vcpkg.json18
4 files changed, 84 insertions, 0 deletions
diff --git a/vcpkg/ports/caf/fix_cxx17.patch b/vcpkg/ports/caf/fix_cxx17.patch
new file mode 100644
index 0000000..7703ca0
--- /dev/null
+++ b/vcpkg/ports/caf/fix_cxx17.patch
@@ -0,0 +1,20 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0622702..f44e0f5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -158,7 +158,6 @@ install(TARGETS caf_internal EXPORT CAFTargets)
+
+ # -- create the libcaf_test target ahead of time for caf_core ------------------
+
+-add_library(libcaf_test)
+
+ # -- add uninstall target if it does not exist yet -----------------------------
+
+@@ -351,7 +350,6 @@ endfunction()
+
+ add_subdirectory(libcaf_core)
+
+-add_subdirectory(libcaf_test)
+
+ if(CAF_ENABLE_NET_MODULE)
+ add_subdirectory(libcaf_net)
diff --git a/vcpkg/ports/caf/fix_dependency.patch b/vcpkg/ports/caf/fix_dependency.patch
new file mode 100644
index 0000000..10636ba
--- /dev/null
+++ b/vcpkg/ports/caf/fix_dependency.patch
@@ -0,0 +1,11 @@
+diff --git a/cmake/CAFConfig.cmake.in b/cmake/CAFConfig.cmake.in
+index 1a2348c..6c0d0b2 100644
+--- a/cmake/CAFConfig.cmake.in
++++ b/cmake/CAFConfig.cmake.in
+@@ -5,5 +5,6 @@ include(CMakeFindDependencyMacro)
+ set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
+ set(THREADS_PREFER_PTHREAD_FLAG TRUE)
+ find_dependency(Threads)
++find_dependency(OpenSSL REQUIRED)
+
+ include("${CMAKE_CURRENT_LIST_DIR}/CAFTargets.cmake")
diff --git a/vcpkg/ports/caf/portfile.cmake b/vcpkg/ports/caf/portfile.cmake
new file mode 100644
index 0000000..93afa34
--- /dev/null
+++ b/vcpkg/ports/caf/portfile.cmake
@@ -0,0 +1,35 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO actor-framework/actor-framework
+ REF "${VERSION}"
+ SHA512 496bca714b3d84dafe155f775229e1b6190aae092ab82f8c098af4b0268cd565b980624e93436f5ccba34bac350c62a03ff46b9bddaa1c9bc646d78a2338c53a
+ HEAD_REF main
+ PATCHES
+ fix_dependency.patch
+ fix_cxx17.patch
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DCAF_ENABLE_CURL_EXAMPLES=OFF
+ -DCAF_ENABLE_PROTOBUF_EXAMPLES=OFF
+ -DCAF_ENABLE_QT6_EXAMPLES=OFF
+ -DCAF_ENABLE_RUNTIME_CHECKS=OFF
+ -DCAF_ENABLE_ACTOR_PROFILER=OFF
+ -DCAF_ENABLE_EXAMPLES=OFF
+ -DCAF_ENABLE_TESTING=OFF
+ -DCAF_ENABLE_IO_MODULE=ON
+ -DCAF_ENABLE_EXCEPTIONS=ON
+)
+
+vcpkg_cmake_install()
+
+vcpkg_cmake_config_fixup(PACKAGE_NAME CAF CONFIG_PATH lib/cmake/CAF)
+
+vcpkg_copy_pdbs()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/caf/internal")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/caf/vcpkg.json b/vcpkg/ports/caf/vcpkg.json
new file mode 100644
index 0000000..1d74e3a
--- /dev/null
+++ b/vcpkg/ports/caf/vcpkg.json
@@ -0,0 +1,18 @@
+{
+ "name": "caf",
+ "version": "1.0.2",
+ "description": "an open source implementation of the actor model for C++ featuring lightweight & fast actor implementations, pattern matching for messages, network transparent messaging, and more.",
+ "homepage": "https://github.com/actor-framework/actor-framework",
+ "license": "BSD-3-Clause",
+ "dependencies": [
+ "openssl",
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}