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/asiosdk | |
Diffstat (limited to 'vcpkg/ports/asiosdk')
| -rw-r--r-- | vcpkg/ports/asiosdk/Findasiosdk.cmake | 44 | ||||
| -rw-r--r-- | vcpkg/ports/asiosdk/portfile.cmake | 34 | ||||
| -rw-r--r-- | vcpkg/ports/asiosdk/usage | 4 | ||||
| -rw-r--r-- | vcpkg/ports/asiosdk/vcpkg-cmake-wrapper.cmake | 6 | ||||
| -rw-r--r-- | vcpkg/ports/asiosdk/vcpkg.json | 7 |
5 files changed, 95 insertions, 0 deletions
diff --git a/vcpkg/ports/asiosdk/Findasiosdk.cmake b/vcpkg/ports/asiosdk/Findasiosdk.cmake new file mode 100644 index 0000000..c88f7df --- /dev/null +++ b/vcpkg/ports/asiosdk/Findasiosdk.cmake @@ -0,0 +1,44 @@ +if(WIN32)
+else(WIN32)
+ message(FATAL_ERROR "Findasiosdk.cmake: Unsupported platform ${CMAKE_SYSTEM_NAME}" )
+endif(WIN32)
+
+# if this script is invoked multiple times, we end up adding
+# "asiosdk" to the directory multiple times, leading to incorrect
+# include paths
+if (ASIOSDK_ROOT_DIR)
+ return()
+endif()
+
+find_path(
+ ASIOSDK_ROOT_DIR
+ asiosdk
+)
+
+if (NOT "${ASIOSDK_ROOT_DIR}" STREQUAL "")
+ set(ASIOSDK_ROOT_DIR
+ ${ASIOSDK_ROOT_DIR}/asiosdk
+ )
+endif()
+
+find_path(ASIOSDK_INCLUDE_DIR
+ asio.h
+ PATHS
+ ${ASIOSDK_ROOT_DIR}/common
+)
+
+
+if (NOT "${ASIOSDK_ROOT_DIR}" STREQUAL "")
+ set (ASIOSDK_INCLUDE_DIR
+ ${ASIOSDK_ROOT_DIR}/common
+ ${ASIOSDK_ROOT_DIR}/host
+ ${ASIOSDK_ROOT_DIR}/hostpc
+ )
+endif()
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(ASIOSDK DEFAULT_MSG ASIOSDK_ROOT_DIR ASIOSDK_INCLUDE_DIR)
+
+MARK_AS_ADVANCED(
+ ASIOSDK_ROOT_DIR ASIOSDK_INCLUDE_DIR
+)
diff --git a/vcpkg/ports/asiosdk/portfile.cmake b/vcpkg/ports/asiosdk/portfile.cmake new file mode 100644 index 0000000..985a6b0 --- /dev/null +++ b/vcpkg/ports/asiosdk/portfile.cmake @@ -0,0 +1,34 @@ +vcpkg_download_distfile(ARCHIVE
+ URLS "https://download.steinberg.net/sdk_downloads/ASIO-SDK_2.3.4_2025-10-15.zip"
+ FILENAME "ASIO-SDK_2.3.4_2025-10-15-57de2c0cd0df.zip"
+ SHA512 57de2c0cd0df0783275987e08255abfa49da12982f9d462ac40b7f57300c36e024dcb65d100b799fb3c96a9c7c5ee86e61ceb0e68d2839324206c1629d3905ed
+)
+
+vcpkg_extract_source_archive(
+ SOURCE_PATH
+ ARCHIVE "${ARCHIVE}"
+ SOURCE_BASE "${VERSION}"
+)
+
+file(INSTALL "${SOURCE_PATH}/asio/" DESTINATION "${CURRENT_PACKAGES_DIR}/include/${PORT}/asio")
+file(INSTALL "${SOURCE_PATH}/common/" DESTINATION "${CURRENT_PACKAGES_DIR}/include/${PORT}/common")
+file(INSTALL "${SOURCE_PATH}/driver/" DESTINATION "${CURRENT_PACKAGES_DIR}/include/${PORT}/driver")
+file(INSTALL "${SOURCE_PATH}/host/" DESTINATION "${CURRENT_PACKAGES_DIR}/include/${PORT}/host")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.txt")
+
+file(
+ INSTALL
+ "${SOURCE_PATH}/changes.txt"
+ "${SOURCE_PATH}/Steinberg ASIO Logo Artwork"
+ "${SOURCE_PATH}/Steinberg ASIO Usage Guidelines.pdf"
+ "${SOURCE_PATH}/Steinberg ASIO Licensing Agreement.pdf"
+ "${SOURCE_PATH}/Steinberg ASIO SDK 2.3.pdf"
+ "${SOURCE_PATH}/README.md"
+ "${CMAKE_CURRENT_LIST_DIR}/Findasiosdk.cmake"
+ "${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake"
+ DESTINATION
+ "${CURRENT_PACKAGES_DIR}/share/${PORT}"
+)
+
+file(COPY "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
diff --git a/vcpkg/ports/asiosdk/usage b/vcpkg/ports/asiosdk/usage new file mode 100644 index 0000000..3827cfa --- /dev/null +++ b/vcpkg/ports/asiosdk/usage @@ -0,0 +1,4 @@ +The package asiosdk provides CMake integration:
+
+ find_package(asiosdk REQUIRED)
+ target_include_directories(main PRIVATE ${ASIOSDK_INCLUDE_DIR})
diff --git a/vcpkg/ports/asiosdk/vcpkg-cmake-wrapper.cmake b/vcpkg/ports/asiosdk/vcpkg-cmake-wrapper.cmake new file mode 100644 index 0000000..df14d7c --- /dev/null +++ b/vcpkg/ports/asiosdk/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,6 @@ +set(ASIOSDK_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
+list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
+
+_find_package(${ARGS})
+
+set(CMAKE_MODULE_PATH ${ASIOSDK_PREV_MODULE_PATH})
diff --git a/vcpkg/ports/asiosdk/vcpkg.json b/vcpkg/ports/asiosdk/vcpkg.json new file mode 100644 index 0000000..cbaf38b --- /dev/null +++ b/vcpkg/ports/asiosdk/vcpkg.json @@ -0,0 +1,7 @@ +{ + "name": "asiosdk", + "version": "2.3.4", + "description": "ASIO is a low latency audio API from Steinberg.", + "homepage": "https://www.steinberg.net/developers/asiosdk-open/", + "supports": "windows & !(arm | uwp)" +} |