diff options
Diffstat (limited to 'vcpkg/ports/oscpack')
| -rw-r--r-- | vcpkg/ports/oscpack/add-cmake-install-target.patch | 51 | ||||
| -rw-r--r-- | vcpkg/ports/oscpack/link-ws2_32-and-winmm.patch | 25 | ||||
| -rw-r--r-- | vcpkg/ports/oscpack/portfile.cmake | 31 | ||||
| -rw-r--r-- | vcpkg/ports/oscpack/usage | 10 | ||||
| -rw-r--r-- | vcpkg/ports/oscpack/vcpkg.json | 18 |
5 files changed, 135 insertions, 0 deletions
diff --git a/vcpkg/ports/oscpack/add-cmake-install-target.patch b/vcpkg/ports/oscpack/add-cmake-install-target.patch new file mode 100644 index 0000000..569583b --- /dev/null +++ b/vcpkg/ports/oscpack/add-cmake-install-target.patch @@ -0,0 +1,51 @@ +From 3a7ee65ecf43b97cc4a8c7cea5493de0d2b992fa Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= <daschuer@mixxx.org> +Date: Wed, 15 Jan 2025 07:58:23 +0100 +Subject: [PATCH] Add cmake install target + +--- + CMakeLists.txt | 28 ++++++++++++++++++++++++++++ + 1 file changed, 28 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e8bef70..4f200b2 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -42,6 +42,34 @@ osc/OscOutboundPacketStream.cpp + + ) + ++set(IP_HEADERS ++ ip/IpEndpointName.h ++ ip/NetworkingUtils.h ++ ip/PacketListener.h ++ ip/TimerListener.h ++ ip/UdpSocket.h ++) ++ ++ ++set(OSC_HEADERS ++ osc/MessageMappingOscPacketListener.h ++ osc/OscException.h ++ osc/OscHostEndianness.h ++ osc/OscOutboundPacketStream.h ++ osc/OscPacketListener.h ++ osc/OscPrintReceivedElements.h ++ osc/OscReceivedElements.h ++ osc/OscTypes.h ++) ++ ++INSTALL(TARGETS oscpack ++ RUNTIME DESTINATION bin ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib ++) ++ ++INSTALL(FILES ${IP_HEADERS} DESTINATION include/ip) ++INSTALL(FILES ${OSC_HEADERS} DESTINATION include/osc) + + ADD_EXECUTABLE(OscUnitTests tests/OscUnitTests.cpp) + TARGET_LINK_LIBRARIES(OscUnitTests oscpack ${LIBS}) +-- +2.34.1 + diff --git a/vcpkg/ports/oscpack/link-ws2_32-and-winmm.patch b/vcpkg/ports/oscpack/link-ws2_32-and-winmm.patch new file mode 100644 index 0000000..e4f51c6 --- /dev/null +++ b/vcpkg/ports/oscpack/link-ws2_32-and-winmm.patch @@ -0,0 +1,25 @@ +From d2a920a78f3b29df26d8e1e8ca6a0e93260999db Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= <daschuer@mixxx.org> +Date: Wed, 15 Jan 2025 21:56:46 +0100 +Subject: [PATCH] link Ws2_32 and winmm + +--- + CMakeLists.txt | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 1fc1fbe..1b3c4aa 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -43,6 +43,8 @@ osc/OscOutboundPacketStream.cpp + + ) + ++TARGET_LINK_LIBRARIES(oscpack PRIVATE ${LIBS}) ++ + set(IP_HEADERS + ip/IpEndpointName.h + ip/NetworkingUtils.h +-- +2.34.1 + diff --git a/vcpkg/ports/oscpack/portfile.cmake b/vcpkg/ports/oscpack/portfile.cmake new file mode 100644 index 0000000..06cc79b --- /dev/null +++ b/vcpkg/ports/oscpack/portfile.cmake @@ -0,0 +1,31 @@ +if (VCPKG_TARGET_IS_WINDOWS) + # This can (and should) be removed if oscpack ever supports dynamically linking on Windows + vcpkg_check_linkage(ONLY_STATIC_LIBRARY) +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO RossBencina/oscpack + REF release_1_1_0 + SHA512 7a61a364cab4914c81e113d7aeee2b4accf5e560f500df6634232e0093f564ed4bb0ef8e87d2c8a18f245b0c7ec25f41e64f42f20a6654c22bb5c02aa253bbd0 + PATCHES + add-cmake-install-target.patch + link-ws2_32-and-winmm.patch +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" +) + +vcpkg_cmake_build() + +vcpkg_cmake_install() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +# Handle copyright +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") + +file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" + DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") + diff --git a/vcpkg/ports/oscpack/usage b/vcpkg/ports/oscpack/usage new file mode 100644 index 0000000..2f318be --- /dev/null +++ b/vcpkg/ports/oscpack/usage @@ -0,0 +1,10 @@ +oscpack can be used from CMake via: + + find_path(OSCPACK_INCLUDE_DIRS "osc" PATH_SUFFIXES "oscpack") + find_library(OSCPACK_LIBRARY oscpack REQUIRED) + target_include_directories(main PRIVATE ${OSCPACK_INCLUDE_DIRS}) + target_link_libraries(main PRIVATE ${OSCPACK_LIBRARY}) + +In case of Windows static link in addition: + + target_link_libraries(main PRIVATE ws2_32 winmm) diff --git a/vcpkg/ports/oscpack/vcpkg.json b/vcpkg/ports/oscpack/vcpkg.json new file mode 100644 index 0000000..beb1274 --- /dev/null +++ b/vcpkg/ports/oscpack/vcpkg.json @@ -0,0 +1,18 @@ +{ + "name": "oscpack", + "version": "1.1.0", + "description": "A simple C++ Open Sound Control (OSC) packet manipulation library", + "homepage": "http://www.rossbencina.com/code/oscpack", + "license": null, + "supports": "!(windows & !static)", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |