aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/sockpp
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/sockpp')
-rw-r--r--vcpkg/ports/sockpp/android-strerror_r.diff13
-rw-r--r--vcpkg/ports/sockpp/portfile.cmake31
-rw-r--r--vcpkg/ports/sockpp/vcpkg.json19
3 files changed, 63 insertions, 0 deletions
diff --git a/vcpkg/ports/sockpp/android-strerror_r.diff b/vcpkg/ports/sockpp/android-strerror_r.diff
new file mode 100644
index 0000000..b594dbc
--- /dev/null
+++ b/vcpkg/ports/sockpp/android-strerror_r.diff
@@ -0,0 +1,13 @@
+diff --git a/src/exception.cpp b/src/exception.cpp
+index 72aae7e..7a56c60 100644
+--- a/src/exception.cpp
++++ b/src/exception.cpp
+@@ -66,7 +66,7 @@ string sys_error::error_str(int err)
+ buf, sizeof(buf), NULL);
+ #else
+ #ifdef _GNU_SOURCE
+- #if !defined(__GLIBC__)
++ #if !defined(__GLIBC__) && !defined(__ANDROID__)
+ // use the XSI standard behavior.
+ int e = strerror_r(err, buf, sizeof(buf));
+ auto s = strerror(e);
diff --git a/vcpkg/ports/sockpp/portfile.cmake b/vcpkg/ports/sockpp/portfile.cmake
new file mode 100644
index 0000000..c50b66b
--- /dev/null
+++ b/vcpkg/ports/sockpp/portfile.cmake
@@ -0,0 +1,31 @@
+vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO fpagliughi/sockpp
+ REF "v${VERSION}"
+ SHA512 99191c9551ff345f96af9177d124c6e10f3da8e87021576058b63df82ee64461cb8fc134919fe390617200aebf222e70501e3cee43fc0a294596947669ed4f03
+ HEAD_REF master
+ PATCHES
+ android-strerror_r.diff
+)
+
+vcpkg_replace_string("${SOURCE_PATH}/CMakeLists.txt" "\${SOCKPP}-static" "\${SOCKPP}" IGNORE_UNCHANGED)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DSOCKPP_BUILD_SHARED=OFF
+ -DSOCKPP_BUILD_STATIC=ON
+ -DSOCKPP_BUILD_DOCUMENTATION=OFF
+ -DSOCKPP_BUILD_EXAMPLES=OFF
+ -DSOCKPP_BUILD_TESTS=OFF
+)
+
+vcpkg_cmake_install()
+
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/${PORT})
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/sockpp/vcpkg.json b/vcpkg/ports/sockpp/vcpkg.json
new file mode 100644
index 0000000..16dd575
--- /dev/null
+++ b/vcpkg/ports/sockpp/vcpkg.json
@@ -0,0 +1,19 @@
+{
+ "name": "sockpp",
+ "version": "1.0.0",
+ "port-version": 2,
+ "description": "Simple, modern, C++ socket library. This is a fairly low-level C++ wrapper around the Berkeley sockets library using socket, acceptor, and connector classes that are familiar concepts from other languages.",
+ "homepage": "https://github.com/fpagliughi/sockpp",
+ "license": "BSD-3-Clause",
+ "supports": "!uwp",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}