[libwebm] Update, cleanup (#40360)

Co-authored-by: Jon <v-zhli17@microsoft.com>
This commit is contained in:
Kai Pastor 2024-08-13 01:43:48 +02:00 committed by GitHub
parent a0aa27dc04
commit 046374f9e7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 36 additions and 104 deletions

View File

@ -1,9 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a83d23b..c5abf83 100644
index 85b2603..ebb3333 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -8,6 +8,8 @@
cmake_minimum_required(VERSION 3.2)
@@ -5,9 +5,11 @@
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS. All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
-cmake_minimum_required(VERSION 3.2)
+cmake_minimum_required(VERSION 3.5)
project(LIBWEBM CXX)
+set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
@ -11,86 +15,15 @@ index a83d23b..c5abf83 100644
include(GNUInstallDirs)
include("${CMAKE_CURRENT_SOURCE_DIR}/build/cxx_flags.cmake")
@@ -330,6 +332,50 @@ add_library(webm ${libwebm_common_sources}
$<TARGET_OBJECTS:mkvmuxer>
$<TARGET_OBJECTS:mkvparser>)
+install(
+ TARGETS webm
+ RUNTIME DESTINATION bin
+ ARCHIVE DESTINATION lib
+ LIBRARY DESTINATION lib
+)
+
+install(
+ FILES
+ mkvmuxer.hpp
+ mkvmuxertypes.hpp
+ mkvmuxerutil.hpp
+ mkvparser.hpp
+ mkvreader.hpp
+ mkvwriter.hpp
+ webmids.hpp
+ DESTINATION
+ include/libwebm
+)
+
+install(
+ DIRECTORY mkvmuxer/
+ DESTINATION include/libwebm/mkvmuxer
+ FILES_MATCHING PATTERN "*.h"
+)
+
+install(
+ DIRECTORY mkvparser/
+ DESTINATION include/libwebm/mkvparser
+ FILES_MATCHING PATTERN "*.h"
+)
+
+install(
+ DIRECTORY webvtt/
+ DESTINATION include/libwebm/webvtt
+ FILES_MATCHING PATTERN "*.h"
+)
+
+install(
+ DIRECTORY common/
+ DESTINATION include/libwebm/common
+ FILES_MATCHING PATTERN "*.h"
+)
+
if (WIN32)
# Use libwebm and libwebm.lib for project and library name on Windows (instead
# webm and webm.lib).
@@ -337,18 +383,22 @@ if (WIN32)
set_target_properties(webm PROPERTIES PREFIX lib)
endif ()
-add_executable(mkvparser_sample ${mkvparser_sample_sources})
-target_link_libraries(mkvparser_sample LINK_PUBLIC webm)
+if (ENABLE_SAMPLES)
+ add_executable(mkvparser_sample ${mkvparser_sample_sources})
+ target_link_libraries(mkvparser_sample LINK_PUBLIC webm)
-add_executable(mkvmuxer_sample ${mkvmuxer_sample_sources}
- $<TARGET_OBJECTS:webvtt_common>)
-target_link_libraries(mkvmuxer_sample LINK_PUBLIC webm)
+ add_executable(mkvmuxer_sample ${mkvmuxer_sample_sources}
+ $<TARGET_OBJECTS:webvtt_common>)
+ target_link_libraries(mkvmuxer_sample LINK_PUBLIC webm)
+endif()
-add_executable(dumpvtt ${dumpvtt_sources} $<TARGET_OBJECTS:webvtt_common>)
-target_link_libraries(dumpvtt LINK_PUBLIC webm)
+if (ENABLE_TOOLS)
+ add_executable(dumpvtt ${dumpvtt_sources} $<TARGET_OBJECTS:webvtt_common>)
+ target_link_libraries(dumpvtt LINK_PUBLIC webm)
-add_executable(vttdemux ${vttdemux_sources})
-target_link_libraries(vttdemux LINK_PUBLIC webm)
+ add_executable(vttdemux ${vttdemux_sources})
+ target_link_libraries(vttdemux LINK_PUBLIC webm)
+endif()
if (ENABLE_WEBMINFO)
add_executable(webm_info ${webm_info_sources})
diff --git a/build/msvc_runtime.cmake b/build/msvc_runtime.cmake
index 7058577..a5a18df 100644
--- a/build/msvc_runtime.cmake
+++ b/build/msvc_runtime.cmake
@@ -15,7 +15,6 @@ if(MSVC)
CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)
if(${flag_var} MATCHES "/MD")
- string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
endif(${flag_var} MATCHES "/MD")
endforeach(flag_var)
endif()

View File

@ -1,27 +1,21 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO webmproject/libwebm
REF 82a1d2330e113a14e545d806eb5419f09374255f #1.0.0.28
SHA512 7baf6f702f0e4498c9b0affebeba3ff28192c5f3dadfa5a17db2306816b3a9e31ce7a474e4d344ba136e5acf097c32d4ff61ce99861d427cdfb2f20e317d7e15
REF libwebm-${VERSION}
SHA512 d80ecb37d21586aeff14d0282dfbcde7c71644b6952d3f32f538c6e5eb6cfe835c0eb777d5c633070d796526fbc645b70741c2278c106fb74ed0705123b9a200
HEAD_REF master
PATCHES
Fix-cmake.patch
)
if(VCPKG_CRT_LINKAGE STREQUAL "dynamic")
set(LIBWEBM_CRT_LINKAGE -DMSVC_RUNTIME=dll)
else()
set(LIBWEBM_CRT_LINKAGE -DMSVC_RUNTIME=static)
endif()
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
${LIBWEBM_CRT_LINKAGE}
-DENABLE_SAMPLES=OFF
-DENABLE_TOOLS=OFF
-DENABLE_WEBMTS=OFF
-DENABLE_WEBMINFO=OFF
${LIBWEBM_CRT_LINKAGE}
-DENABLE_SAMPLE_PROGRAMS=OFF
-DENABLE_TESTS=OFF
-DENABLE_WEBMTS=OFF
-DENABLE_WEBMINFO=OFF
)
vcpkg_cmake_install()
@ -30,4 +24,4 @@ vcpkg_copy_pdbs()
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(INSTALL "${SOURCE_PATH}/LICENSE.TXT" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.TXT")

View File

@ -1,9 +1,9 @@
{
"name": "libwebm",
"version": "1.0.0.28",
"port-version": 1,
"version": "1.0.0.31",
"description": "WebM File Parser",
"homepage": "https://github.com/webmproject/libwebm",
"license": "BSD-3-Clause",
"dependencies": [
{
"name": "vcpkg-cmake",

View File

@ -5233,8 +5233,8 @@
"port-version": 6
},
"libwebm": {
"baseline": "1.0.0.28",
"port-version": 1
"baseline": "1.0.0.31",
"port-version": 0
},
"libwebp": {
"baseline": "1.4.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "a1c52d996474cadfc08a913ec80155b1693c7af5",
"version": "1.0.0.31",
"port-version": 0
},
{
"git-tree": "7f210a205882bf4151ab8bec8c9b3a3fc328a280",
"version": "1.0.0.28",