vcpkg/ports/libass/portfile.cmake
Codiferous c0bf747e45
Add a more correct port for libass (#5223)
This port currently only works on Windows because the dependencies of
the port (fribidi in particular) don't build on non-Windows platforms.

I made patch modifications to the source code because the Visual C++ C
compiler does not allow for non-constant-expression array indicesto be
used to declare a static array.

I've verified that this (1) builds on Windows and (2) works with a
sample test that's included in the libass github repo.
2019-01-24 11:47:28 -08:00

30 lines
986 B
CMake

include(vcpkg_common_functions)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO libass/libass
REF 98727c3b78f44cb3bbc955fcf5d977ebd911d5ca
SHA512 d466108180cea598b817f89aa21a1021ed2a763580d9aad51b054aa120186af48ab4264907e49ddcb38479a28d87d5431751a28afee9cb83ad7623f002d99c57
HEAD_REF master
PATCHES ConstantValues.patch
)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/config.h.in DESTINATION ${SOURCE_PATH})
# Handle copyright
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libass RENAME copyright)
# Since libass uses automake, make and configure, we use a custom CMake file
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
file(COPY ${SOURCE_PATH}/libass/ass.h ${SOURCE_PATH}/libass/ass_types.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/ass)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA)
vcpkg_install_cmake()
vcpkg_copy_pdbs()