[asiosdk] Add new port (#9456)

* [asiosdk] Add new port

* specified vcpkg_fail_port_install for non-windows platforms

* specified vcpkg_fail_port_install for arm & uwp platforms

* added entries for asiosdk into scripts/ci.baseline.txt
This commit is contained in:
Michael Mattsson 2020-01-27 17:14:26 -05:00 committed by Victor Romero
parent 28b70b41c4
commit 6ab471d09e
6 changed files with 90 additions and 0 deletions

4
ports/asiosdk/CONTROL Normal file
View File

@ -0,0 +1,4 @@
Source: asiosdk
Version: 2.3.3
Homepage: https://www.steinberg.net/en/company/developers.html
Description: ASIO is a low latency audio API from Steinberg.

View File

@ -0,0 +1,37 @@
if(WIN32)
else(WIN32)
message(FATAL_ERROR "Findasiosdk.cmake: Unsupported platform ${CMAKE_SYSTEM_NAME}" )
endif(WIN32)
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
)

View File

@ -0,0 +1,32 @@
vcpkg_fail_port_install(MESSAGE "asiosdk currently only supports Windows platforms" ON_ARCH "arm" "arm64" ON_TARGET "Linux" "OSX" "uwp")
set(VERSION 2.3.3)
vcpkg_download_distfile(ARCHIVE
URLS "https://download.steinberg.net/sdk_downloads/asiosdk_2.3.3_2019-06-14.zip"
FILENAME "asiosdk_2.3.3_2019-06-14.zip"
SHA512 65d6f2fa4f0e23939fcdf46ff3b04760089c0f14e2ac3e37e63cbf6733f3acc93ab930ea9e3f1eb60483d4654f7ba4699ed506531074c4f55e763ad92736c231
)
vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH SOURCE_PATH
ARCHIVE ${ARCHIVE}
REF ${VERSION}
)
file(INSTALL ${SOURCE_PATH}/asio/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/asiosdk/asio)
file(INSTALL ${SOURCE_PATH}/common/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/asiosdk/common)
file(INSTALL ${SOURCE_PATH}/driver/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/asiosdk/driver)
file(INSTALL ${SOURCE_PATH}/host/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/asiosdk/host)
file(INSTALL ${SOURCE_PATH}/readme.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/asiosdk)
file(INSTALL ${SOURCE_PATH}/readme.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/asiosdk RENAME copyright)
file(INSTALL ${SOURCE_PATH}/changes.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/asiosdk)
file(INSTALL "${SOURCE_PATH}/Steinberg ASIO Logo Artwork.zip" DESTINATION ${CURRENT_PACKAGES_DIR}/share/asiosdk)
file(INSTALL "${SOURCE_PATH}/Steinberg ASIO Licensing Agreement.pdf" DESTINATION ${CURRENT_PACKAGES_DIR}/share/asiosdk)
file(INSTALL "${SOURCE_PATH}/ASIO SDK 2.3.pdf" DESTINATION ${CURRENT_PACKAGES_DIR}/share/asiosdk)
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/Findasiosdk.cmake" DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
file(INSTALL "${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})

4
ports/asiosdk/usage Normal file
View File

@ -0,0 +1,4 @@
The package asiosdk provides CMake integration:
find_package(asiosdk REQUIRED)
target_include_directories(<my_target> PRIVATE ${ASIOSDK_INCLUDE_DIRS})

View File

@ -0,0 +1,8 @@
set(ASIOSDK_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
if(NOT ASIOSDK_INCLUDE_DIR)
_find_package(${ARGS})
endif()
set(CMAKE_MODULE_PATH ${ASIOSDK_PREV_MODULE_PATH})

View File

@ -88,6 +88,11 @@ argtable2:x64-uwp=fail
arrow:arm64-windows=fail
arrow:x64-linux=fail
arrow:x86-windows=fail
asiosdk:x64-linux=fail
asiosdk:x64-osx=fail
asiosdk:x64-uwp=fail
asiosdk:arm64-windows=fail
asiosdk:arm-uwp=fail
asmjit:arm64-windows=fail
asmjit:arm-uwp=fail
asyncplusplus:arm-uwp=fail