usse vcpkg just for the libsndfile build chain

This commit is contained in:
marauder2k7 2025-10-29 01:40:27 +00:00
parent a577d36679
commit 873fbbf1fe
1856 changed files with 1019 additions and 466624 deletions

View 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}

View file

@ -0,0 +1,57 @@
set(LOCAL_ARCHIVE "$ENV{VCPKG_LIB_SOURCE_ROOT}/xiph-opus-v1.5.2.tar.gz")
vcpkg_extract_source_archive(
SOURCE_PATH
ARCHIVE "${LOCAL_ARCHIVE}"
PATCHES fix-pkgconfig-version.patch
)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
avx2 AVX2_SUPPORTED
)
set(STACK_PROTECTOR ON)
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_WINDOWS)
if(VCPKG_CRT_LINKAGE STREQUAL "static")
list(APPEND ADDITIONAL_OPUS_OPTIONS "-DOPUS_STATIC_RUNTIME=ON")
endif()
elseif(VCPKG_TARGET_IS_EMSCRIPTEN)
set(STACK_PROTECTOR OFF)
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")

View file

@ -0,0 +1,23 @@
{
"name": "opus",
"version": "1.5.2",
"port-version": 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"
}
}
}