early-access version 2853
This commit is contained in:
48
externals/vcpkg/ports/opusfile/CMakeLists.txt
vendored
Executable file
48
externals/vcpkg/ports/opusfile/CMakeLists.txt
vendored
Executable file
@@ -0,0 +1,48 @@
|
||||
cmake_minimum_required(VERSION 3.4)
|
||||
project(opusfile C)
|
||||
|
||||
if(MSVC)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4267 /wd4244 /wd4090")
|
||||
endif()
|
||||
|
||||
find_path(OGG_INCLUDE_DIR ogg/ogg.h)
|
||||
find_library(OGG_LIBRARY ogg)
|
||||
|
||||
find_path(OPUS_INCLUDE_DIR opus.h PATH_SUFFIXES opus)
|
||||
find_library(OPUS_LIBRARY opus)
|
||||
|
||||
add_library(opusfile
|
||||
src/info.c
|
||||
src/internal.c
|
||||
src/opusfile.c
|
||||
src/stream.c)
|
||||
|
||||
target_include_directories(opusfile PRIVATE include PUBLIC ${OGG_INCLUDE_DIR} ${OPUS_INCLUDE_DIR})
|
||||
target_link_libraries(opusfile PRIVATE ${OGG_LIBRARY} ${OPUS_LIBRARY})
|
||||
|
||||
install(TARGETS opusfile
|
||||
RUNTIME DESTINATION bin
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib)
|
||||
|
||||
if(BUILD_OPUSURL)
|
||||
find_package(OpenSSL MODULE REQUIRED)
|
||||
|
||||
add_library(opusurl
|
||||
src/http.c
|
||||
src/wincerts.c)
|
||||
|
||||
target_compile_definitions(opusurl PRIVATE OP_ENABLE_HTTP)
|
||||
target_include_directories(opusurl PRIVATE include)
|
||||
target_link_libraries(opusurl PRIVATE opusfile OpenSSL::SSL ws2_32.lib crypt32.lib)
|
||||
|
||||
install(TARGETS opusurl
|
||||
RUNTIME DESTINATION bin
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib)
|
||||
endif()
|
||||
|
||||
if(NOT OPUSFILE_SKIP_HEADERS)
|
||||
install(FILES include/opusfile.h
|
||||
DESTINATION include/opus)
|
||||
endif()
|
||||
38
externals/vcpkg/ports/opusfile/portfile.cmake
vendored
Executable file
38
externals/vcpkg/ports/opusfile/portfile.cmake
vendored
Executable file
@@ -0,0 +1,38 @@
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore)
|
||||
message(FATAL_ERROR "UWP builds not supported")
|
||||
endif()
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO xiph/opusfile
|
||||
REF a55c164e9891a9326188b7d4d216ec9a88373739 # v0.12
|
||||
SHA512 cfe90b63b8ec027caf6d472167aba863e62f02650245cf0e4d9a543bb565c9088d38b45f7dc2d42cdfcdac5397c3757f4377c24afee73cac52437c125830c411
|
||||
HEAD_REF master)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
|
||||
if("opusurl" IN_LIST FEATURES)
|
||||
set(BUILD_OPUSURL ON)
|
||||
else()
|
||||
set(BUILD_OPUSURL OFF)
|
||||
endif()
|
||||
|
||||
vcpkg_configure_cmake(SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DBUILD_OPUSURL=${BUILD_OPUSURL}
|
||||
OPTIONS_DEBUG
|
||||
-DOPUSFILE_SKIP_HEADERS=ON)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
# make includes work with MSBuild integration
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/include/opus/opusfile.h OPUSFILE_H)
|
||||
string(REPLACE "# include <opus_multistream.h>" "# include \"opus_multistream.h\"" OPUSFILE_H "${OPUSFILE_H}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/include/opus/opusfile.h "${OPUSFILE_H}")
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/opusfile)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/opusfile/COPYING ${CURRENT_PACKAGES_DIR}/share/opusfile/copyright)
|
||||
20
externals/vcpkg/ports/opusfile/vcpkg.json
vendored
Executable file
20
externals/vcpkg/ports/opusfile/vcpkg.json
vendored
Executable file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"name": "opusfile",
|
||||
"version-string": "0.12",
|
||||
"port-version": 1,
|
||||
"description": "Stand-alone decoder library for .opus streams",
|
||||
"homepage": "https://github.com/xiph/opusfile",
|
||||
"supports": "!uwp",
|
||||
"dependencies": [
|
||||
"libogg",
|
||||
"opus"
|
||||
],
|
||||
"features": {
|
||||
"opusurl": {
|
||||
"description": "Support decoding of http(s) streams",
|
||||
"dependencies": [
|
||||
"openssl"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user