mirror of
https://github.com/weyne85/rustdesk.git
synced 2025-10-29 17:00:05 +00:00
vcpkg: sort triplets and restore local opus port for 1.5.1 (#8585)
* ci/flutter-build: Sort out triplets in job matrices Signed-off-by: Vasyl Gello <vasek.gello@gmail.com> * Restore local port for opus 1.5.1 Signed-off-by: Vasyl Gello <vasek.gello@gmail.com> --------- Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
This commit is contained in:
15
res/vcpkg/opus/fix-pkgconfig-version.patch
Normal file
15
res/vcpkg/opus/fix-pkgconfig-version.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
diff --git a/cmake/OpusPackageVersion.cmake b/cmake/OpusPackageVersion.cmake
|
||||
index 447ce3b..15ebd8e 100644
|
||||
--- a/cmake/OpusPackageVersion.cmake
|
||||
+++ b/cmake/OpusPackageVersion.cmake
|
||||
@@ -4,7 +4,9 @@ endif()
|
||||
set(__opus_version INCLUDED)
|
||||
|
||||
function(get_package_version PACKAGE_VERSION PROJECT_VERSION)
|
||||
-
|
||||
+ set(PACKAGE_VERSION "0" CACHE STRING "opus package version")
|
||||
+ set(PROJECT_VERSION "0" CACHE STRING "opus project version")
|
||||
+ return()
|
||||
find_package(Git)
|
||||
if(GIT_FOUND AND EXISTS "${CMAKE_CURRENT_LIST_DIR}/.git")
|
||||
execute_process(COMMAND ${GIT_EXECUTABLE}
|
||||
61
res/vcpkg/opus/portfile.cmake
Normal file
61
res/vcpkg/opus/portfile.cmake
Normal file
@@ -0,0 +1,61 @@
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO xiph/opus
|
||||
REF "v${VERSION}"
|
||||
SHA512 ba79ad035993e7bc4c09b7d77964ba913eb0b2be33305e8a04a8c49aaab21c4d96ac828e31ae45484896105851fdfc8c305c63c8400e4481dd76c62a1c12286b
|
||||
HEAD_REF main
|
||||
PATCHES fix-pkgconfig-version.patch
|
||||
)
|
||||
|
||||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||
FEATURES
|
||||
avx2 AVX2_SUPPORTED
|
||||
)
|
||||
|
||||
set(ADDITIONAL_OPUS_OPTIONS "")
|
||||
if(VCPKG_TARGET_IS_MINGW)
|
||||
set(STACK_PROTECTOR OFF)
|
||||
string(APPEND VCPKG_C_FLAGS "-D_FORTIFY_SOURCE=0")
|
||||
string(APPEND VCPKG_CXX_FLAGS "-D_FORTIFY_SOURCE=0")
|
||||
if(VCPKG_TARGET_ARCHITECTURE MATCHES "^(ARM|arm)64$")
|
||||
list(APPEND ADDITIONAL_OPUS_OPTIONS "-DOPUS_USE_NEON=OFF") # for version 1.3.1 (remove for future Opus release)
|
||||
list(APPEND ADDITIONAL_OPUS_OPTIONS "-DOPUS_DISABLE_INTRINSICS=ON") # for HEAD (and future Opus release)
|
||||
endif()
|
||||
elseif(VCPKG_TARGET_IS_EMSCRIPTEN)
|
||||
set(STACK_PROTECTOR OFF)
|
||||
else()
|
||||
set(STACK_PROTECTOR ON)
|
||||
endif()
|
||||
|
||||
if((VCPKG_TARGET_IS_LINUX AND VCPKG_TARGET_ARCHITECTURE STREQUAL "arm") OR
|
||||
(VCPKG_TARGET_IS_ANDROID AND VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" AND VCPKG_CMAKE_CONFIGURE_OPTIONS MATCHES "ANDROID_ARM_NEON"))
|
||||
message(STATUS "Disabling ARM NEON and intrinsics on ${TARGET_TRIPLET}")
|
||||
list(APPEND ADDITIONAL_OPUS_OPTIONS "-DOPUS_DISABLE_INTRINSICS=ON -DCOMPILER_SUPPORTS_NEON=OFF") # for HEAD (and future Opus release)
|
||||
endif()
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS ${FEATURE_OPTIONS}
|
||||
-DPACKAGE_VERSION=${VERSION}
|
||||
-DOPUS_STACK_PROTECTOR=${STACK_PROTECTOR}
|
||||
-DOPUS_INSTALL_PKG_CONFIG_MODULE=ON
|
||||
-DOPUS_INSTALL_CMAKE_CONFIG_MODULE=ON
|
||||
-DOPUS_BUILD_PROGRAMS=OFF
|
||||
-DOPUS_BUILD_TESTING=OFF
|
||||
${ADDITIONAL_OPUS_OPTIONS}
|
||||
MAYBE_UNUSED_VARIABLES
|
||||
OPUS_USE_NEON
|
||||
OPUS_DISABLE_INTRINSICS
|
||||
)
|
||||
vcpkg_cmake_install()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Opus)
|
||||
vcpkg_fixup_pkgconfig(SYSTEM_LIBRARIES m)
|
||||
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/cmake"
|
||||
"${CURRENT_PACKAGES_DIR}/lib/cmake"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING")
|
||||
22
res/vcpkg/opus/vcpkg.json
Normal file
22
res/vcpkg/opus/vcpkg.json
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "opus",
|
||||
"version": "1.5.1",
|
||||
"description": "Totally open, royalty-free, highly versatile audio codec",
|
||||
"homepage": "https://github.com/xiph/opus",
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
}
|
||||
],
|
||||
"features": {
|
||||
"avx2": {
|
||||
"description": "Builds the library with avx2 instruction set"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user