vcpkg/ports/x265/portfile.cmake

66 lines
2.0 KiB
CMake
Raw Normal View History

2023-12-07 06:02:56 +08:00
vcpkg_from_bitbucket(
2018-02-23 00:24:51 +08:00
OUT_SOURCE_PATH SOURCE_PATH
2023-12-07 06:02:56 +08:00
REPO multicoreware/x265_git
REF "${VERSION}"
SHA512 cfc3fdd7ce10a6cadf4515707d8f338fe58329cbbbcac11a85f00376e29156baccfb19a514ac2bc816432d15a2a4eb1bb7e16e3a870b6b9f9bc28e1a44270091
2018-02-23 00:24:51 +08:00
HEAD_REF master
PATCHES
disable-install-pdb.patch
2023-12-07 06:02:56 +08:00
version.patch
linkage.diff
pkgconfig.diff
pthread.diff
compiler-target.diff
neon.diff
2018-02-28 02:36:28 +08:00
)
vcpkg_check_features(OUT_FEATURE_OPTIONS OPTIONS
FEATURES
tool ENABLE_CLI
)
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
vcpkg_find_acquire_program(NASM)
list(APPEND OPTIONS "-DNASM_EXECUTABLE=${NASM}")
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static" AND NOT VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_OSX)
# x265 doesn't create sufficient PIC for asm, breaking usage
# in shared libs, e.g. the libheif gdk pixbuf plugin.
# Users can override this in custom triplets.
list(APPEND OPTIONS "-DENABLE_ASSEMBLY=OFF")
endif()
elseif(VCPKG_TARGET_IS_WINDOWS)
list(APPEND OPTIONS "-DENABLE_ASSEMBLY=OFF")
endif()
2018-02-28 02:36:28 +08:00
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" ENABLE_SHARED)
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}/source"
OPTIONS
${OPTIONS}
-DENABLE_SHARED=${ENABLE_SHARED}
-DENABLE_PIC=ON
-DENABLE_LIBNUMA=OFF
2023-12-07 06:02:56 +08:00
"-DVERSION=${VERSION}"
OPTIONS_DEBUG
-DENABLE_CLI=OFF
MAYBE_UNUSED_VARIABLES
ENABLE_LIBNUMA
2018-02-23 00:24:51 +08:00
)
vcpkg_cmake_install()
2018-02-23 00:24:51 +08:00
vcpkg_copy_pdbs()
vcpkg_fixup_pkgconfig()
2018-02-23 00:24:51 +08:00
if("tool" IN_LIST FEATURES)
vcpkg_copy_tools(TOOL_NAMES x265 AUTO_CLEAN)
endif()
2018-02-28 02:36:28 +08:00
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/x265.h" "#ifdef X265_API_IMPORTS" "#if 1")
endif()
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
2023-12-07 06:02:56 +08:00
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING")