CMake: Add missing link libraries in dependencies (fix #5044). (#5046)

* fix(dependencies, CMake): Add missing link libraries in dependencies.

* chore(CI): Enable PDF in linux-gcc-cmake-visibility-hidden.

* enh(CMake): do not link zlib to PDF when building a shared library
This commit is contained in:
Matej Kenda
2025-10-15 16:48:17 +02:00
committed by GitHub
parent 852cf714ba
commit 2ec40a0528
4 changed files with 9 additions and 3 deletions

View File

@@ -125,7 +125,7 @@ jobs:
- run: sudo apt -y update && sudo apt -y install cmake ninja-build libssl-dev unixodbc-dev libmysqlclient-dev redis-server - run: sudo apt -y update && sudo apt -y install cmake ninja-build libssl-dev unixodbc-dev libmysqlclient-dev redis-server
- run: >- - run: >-
cmake -S. -Bcmake-build -GNinja -DCMAKE_CXX_VISIBILITY_PRESET=hidden cmake -S. -Bcmake-build -GNinja -DCMAKE_CXX_VISIBILITY_PRESET=hidden
-DENABLE_PDF=OFF -DENABLE_TESTS=ON -DENABLE_DATA_MYSQL=ON -DENABLE_DATA_ODBC=ON -DENABLE_PDF=ON -DENABLE_TESTS=ON -DENABLE_DATA_MYSQL=ON -DENABLE_DATA_ODBC=ON
- run: cmake --build cmake-build --target all - run: cmake --build cmake-build --target all
- uses: ./.github/actions/retry-action - uses: ./.github/actions/retry-action
with: with:

View File

@@ -20,12 +20,15 @@ add_library(PDF ${SRCS})
target_link_libraries(PDF PRIVATE "$<BUILD_LOCAL_INTERFACE:HPDF::HPDF>") target_link_libraries(PDF PRIVATE "$<BUILD_LOCAL_INTERFACE:HPDF::HPDF>")
if (POCO_UNBUNDLED) if (POCO_UNBUNDLED)
target_link_libraries(PDF PRIVATE PNG::PNG) target_link_libraries(PDF PRIVATE PNG::PNG ZLIB::ZLIB)
else() else()
target_link_libraries(PDF PRIVATE "$<BUILD_LOCAL_INTERFACE:PNG::PNG>") target_link_libraries(PDF PRIVATE "$<BUILD_LOCAL_INTERFACE:PNG::PNG>")
if (NOT BUILD_SHARED_LIBS OR WIN32)
target_link_libraries(PDF PRIVATE "$<BUILD_LOCAL_INTERFACE:ZLIB::ZLIB>")
endif()
# else static zlib is already linked to Foundation
endif() endif()
add_library(Poco::PDF ALIAS PDF) add_library(Poco::PDF ALIAS PDF)
set_target_properties(PDF set_target_properties(PDF
PROPERTIES PROPERTIES

View File

@@ -20,6 +20,7 @@ target_include_directories(_BUNDLED_HPDF
if (POCO_UNBUNDLED) if (POCO_UNBUNDLED)
target_link_libraries(_BUNDLED_HPDF PRIVATE PNG::PNG) target_link_libraries(_BUNDLED_HPDF PRIVATE PNG::PNG)
else() else()
target_link_libraries(_BUNDLED_HPDF PRIVATE "$<BUILD_LOCAL_INTERFACE:ZLIB::ZLIB>")
target_link_libraries(_BUNDLED_HPDF PRIVATE "$<BUILD_LOCAL_INTERFACE:PNG::PNG>") target_link_libraries(_BUNDLED_HPDF PRIVATE "$<BUILD_LOCAL_INTERFACE:PNG::PNG>")
endif() endif()

View File

@@ -32,6 +32,8 @@ else()
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>
) )
target_link_libraries(_BUNDLED_PNG PRIVATE "$<BUILD_LOCAL_INTERFACE:ZLIB::ZLIB>")
add_library(PNG::PNG ALIAS _BUNDLED_PNG) add_library(PNG::PNG ALIAS _BUNDLED_PNG)
endif() endif()