[poppler] 3 commits - CMakeLists.txt cmake/modules glib/CMakeLists.txt glib/demo glib/tests
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Sat Oct 17 00:04:14 UTC 2020
CMakeLists.txt | 2 ++
cmake/modules/FindGTK.cmake | 6 +++++-
glib/CMakeLists.txt | 14 +++-----------
glib/demo/CMakeLists.txt | 7 ++++++-
glib/tests/CMakeLists.txt | 11 +++++++++--
5 files changed, 25 insertions(+), 15 deletions(-)
New commits:
commit 2fd2acd7f0e5710b8e7b1138b519549e7f3d6750
Author: Kyle Auble <kyle.auble at outlook.com>
Date: Fri Oct 16 17:18:42 2020 -0400
cmake: Deduplicate _list_prefix macro
The macro is only used after an identical version (_gir_list_prefix)
is included with GObjectIntrospectionMacros.
diff --git a/glib/CMakeLists.txt b/glib/CMakeLists.txt
index fd76b150..f0aaf990 100644
--- a/glib/CMakeLists.txt
+++ b/glib/CMakeLists.txt
@@ -115,14 +115,6 @@ set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES
"${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.h ${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.c"
)
-
-macro(_list_prefix _outvar _listvar _prefix)
- set(${_outvar})
- foreach(_item IN LISTS ${_listvar})
- list(APPEND ${_outvar} ${_prefix}${_item})
- endforeach()
-endmacro(_list_prefix)
-
# GObject Introspection
if (HAVE_INTROSPECTION AND BUILD_SHARED_LIBS)
include(GObjectIntrospectionMacros)
@@ -141,7 +133,7 @@ if (HAVE_INTROSPECTION AND BUILD_SHARED_LIBS)
# Format list of include directories as compiler flags
get_directory_property(_tmp_includes INCLUDE_DIRECTORIES)
- _list_prefix(_includes _tmp_includes "-I")
+ _gir_list_prefix(_includes _tmp_includes "-I")
# And set flags for gir compiler and scanner
set(Poppler_0_18_gir_CFLAGS ${_includes} -L${CMAKE_BINARY_DIR} -L${CMAKE_CURRENT_BINARY_DIR})
set(Poppler_0_18_gir_SCANNERFLAGS "--c-include=poppler.h")
@@ -150,8 +142,8 @@ if (HAVE_INTROSPECTION AND BUILD_SHARED_LIBS)
set(orig_introspect_srcs ${poppler_glib_SRCS} ${poppler_glib_public_headers})
set(gen_introspect_srcs "poppler-enums.c" "poppler-enums.h" "poppler-features.h")
# Prefix the files with their correct directories for full paths
- _list_prefix(_orig_introspect_paths orig_introspect_srcs "${CMAKE_CURRENT_SOURCE_DIR}/")
- _list_prefix(_gen_introspect_paths gen_introspect_srcs "${CMAKE_CURRENT_BINARY_DIR}/")
+ _gir_list_prefix(_orig_introspect_paths orig_introspect_srcs "${CMAKE_CURRENT_SOURCE_DIR}/")
+ _gir_list_prefix(_gen_introspect_paths gen_introspect_srcs "${CMAKE_CURRENT_BINARY_DIR}/")
# Now load them to the final file list
set(Poppler_0_18_gir_FILES ${_orig_introspect_paths} ${_gen_introspect_paths})
commit 8b7dec2843999f8c3d77d921bd58688fbf4ff313
Author: Kyle Auble <kyle.auble at outlook.com>
Date: Sat Oct 10 16:51:12 2020 -0400
cmake: Finish making FindGTK more robust
* Add CMake guards to fix #831 and close !605
* Move pkg-config calls to FindGTK & parameterize GTK versions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3da3fb3b..7487875a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -126,6 +126,8 @@ set(TEXTOUT_WORD_LIST ON)
# setting the minimum required versions for some components
set(CAIRO_VERSION "1.10.0")
set(GLIB_REQUIRED "2.41")
+set(GTK_REQUIRED "3.8")
+set(GDK_PIXBUF_REQUIRED "2.8")
macro_bool_to_01(ENABLE_SPLASH HAVE_SPLASH)
find_package(Freetype REQUIRED)
diff --git a/cmake/modules/FindGTK.cmake b/cmake/modules/FindGTK.cmake
index 3cc78438..5f793aac 100644
--- a/cmake/modules/FindGTK.cmake
+++ b/cmake/modules/FindGTK.cmake
@@ -16,6 +16,10 @@ include(FindPackageHandleStandardArgs)
find_package(PkgConfig REQUIRED)
-pkg_check_modules(GTK3 "gtk+-3.0>=3.8" "gdk-pixbuf-2.0>=2.8")
+if(${CMAKE_VERSION} VERSION_LESS "3.6.0")
+ pkg_check_modules(GTK3 "gtk+-3.0>=${GTK_REQUIRED}" "gdk-pixbuf-2.0>=${GDK_PIXBUF_REQUIRED}")
+else()
+ pkg_check_modules(GTK3 IMPORTED_TARGET "gtk+-3.0>=${GTK_REQUIRED}" "gdk-pixbuf-2.0>=${GDK_PIXBUF_REQUIRED}")
+endif()
find_package_handle_standard_args(GTK DEFAULT_MSG GTK3_LIBRARIES GTK3_CFLAGS)
diff --git a/glib/demo/CMakeLists.txt b/glib/demo/CMakeLists.txt
index c3c7e166..5add9ca8 100644
--- a/glib/demo/CMakeLists.txt
+++ b/glib/demo/CMakeLists.txt
@@ -27,6 +27,9 @@ set(poppler_glib_demo_SRCS
taggedstruct.c
)
poppler_add_test(poppler-glib-demo BUILD_GTK_TESTS ${poppler_glib_demo_SRCS})
-find_package(PkgConfig REQUIRED)
-pkg_check_modules(GTK3 REQUIRED IMPORTED_TARGET gtk+-3.0)
-target_link_libraries(poppler-glib-demo ${CAIRO_LIBRARIES} poppler-glib PkgConfig::GTK3)
+
+if(${CMAKE_VERSION} VERSION_LESS "3.6.0")
+ target_link_libraries(poppler-glib-demo ${CAIRO_LIBRARIES} poppler-glib ${GTK3_LIBRARIES})
+else()
+ target_link_libraries(poppler-glib-demo ${CAIRO_LIBRARIES} poppler-glib PkgConfig::GTK3)
+endif()
diff --git a/glib/tests/CMakeLists.txt b/glib/tests/CMakeLists.txt
index 096de1b8..acac077d 100644
--- a/glib/tests/CMakeLists.txt
+++ b/glib/tests/CMakeLists.txt
@@ -13,15 +13,19 @@ set(poppler_check_text_SRCS
check_text.c
)
poppler_add_unittest(poppler-check-text BUILD_GTK_TESTS ${poppler_check_text_SRCS})
-find_package(PkgConfig REQUIRED)
-pkg_check_modules(GTK3 REQUIRED IMPORTED_TARGET gtk+-3.0)
-target_link_libraries(poppler-check-text poppler-glib PkgConfig::GTK3)
set(poppler_check_bb_SRCS
check_bb.c
)
poppler_add_test(poppler-check-bb BUILD_GTK_TESTS ${poppler_check_bb_SRCS})
-target_link_libraries(poppler-check-bb poppler-glib PkgConfig::GTK3)
+
+if(${CMAKE_VERSION} VERSION_LESS "3.6.0")
+ target_link_libraries(poppler-check-text poppler-glib ${GTK3_LIBRARIES})
+ target_link_libraries(poppler-check-bb poppler-glib ${GTK3_LIBRARIES})
+else()
+ target_link_libraries(poppler-check-text poppler-glib PkgConfig::GTK3)
+ target_link_libraries(poppler-check-bb poppler-glib PkgConfig::GTK3)
+endif()
poppler_add_testcase(poppler-check-bb shapes+attachments.pdf 42.5 42.5 557.5 557.5)
poppler_add_testcase(poppler-check-bb orientation.pdf 34 34 83.74 49 793 34 808 97.19 488.02 793 561 808 34 503.61 49 56)
commit ec878dc540ce84aa010240d4795e2be2c3cc9caf
Author: John Hein <cthfzvb62g at liamekaens.com>
Date: Mon Aug 3 18:56:20 2020 -0600
cmake: Fix linker error when gtk is not in a default location
Fix the following error when libgtk-3 (et. al.) is not installed in a directory that is not a linker default location:
/usr/bin/ld: cannot find -lgtk-3
This change leverages pkg-config to add -L paths as well as the list of gtk3 libraries (-lgtk-3, etc.)
Signed-off-by: Kyle Auble <kyle.auble at outlook.com>
diff --git a/glib/demo/CMakeLists.txt b/glib/demo/CMakeLists.txt
index aa705b0f..c3c7e166 100644
--- a/glib/demo/CMakeLists.txt
+++ b/glib/demo/CMakeLists.txt
@@ -27,4 +27,6 @@ set(poppler_glib_demo_SRCS
taggedstruct.c
)
poppler_add_test(poppler-glib-demo BUILD_GTK_TESTS ${poppler_glib_demo_SRCS})
-target_link_libraries(poppler-glib-demo ${CAIRO_LIBRARIES} poppler-glib ${GTK3_LIBRARIES})
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(GTK3 REQUIRED IMPORTED_TARGET gtk+-3.0)
+target_link_libraries(poppler-glib-demo ${CAIRO_LIBRARIES} poppler-glib PkgConfig::GTK3)
diff --git a/glib/tests/CMakeLists.txt b/glib/tests/CMakeLists.txt
index ee3dbb44..096de1b8 100644
--- a/glib/tests/CMakeLists.txt
+++ b/glib/tests/CMakeLists.txt
@@ -13,13 +13,16 @@ set(poppler_check_text_SRCS
check_text.c
)
poppler_add_unittest(poppler-check-text BUILD_GTK_TESTS ${poppler_check_text_SRCS})
-target_link_libraries(poppler-check-text poppler-glib ${GTK3_LIBRARIES})
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(GTK3 REQUIRED IMPORTED_TARGET gtk+-3.0)
+target_link_libraries(poppler-check-text poppler-glib PkgConfig::GTK3)
set(poppler_check_bb_SRCS
check_bb.c
)
poppler_add_test(poppler-check-bb BUILD_GTK_TESTS ${poppler_check_bb_SRCS})
-target_link_libraries(poppler-check-bb poppler-glib ${GTK3_LIBRARIES})
+target_link_libraries(poppler-check-bb poppler-glib PkgConfig::GTK3)
+
poppler_add_testcase(poppler-check-bb shapes+attachments.pdf 42.5 42.5 557.5 557.5)
poppler_add_testcase(poppler-check-bb orientation.pdf 34 34 83.74 49 793 34 808 97.19 488.02 793 561 808 34 503.61 49 56)
poppler_add_testcase(poppler-check-bb xr01.pdf 148.71 126.35 308.11 704.57)
More information about the poppler
mailing list