early-access version 2853
This commit is contained in:
38
externals/vcpkg/ports/libraqm/CMakeLists.txt
vendored
Executable file
38
externals/vcpkg/ports/libraqm/CMakeLists.txt
vendored
Executable file
@@ -0,0 +1,38 @@
|
||||
cmake_minimum_required(VERSION 3.11)
|
||||
|
||||
project(raqm)
|
||||
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR};${CMAKE_MODULE_PATH}")
|
||||
|
||||
find_package(Freetype REQUIRED)
|
||||
find_package(Fribidi REQUIRED)
|
||||
find_package(harfbuzz CONFIG REQUIRED)
|
||||
|
||||
find_path(HARFBUZZ_INCLUDE_DIRS
|
||||
NAMES hb.h
|
||||
PATH_SUFFIXES harfbuzz)
|
||||
find_path(FREETYPE_ADDITIONAL_INCLUDE_DIRS NAMES ft2build.h PATH_SUFFIXES freetype2)
|
||||
|
||||
configure_file(src/raqm-version.h.in src/raqm-version.h)
|
||||
|
||||
add_library(raqm src/raqm.c src/raqm.h src/raqm-version.h)
|
||||
|
||||
target_include_directories(raqm PUBLIC ${CMAKE_CURRENT_BINARY_DIR}/src)
|
||||
target_include_directories(raqm SYSTEM PUBLIC ${FREETYPE_ADDITIONAL_INCLUDE_DIRS})
|
||||
target_include_directories(raqm SYSTEM PUBLIC ${FREETYPE_INCLUDE_DIRS})
|
||||
target_include_directories(raqm SYSTEM PUBLIC ${HARFBUZZ_INCLUDE_DIRS})
|
||||
target_include_directories(raqm SYSTEM PUBLIC ${FRIBIDI_INCLUDE_DIR})
|
||||
|
||||
target_link_libraries(raqm PRIVATE Freetype::Freetype)
|
||||
target_link_libraries(raqm PRIVATE harfbuzz::harfbuzz ${FRIBIDI_LIBRARY})
|
||||
|
||||
install(TARGETS raqm
|
||||
RUNTIME DESTINATION bin
|
||||
ARCHIVE DESTINATION lib
|
||||
LIBRARY DESTINATION lib
|
||||
)
|
||||
|
||||
set(RAQM_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
set(RAQM_LIBRARY raqm)
|
||||
set(RAQM_LIBRARIES ${HARFBUZZ_LIBRARY} ${FRIBIDI_LIBRARY} ${RAQM_LIBRARY})
|
||||
file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/src/raqm.h ${CMAKE_CURRENT_BINARY_DIR}/src/raqm-version.h DESTINATION ${CURRENT_PACKAGES_DIR}/include)
|
||||
12
externals/vcpkg/ports/libraqm/FindFribidi.cmake
vendored
Executable file
12
externals/vcpkg/ports/libraqm/FindFribidi.cmake
vendored
Executable file
@@ -0,0 +1,12 @@
|
||||
find_path(FRIBIDI_INCLUDE_DIR
|
||||
NAMES fribidi/fribidi.h)
|
||||
|
||||
set(FRIBIDI_INCLUDE_DIR "${FRIBIDI_INCLUDE_DIR}/fribidi")
|
||||
find_library(FRIBIDI_LIBRARY NAMES fribidi)
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(FriBidi
|
||||
FOUND_VAR FRIBIDI_FOUND
|
||||
REQUIRED_VARS FRIBIDI_LIBRARY FRIBIDI_INCLUDE_DIR
|
||||
VERSION_VAR FRIBIDI_VERSION_STRING
|
||||
)
|
||||
32
externals/vcpkg/ports/libraqm/portfile.cmake
vendored
Executable file
32
externals/vcpkg/ports/libraqm/portfile.cmake
vendored
Executable file
@@ -0,0 +1,32 @@
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
set(RAQM_VERSION_MAJOR 0)
|
||||
set(RAQM_VERSION_MINOR 9)
|
||||
set(RAQM_VERSION_MICRO 0)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO HOST-Oman/libraqm
|
||||
REF v${RAQM_VERSION_MAJOR}.${RAQM_VERSION_MINOR}.${RAQM_VERSION_MICRO}
|
||||
SHA512 a45c442a087c806143e5a96878e1d84a31afb7b682d71931fcb014c8d56b974d5a0d6186b163067d44a15952b3c549763f84354ed799f20473795f15d719f060
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
file(COPY ${CURRENT_PORT_DIR}/FindFribidi.cmake DESTINATION ${SOURCE_PATH})
|
||||
file(COPY ${CURRENT_PORT_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS
|
||||
-DCURRENT_PACKAGES_DIR=${CURRENT_PACKAGES_DIR}
|
||||
-DRAQM_VERSION_MAJOR=${RAQM_VERSION_MAJOR}
|
||||
-DRAQM_VERSION_MINOR=${RAQM_VERSION_MINOR}
|
||||
-DRAQM_VERSION_MICRO=${RAQM_VERSION_MICRO}
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
# Handle copyright
|
||||
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libraqm RENAME copyright)
|
||||
11
externals/vcpkg/ports/libraqm/vcpkg.json
vendored
Executable file
11
externals/vcpkg/ports/libraqm/vcpkg.json
vendored
Executable file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"name": "libraqm",
|
||||
"version-string": "0.9.0",
|
||||
"description": "A library for complex text layout",
|
||||
"dependencies": [
|
||||
"freetype",
|
||||
"fribidi",
|
||||
"harfbuzz",
|
||||
"vcpkg-cmake"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user