[lv2] Add port (#13462)

This commit is contained in:
Dominic Clark 2020-09-24 20:42:49 +01:00 committed by GitHub
parent 2b02b97a2e
commit fc4fe565a8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 67 additions and 0 deletions

35
ports/lv2/CMakeLists.txt Normal file
View File

@ -0,0 +1,35 @@
cmake_minimum_required(VERSION 3.17)
project(lv2 NONE)
add_library(lv2 INTERFACE)
install(
TARGETS lv2
EXPORT lv2-config
INCLUDES DESTINATION include
)
install(
DIRECTORY lv2
DESTINATION include
FILES_MATCHING PATTERN "*.h"
)
install(FILES lv2/core/lv2.h DESTINATION include)
# Install headers to old URI-style paths, using mapping from wscript
file(READ wscript WSCRIPT)
string(REGEX MATCHALL "'[^']+' *: 'lv2/[^']+'" SPEC_MAP "${WSCRIPT}")
foreach(PAIR ${SPEC_MAP})
string(REGEX MATCH "'([^']+)' *: '([^']+)'" _ "${PAIR}")
install(
DIRECTORY "lv2/${CMAKE_MATCH_1}/"
DESTINATION "include/${CMAKE_MATCH_2}"
FILES_MATCHING PATTERN "*.h"
)
endforeach()
install(
EXPORT lv2-config
NAMESPACE lv2::
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/lv2"
)

25
ports/lv2/portfile.cmake Normal file
View File

@ -0,0 +1,25 @@
vcpkg_from_gitlab(
GITLAB_URL https://gitlab.com
OUT_SOURCE_PATH SOURCE_PATH
REPO lv2/lv2
REF v1.18.0
SHA512 f84c5f2b31f42ed5cab10976d1975743c62f06025a5b67bc99778ba5d0f354c06cb9fad8f5899a52b8c1131f4c9085f5867c83da4d8269c234fd2a22a2c6a689
HEAD_REF master
)
file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
vcpkg_configure_cmake(
SOURCE_PATH "${SOURCE_PATH}"
PREFER_NINJA
)
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets()
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug")
file(
INSTALL "${SOURCE_PATH}/COPYING"
DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}"
RENAME copyright
)

7
ports/lv2/vcpkg.json Normal file
View File

@ -0,0 +1,7 @@
{
"name": "lv2",
"version-string": "1.18.0",
"description": "LV2 is a plugin standard for audio systems. It defines a minimal yet extensible C API for plugin code and a format for plugin \"bundles\".",
"homepage": "https://lv2plug.in",
"license": "ISC"
}