[x264] Fix x64-windows-static (#13450)

* try fixing x264

* fix remaining issues

* Remove unnecessary COPY_SOURCE
This commit is contained in:
Alexander Neumann 2020-09-24 21:37:17 +02:00 committed by GitHub
parent 9ac48a6c49
commit 2b02b97a2e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 23 additions and 11 deletions

View File

@ -1,6 +1,6 @@
Source: x264
Version: 157-303c484ec828ed0
Port-Version: 9
Port-Version: 10
Homepage: https://github.com/mirror/x264
Description: x264 is a free software library and application for encoding video streams into the H.264/MPEG-4 AVC compression format
Build-Depends: pthread (linux&osx)

View File

@ -47,9 +47,20 @@ vcpkg_copy_tools(TOOL_NAMES x264 AUTO_CLEAN)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
if(VCPKG_TARGET_IS_WINDOWS)
set(pcfile "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/x264.pc")
if(EXISTS "${pcfile}")
vcpkg_replace_string("${pcfile}" "-lx264" "-llibx264")
endif()
set(pcfile "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/x264.pc")
if(EXISTS "${pcfile}")
vcpkg_replace_string("${pcfile}" "-lx264" "-llibx264")
endif()
endif()
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libx264.dll.lib ${CURRENT_PACKAGES_DIR}/lib/x264.lib)
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libx264.dll.lib ${CURRENT_PACKAGES_DIR}/debug/lib/x264.lib)
file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libx264.dll.lib ${CURRENT_PACKAGES_DIR}/lib/libx264.lib)
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libx264.dll.lib ${CURRENT_PACKAGES_DIR}/debug/lib/libx264.lib)
else()
# force U_STATIC_IMPLEMENTATION macro
file(READ ${CURRENT_PACKAGES_DIR}/include/x264.h HEADER_CONTENTS)

View File

@ -1801,9 +1801,6 @@ x264:arm64-windows=fail
x264:arm-uwp=fail
x264:x64-uwp=fail
x264:x64-osx=fail
x264:x86-windows=fail
x264:x64-windows=fail
x264:x64-windows-static=fail
x265:arm64-windows=fail
x265:arm-uwp=fail
x265:x64-uwp=fail

View File

@ -70,7 +70,8 @@ function(vcpkg_build_make)
set(NO_PARALLEL_MAKE_OPTS ${_bc_MAKE_OPTIONS} -j 1 --trace -f Makefile ${_bc_BUILD_TARGET})
string(REPLACE " " "\\\ " _VCPKG_PACKAGE_PREFIX ${CURRENT_PACKAGES_DIR})
string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" _VCPKG_PACKAGE_PREFIX "${_VCPKG_PACKAGE_PREFIX}")
# Don't know why '/cygdrive' is suddenly a requirement here. (at least for x264)
string(REGEX REPLACE "([a-zA-Z]):/" "/cygdrive/\\1/" _VCPKG_PACKAGE_PREFIX "${_VCPKG_PACKAGE_PREFIX}")
set(INSTALL_OPTS -j ${VCPKG_CONCURRENCY} --trace -f Makefile install DESTDIR=${_VCPKG_PACKAGE_PREFIX})
#TODO: optimize for install-data (release) and install-exec (release/debug)
else()

View File

@ -220,10 +220,7 @@ function(vcpkg_configure_make)
list(APPEND MSYS_REQUIRE_PACKAGES binutils libtool autoconf automake-wrapper automake1.16 m4)
vcpkg_acquire_msys(MSYS_ROOT PACKAGES ${MSYS_REQUIRE_PACKAGES})
# This inserts msys before system32 (which masks sort.exe and find.exe) but after MSVC (which avoids masking link.exe)
string(REPLACE ";$ENV{SystemRoot}\\System32;" ";${MSYS_ROOT}/usr/share/automake-1.16;${MSYS_ROOT}/usr/bin;$ENV{SystemRoot}\\System32;" NEWPATH "$ENV{PATH}")
set(ENV{PATH} "${NEWPATH}")
set(BASH "${MSYS_ROOT}/usr/bin/bash.exe")
set(APPEND_ENV)
if (_csc_AUTOCONFIG)
# --build: the machine you are building on
# --host: the machine you are building for
@ -243,8 +240,14 @@ function(vcpkg_configure_make)
endif()
endif()
debug_message("Using make triplet: ${_csc_BUILD_TRIPLET}")
set(APPEND_ENV ";${MSYS_ROOT}/usr/share/automake-1.16")
endif()
string(REPLACE ";$ENV{SystemRoot}\\System32;" "${APPEND_ENV};${MSYS_ROOT}/usr/bin;$ENV{SystemRoot}\\System32;" NEWPATH "$ENV{PATH}")
string(REPLACE ";$ENV{SystemRoot}\\system32;" "${APPEND_ENV};${MSYS_ROOT}/usr/bin;$ENV{SystemRoot}\\system32;" NEWPATH "$ENV{PATH}")
set(ENV{PATH} "${NEWPATH}")
set(BASH "${MSYS_ROOT}/usr/bin/bash.exe")
macro(_vcpkg_append_to_configure_environment inoutstring var defaultval)
# Allows to overwrite settings in custom triplets via the environment
if(DEFINED ENV{${var}})