Skip to content

[ebml, matroska] Updates#6526

Merged
vicroms merged 6 commits intomicrosoft:masterfrom
evpobr:ebml-and-matroska-update
May 23, 2019
Merged

[ebml, matroska] Updates#6526
vicroms merged 6 commits intomicrosoft:masterfrom
evpobr:ebml-and-matroska-update

Conversation

@evpobr
Copy link
Copy Markdown
Contributor

@evpobr evpobr commented May 19, 2019

  • ebml: use standard CMake project
  • ebml: no patches needed (merged in upstream)
  • matroska: update to 1.5.0
  • matroska: use standard CMake project

Breaking changes from upstream:

  • ebml target is now in EBML:: namespace
  • matroska target is now in Matroska:: namespace

* ebml: use standard CMake project
* ebml: no patches needed (merged in upstream)
* matroska: update to 1.5.0
* matroska: use standard CMake project

Breaking changes from upstream:

* ebml target is now in EBML:: namespace
* matroska target is now in Matroska:: namespace
@evpobr
Copy link
Copy Markdown
Contributor Author

evpobr commented May 19, 2019

Installation:

PS D:\vcpkg> vcpkg install matroska:x64-windows-static
The following packages will be built and installed:
  * ebml[core]:x64-windows-static
    matroska[core]:x64-windows-static
Additional packages (*) will be modified to complete this operation.
Starting package 1/2: ebml:x64-windows-static
Building package ebml[core]:x64-windows-static...
-- Using cached D:/vcpkg/downloads/Matroska-Org-libebml-366fe3c34639aa68caa6af6d8ca78a62337ffd75.tar.gz
-- Using source at D:/vcpkg/buildtrees/ebml/src/62337ffd75-4faeee41a8
-- Configuring x64-windows-static
-- Building x64-windows-static-dbg
-- Building x64-windows-static-rel
-- Installing: D:/vcpkg/packages/ebml_x64-windows-static/share/ebml/copyright
-- Performing post-build validation
-- Performing post-build validation done
Building package ebml[core]:x64-windows-static... done
Installing package ebml[core]:x64-windows-static...
Installing package ebml[core]:x64-windows-static... done
Elapsed time for package ebml:x64-windows-static: 25.61 s
Starting package 2/2: matroska:x64-windows-static
Building package matroska[core]:x64-windows-static...
-- Using cached D:/vcpkg/downloads/Matroska-Org-libmatroska-51648bb73e4f6a81be754c9a271fc681a1c78f7a.tar.gz
-- Using source at D:/vcpkg/buildtrees/matroska/src/81a1c78f7a-635cf5189a
-- Configuring x64-windows-static
-- Building x64-windows-static-dbg
-- Building x64-windows-static-rel
-- Installing: D:/vcpkg/packages/matroska_x64-windows-static/share/matroska/copyright
-- Performing post-build validation
-- Performing post-build validation done
Building package matroska[core]:x64-windows-static... done
Installing package matroska[core]:x64-windows-static...
Installing package matroska[core]:x64-windows-static... done
Elapsed time for package matroska:x64-windows-static: 22.63 s

Total elapsed time: 48.24 s

The package matroska:x64-windows-static provides CMake targets:

    find_package(Matroska CONFIG REQUIRED)
    target_link_libraries(main PRIVATE Matroska::matroska)

Test example build (VCPKG_TARGET_TRIPLET is x64-windows-static ):

cmake_minimum_required(VERSION 3.0.0)
project(find_test VERSION 0.1.0)

set(CMAKE_BUILD_TYPE Debug)

foreach(flag_var
    CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
    CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO
    CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE
    CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO)
	if (${flag_var} MATCHES "/MD")
		string (REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
	endif ()
endforeach (flag_var)


list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
set(CMAKE_VERBOSE_MAKEFILE ON)

find_package(Matroska CONFIG REQUIRED)

add_executable(find_test main.cpp)
target_link_libraries(find_test PRIVATE Matroska::matroska)
[build] Starting build
[proc] Executing command: "C:\Program Files\CMake\bin\cmake.EXE" --build c:/Users/evpob/Source/Repos/opus_test/build --config Debug --target all -- -j 8
[build] [1/2  50% :: 1.056] C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1420~1.275\bin\Hostx64\x64\cl.exe   /TP -DEBML_STATIC_DEFINE -DHAVE_WINAPIFAMILY_H -ID:\vcpkg\installed\x64-windows-static\include /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MTd /Zi /Ob0 /Od /RTC1 /showIncludes /FoCMakeFiles\find_test.dir\main.cpp.obj /FdCMakeFiles\find_test.dir\ /FS -c ..\main.cpp
[build] Microsoft (R) C/C++ Optimizing Compiler Version 19.20.27508.1 for x64
[build] Copyright (C) Microsoft Corporation.  All rights reserved.
[build] 
[build] D:\vcpkg\installed\x64-windows-static\include\ebml\EbmlElement.h(437): warning C4267: 'return': conversion from 'size_t' to 'uint8', possible loss of data
[build] [2/2 100% :: 2.595] cmd.exe /C "cd . && "C:\Program Files\CMake\bin\cmake.exe" -E vs_link_exe --intdir=CMakeFiles\find_test.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100177~1.0\x64\mt.exe --manifests  -- C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1420~1.275\bin\Hostx64\x64\link.exe  CMakeFiles\find_test.dir\main.cpp.obj  /out:find_test.exe /implib:find_test.lib /pdb:find_test.pdb /version:0.0  /machine:x64 /debug /INCREMENTAL /subsystem:console  D:\vcpkg\installed\x64-windows-static\debug\lib\matroska.lib D:\vcpkg\installed\x64-windows-static\debug\lib\ebml.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib && cmd.exe /C "cd /D C:\Users\evpob\Source\Repos\opus_test\build && powershell -noprofile -executionpolicy Bypass -file D:/vcpkg/scripts/buildsystems/msbuild/applocal.ps1 -targetBinary C:/Users/evpob/Source/Repos/opus_test/build/find_test.exe -installedDir D:/vcpkg/installed/x64-windows-static/debug/bin -OutVariable out""
[build] Microsoft (R) Incremental Linker Version 14.20.27508.1
[build] Copyright (C) Microsoft Corporation.  All rights reserved.
[build] 
[build] Microsoft (R) Incremental Linker Version 14.20.27508.1
[build] Copyright (C) Microsoft Corporation.  All rights reserved.
[build] 
[build] Build finished with exit code 0

Note EBML::ebml is found and linked properly.

@ras0219-msft
Copy link
Copy Markdown
Contributor

Thanks for the PR!

x64-linux master test notes
matroska Pass Skip
ebml Pass Fail Regression

bcc2f8645baa1985ecf530b49bb291a7a021ecbc.zip

evpobr added a commit to evpobr/libebml that referenced this pull request May 21, 2019
Unix paths are case sensitive, but we use EbmlConfig.cmake.in & EBMLConfig.cmake.in.

Related to Matroska-Org#44, microsoft/vcpkg#6526
@NancyLi1013
Copy link
Copy Markdown
Contributor

@evpobr, the new regression is:

x64-linux test notes
ebml Fail Regression

ebml.zip

@evpobr
Copy link
Copy Markdown
Contributor Author

evpobr commented May 21, 2019

@evpobr, the new regression is:

x64-linux test notes
ebml Fail Regression
ebml.zip

CMake Warning at /home/vcpkg/myagent/_work/4/s/scripts/buildsystems/vcpkg.cmake:107 (message):
  There are no libraries installed for the Vcpkg triplet x64-linux.
Call Stack (most recent call first):
  /home/vcpkg/myagent/_work/4/s/downloads/tools/cmake-3.14.0-linux/cmake-3.14.0-Linux-x86_64/share/cmake-3.14/Modules/CMakeDetermineSystem.cmake:93 (include)
  CMakeLists.txt:3 (project)


CMake Warning:
  Manually-specified variables were not used by the project:

    VCPKG_PLATFORM_TOOLSET 

No idea what's happening. EBML library is configured, built and installed.

@vicroms
Copy link
Copy Markdown
Member

vicroms commented May 21, 2019

I reviewed the logs, there was an issue in our CI system.
I'll trigger a new build for this PR.

@vicroms vicroms force-pushed the ebml-and-matroska-update branch from fa4f1f5 to 7762a9d Compare May 22, 2019 23:08
@vicroms
Copy link
Copy Markdown
Member

vicroms commented May 23, 2019

@evpobr
Thanks for the PR!

@vicroms vicroms merged commit 25d80a7 into microsoft:master May 23, 2019
@evpobr evpobr deleted the ebml-and-matroska-update branch May 27, 2019 03:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants