From 210e6edd9fea2949f72c37bcf059e7a876593536 Mon Sep 17 00:00:00 2001 From: Francesco Gazzetta Date: Wed, 3 Jul 2024 22:17:27 +0200 Subject: [PATCH] LibWeb: Get skia version constraint from vcpkg.json This way we only have to update it in one place. --- Userland/Libraries/LibWeb/CMakeLists.txt | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/Userland/Libraries/LibWeb/CMakeLists.txt b/Userland/Libraries/LibWeb/CMakeLists.txt index 20d59f153c9..c2445c66511 100644 --- a/Userland/Libraries/LibWeb/CMakeLists.txt +++ b/Userland/Libraries/LibWeb/CMakeLists.txt @@ -761,7 +761,20 @@ if(unofficial-skia_FOUND) set(SKIA_LIBRARIES unofficial::skia::skia) else() find_package(PkgConfig) - pkg_check_modules(SKIA skia=124 REQUIRED) + + # Get skia version from vcpkg.json + file(READ ${LADYBIRD_SOURCE_DIR}/vcpkg.json VCPKG_DOT_JSON) + string(JSON VCPKG_OVERRIDES_LENGTH LENGTH ${VCPKG_DOT_JSON} overrides) + MATH(EXPR VCPKG_OVERRIDES_END_RANGE "${VCPKG_OVERRIDES_LENGTH}-1") + foreach(IDX RANGE ${VCPKG_OVERRIDES_END_RANGE}) + string(JSON VCPKG_OVERRIDE_NAME GET ${VCPKG_DOT_JSON} overrides ${IDX} name) + if(VCPKG_OVERRIDE_NAME STREQUAL "skia") + string(JSON SKIA_REQUIRED_VERSION GET ${VCPKG_DOT_JSON} overrides ${IDX} version) + string(REGEX MATCH "[0-9]+" SKIA_REQUIRED_VERSION ${SKIA_REQUIRED_VERSION}) + endif() + endforeach() + + pkg_check_modules(SKIA skia=${SKIA_REQUIRED_VERSION} REQUIRED) target_include_directories(LibWeb PRIVATE ${SKIA_INCLUDE_DIRS}) target_link_directories(LibWeb PRIVATE ${SKIA_LIBRARY_DIRS}) endif()