aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/liblsl
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/liblsl')
-rw-r--r--vcpkg/ports/liblsl/portfile.cmake32
-rw-r--r--vcpkg/ports/liblsl/use-find-package-asio.patch15
-rw-r--r--vcpkg/ports/liblsl/vcpkg.json33
3 files changed, 80 insertions, 0 deletions
diff --git a/vcpkg/ports/liblsl/portfile.cmake b/vcpkg/ports/liblsl/portfile.cmake
new file mode 100644
index 0000000..d862c2a
--- /dev/null
+++ b/vcpkg/ports/liblsl/portfile.cmake
@@ -0,0 +1,32 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO sccn/liblsl
+ REF v${VERSION}
+ SHA512 141f364034a7156caf9ffafbb2f43cc9a932116a3ef1c1b76822649996d6b99b3017b18d91d9c25a9cd718419c5c3b037fa97b2845540bda195f55dd9de27ab1
+ HEAD_REF master
+ PATCHES
+ use-find-package-asio.patch
+)
+
+string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" LSL_BUILD_STATIC)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DLSL_BUILD_STATIC=${LSL_BUILD_STATIC}
+ -DLSL_BUNDLED_BOOST=OFF # we use the boost vcpkg packages instead
+ -DLSL_BUNDLED_PUGIXML=OFF # we use the pugixml vcpkg package instead
+ -Dlslgitrevision=v${VERSION}
+ -Dlslgitbranch=master
+)
+
+vcpkg_cmake_install()
+vcpkg_copy_pdbs()
+vcpkg_copy_tools(TOOL_NAMES lslver AUTO_CLEAN)
+vcpkg_cmake_config_fixup(PACKAGE_NAME LSL CONFIG_PATH lib/cmake/LSL)
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+
+file(INSTALL "${SOURCE_PATH}/README.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
+file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/vcpkg/ports/liblsl/use-find-package-asio.patch b/vcpkg/ports/liblsl/use-find-package-asio.patch
new file mode 100644
index 0000000..be837c6
--- /dev/null
+++ b/vcpkg/ports/liblsl/use-find-package-asio.patch
@@ -0,0 +1,15 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b47cb7f8..bd12f519 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -203,8 +203,9 @@ target_include_directories(lslobj
+ target_include_directories(lslobj
+ SYSTEM PUBLIC
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/thirdparty/loguru>
+- $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/thirdparty/asio>
+ )
++find_package(asio CONFIG REQUIRED)
++target_link_libraries(lslobj PUBLIC asio::asio)
+ target_compile_definitions(lslobj PRIVATE
+ LIBLSL_EXPORTS
+ LOGURU_DEBUG_LOGGING=$<BOOL:${LSL_DEBUGLOG}>
diff --git a/vcpkg/ports/liblsl/vcpkg.json b/vcpkg/ports/liblsl/vcpkg.json
new file mode 100644
index 0000000..2c2b3db
--- /dev/null
+++ b/vcpkg/ports/liblsl/vcpkg.json
@@ -0,0 +1,33 @@
+{
+ "name": "liblsl",
+ "version": "1.16.2",
+ "description": "C++ lsl library for multi-modal time-synched data transmission over the local network",
+ "homepage": "https://github.com/sccn/liblsl",
+ "license": "MIT",
+ "supports": "!uwp",
+ "dependencies": [
+ "asio",
+ "boost-atomic",
+ "boost-bind",
+ "boost-chrono",
+ "boost-config",
+ "boost-endian",
+ "boost-functional",
+ "boost-integer",
+ "boost-lexical-cast",
+ "boost-math",
+ "boost-serialization",
+ "boost-smart-ptr",
+ "boost-thread",
+ "boost-uuid",
+ "pugixml",
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}