Hi, Here's a overdue update of poppler.
Why not to the latest version? Because this is what I've in my tree and doesn't break things. I'll give 23.07.0 a try right after this goes in. Three ports will need changes for this update: editors/calligra graphics/pdf2djvu print/scribus I'll send diffs for those in a minute. Ciao, Kili Index: Makefile =================================================================== RCS file: /cvs/ports/print/poppler/Makefile,v retrieving revision 1.173 diff -u -p -r1.173 Makefile --- Makefile 25 Nov 2022 09:32:28 -0000 1.173 +++ Makefile 16 Jul 2023 21:47:08 -0000 @@ -3,7 +3,7 @@ COMMENT-qt5= Qt5 interface to PDF render COMMENT-qt6= Qt6 interface to PDF rendering library COMMENT-utils= PDF conversion tools and utilities -V= 21.12.0 +V= 23.05.0 DISTNAME= poppler-$V CATEGORIES= print PKGNAME-main= poppler-$V @@ -11,15 +11,13 @@ PKGNAME-utils= poppler-utils-$V PKGNAME-qt5= poppler-qt5-$V PKGNAME-qt6= poppler-qt6-$V -REVISION-main = 1 - EXTRACT_SUFX= .tar.xz -SHARED_LIBS += poppler 73.0 # 116.0 -SHARED_LIBS += poppler-glib 19.10 # 8.22 -SHARED_LIBS += poppler-qt5 8.10 # 1.30 -SHARED_LIBS += poppler-qt6 1.1 # 3.1 -SHARED_LIBS += poppler-cpp 17.0 # 0.9 +SHARED_LIBS += poppler 74.0 # 128.0 +SHARED_LIBS += poppler-glib 19.11 # 8.24 +SHARED_LIBS += poppler-qt5 8.11 # 1.31 +SHARED_LIBS += poppler-qt6 1.2 # 3.2 +SHARED_LIBS += poppler-cpp 17.1 # 0.11 HOMEPAGE= https://poppler.freedesktop.org/ Index: distinfo =================================================================== RCS file: /cvs/ports/print/poppler/distinfo,v retrieving revision 1.93 diff -u -p -r1.93 distinfo --- distinfo 24 Dec 2021 10:09:02 -0000 1.93 +++ distinfo 16 Jul 2023 21:47:08 -0000 @@ -1,2 +1,2 @@ -SHA256 (poppler-21.12.0.tar.xz) = rLhAwsHsB9B+U8V8Szof8+PuLYiNROHp8vAarxaBTec= -SIZE (poppler-21.12.0.tar.xz) = 1798780 +SHA256 (poppler-23.05.0.tar.xz) = OClN5xSevkWBkabm0OKDfafbqGg5AKY1JS9tDuI1+ZA= +SIZE (poppler-23.05.0.tar.xz) = 1856488 Index: patches/patch-CMakeLists_txt =================================================================== RCS file: /cvs/ports/print/poppler/patches/patch-CMakeLists_txt,v retrieving revision 1.2 diff -u -p -r1.2 patch-CMakeLists_txt --- patches/patch-CMakeLists_txt 11 Mar 2022 19:51:06 -0000 1.2 +++ patches/patch-CMakeLists_txt 16 Jul 2023 21:47:08 -0000 @@ -3,11 +3,11 @@ Allow to build against qt-6.0. Index: CMakeLists.txt --- CMakeLists.txt.orig +++ CMakeLists.txt -@@ -191,7 +191,7 @@ endif() +@@ -204,7 +204,7 @@ endif() if (ENABLE_QT6) SET(QT_NO_CREATE_VERSIONLESS_TARGETS ON) -- find_package(Qt6 6.1 COMPONENTS Core Gui Widgets Test QUIET) +- find_package(Qt6 6.2 COMPONENTS Core Gui Widgets Test QUIET) + find_package(Qt6 COMPONENTS Core Gui Widgets Test QUIET) if (NOT (Qt6Core_FOUND AND Qt6Gui_FOUND AND Qt6Widgets_FOUND AND Qt6Test_FOUND)) message("-- Package Qt6Core or Qt6Gui or Qt6Widgets or Qt6Test not found") Index: patches/patch-cpp_CMakeLists_txt =================================================================== RCS file: /cvs/ports/print/poppler/patches/patch-cpp_CMakeLists_txt,v retrieving revision 1.3 diff -u -p -r1.3 patch-cpp_CMakeLists_txt --- patches/patch-cpp_CMakeLists_txt 11 Mar 2022 19:51:06 -0000 1.3 +++ patches/patch-cpp_CMakeLists_txt 16 Jul 2023 21:47:08 -0000 @@ -3,11 +3,11 @@ Index: cpp/CMakeLists.txt --- cpp/CMakeLists.txt.orig +++ cpp/CMakeLists.txt -@@ -26,7 +26,6 @@ set(poppler_cpp_SRCS +@@ -25,7 +25,6 @@ set(poppler_cpp_SRCS add_library(poppler-cpp ${poppler_cpp_SRCS}) generate_export_header(poppler-cpp BASE_NAME poppler-cpp EXPORT_FILE_NAME "${CMAKE_CURRENT_BINARY_DIR}/poppler_cpp_export.h") --set_target_properties(poppler-cpp PROPERTIES VERSION 0.9.0 SOVERSION 0) +-set_target_properties(poppler-cpp PROPERTIES VERSION 0.11.0 SOVERSION 0) if(MINGW AND BUILD_SHARED_LIBS) get_target_property(POPPLER_CPP_SOVERSION poppler-cpp SOVERSION) set_target_properties(poppler-cpp PROPERTIES SUFFIX "-${POPPLER_CPP_SOVERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}") Index: patches/patch-glib_CMakeLists_txt =================================================================== RCS file: /cvs/ports/print/poppler/patches/patch-glib_CMakeLists_txt,v retrieving revision 1.12 diff -u -p -r1.12 patch-glib_CMakeLists_txt --- patches/patch-glib_CMakeLists_txt 11 Mar 2022 19:51:06 -0000 1.12 +++ patches/patch-glib_CMakeLists_txt 16 Jul 2023 21:47:08 -0000 @@ -3,15 +3,15 @@ Index: glib/CMakeLists.txt --- glib/CMakeLists.txt.orig +++ glib/CMakeLists.txt -@@ -87,7 +87,6 @@ set(poppler_glib_generated_SRCS +@@ -90,7 +90,6 @@ set(poppler_glib_generated_SRCS ) add_library(poppler-glib ${poppler_glib_SRCS} ${poppler_glib_generated_SRCS}) generate_export_header(poppler-glib EXPORT_MACRO_NAME POPPLER_PUBLIC EXPORT_FILE_NAME "${CMAKE_CURRENT_BINARY_DIR}/poppler-macros.h") --set_target_properties(poppler-glib PROPERTIES VERSION 8.22.0 SOVERSION 8) +-set_target_properties(poppler-glib PROPERTIES VERSION 8.24.0 SOVERSION 8) if(MINGW AND BUILD_SHARED_LIBS) get_target_property(POPPLER_GLIB_SOVERSION poppler-glib SOVERSION) set_target_properties(poppler-glib PROPERTIES SUFFIX "-${POPPLER_GLIB_SOVERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}") -@@ -130,6 +129,9 @@ if (HAVE_INTROSPECTION AND BUILD_SHARED_LIBS) +@@ -131,6 +130,9 @@ if (HAVE_INTROSPECTION AND BUILD_SHARED_LIBS) _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}) Index: patches/patch-poppler_Form_cc =================================================================== RCS file: /cvs/ports/print/poppler/patches/patch-poppler_Form_cc,v retrieving revision 1.12 diff -u -p -r1.12 patch-poppler_Form_cc --- patches/patch-poppler_Form_cc 11 Mar 2022 19:51:06 -0000 1.12 +++ patches/patch-poppler_Form_cc 16 Jul 2023 21:47:08 -0000 @@ -1,7 +1,7 @@ Index: poppler/Form.cc --- poppler/Form.cc.orig +++ poppler/Form.cc -@@ -39,6 +39,7 @@ +@@ -42,6 +42,7 @@ #include <config.h> #include <set> Index: patches/patch-poppler_JBIG2Stream_cc =================================================================== RCS file: /cvs/ports/print/poppler/patches/patch-poppler_JBIG2Stream_cc,v retrieving revision 1.1 diff -u -p -r1.1 patch-poppler_JBIG2Stream_cc --- patches/patch-poppler_JBIG2Stream_cc 27 Aug 2022 20:32:21 -0000 1.1 +++ patches/patch-poppler_JBIG2Stream_cc 16 Jul 2023 21:47:08 -0000 @@ -1,20 +0,0 @@ -Apply similar fix for CVE-2022-38171 as done in xpdf. - -From upstream commit 27354e9d9696ee2bc063910a6c9a6b27c5184a52. - -Index: poppler/JBIG2Stream.cc ---- poppler/JBIG2Stream.cc.orig -+++ poppler/JBIG2Stream.cc -@@ -1968,7 +1968,11 @@ void JBIG2Stream::readTextRegionSeg(unsigned int segNu - for (i = 0; i < nRefSegs; ++i) { - if ((seg = findSegment(refSegs[i]))) { - if (seg->getType() == jbig2SegSymbolDict) { -- numSyms += ((JBIG2SymbolDict *)seg)->getSize(); -+ const unsigned int segSize = ((JBIG2SymbolDict *)seg)->getSize(); -+ if (unlikely(checkedAdd(numSyms, segSize, &numSyms))) { -+ error(errSyntaxError, getPos(), "Too many symbols in JBIG2 text region"); -+ return; -+ } - } else if (seg->getType() == jbig2SegCodeTable) { - codeTables.push_back(seg); - } Index: patches/patch-poppler_XRef_cc =================================================================== RCS file: /cvs/ports/print/poppler/patches/patch-poppler_XRef_cc,v retrieving revision 1.28 diff -u -p -r1.28 patch-poppler_XRef_cc --- patches/patch-poppler_XRef_cc 11 Mar 2022 19:51:06 -0000 1.28 +++ patches/patch-poppler_XRef_cc 16 Jul 2023 21:47:08 -0000 @@ -1,7 +1,7 @@ Index: poppler/XRef.cc --- poppler/XRef.cc.orig +++ poppler/XRef.cc -@@ -1076,7 +1076,7 @@ bool XRef::isRefEncrypted(Ref r) +@@ -1094,7 +1094,7 @@ bool XRef::isRefEncrypted(Ref r) bool XRef::okToPrint(bool ignoreOwnerPW) const { @@ -10,7 +10,7 @@ Index: poppler/XRef.cc } // we can print at high res if we are only doing security handler revision -@@ -1084,48 +1084,37 @@ bool XRef::okToPrint(bool ignoreOwnerPW) const +@@ -1102,48 +1102,37 @@ bool XRef::okToPrint(bool ignoreOwnerPW) const // 3 and we are allowed to print, and bit 12 is set. bool XRef::okToPrintHighRes(bool ignoreOwnerPW) const { Index: patches/patch-qt5_src_CMakeLists_txt =================================================================== RCS file: /cvs/ports/print/poppler/patches/patch-qt5_src_CMakeLists_txt,v retrieving revision 1.8 diff -u -p -r1.8 patch-qt5_src_CMakeLists_txt --- patches/patch-qt5_src_CMakeLists_txt 11 Mar 2022 19:51:06 -0000 1.8 +++ patches/patch-qt5_src_CMakeLists_txt 16 Jul 2023 21:47:08 -0000 @@ -7,7 +7,7 @@ Index: qt5/src/CMakeLists.txt ) add_library(poppler-qt5 ${poppler_qt5_SRCS}) generate_export_header(poppler-qt5 BASE_NAME poppler-qt5 EXPORT_FILE_NAME "${CMAKE_CURRENT_BINARY_DIR}/poppler-export.h") --set_target_properties(poppler-qt5 PROPERTIES VERSION 1.30.0 SOVERSION 1) +-set_target_properties(poppler-qt5 PROPERTIES VERSION 1.31.0 SOVERSION 1) if(MINGW AND BUILD_SHARED_LIBS) get_target_property(POPPLER_QT5_SOVERSION poppler-qt5 SOVERSION) set_target_properties(poppler-qt5 PROPERTIES SUFFIX "-${POPPLER_QT5_SOVERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}") Index: patches/patch-qt6_src_CMakeLists_txt =================================================================== RCS file: /cvs/ports/print/poppler/patches/patch-qt6_src_CMakeLists_txt,v retrieving revision 1.5 diff -u -p -r1.5 patch-qt6_src_CMakeLists_txt --- patches/patch-qt6_src_CMakeLists_txt 11 Mar 2022 19:51:06 -0000 1.5 +++ patches/patch-qt6_src_CMakeLists_txt 16 Jul 2023 21:47:08 -0000 @@ -7,7 +7,7 @@ Index: qt6/src/CMakeLists.txt ) add_library(poppler-qt6 ${poppler_qt6_SRCS}) generate_export_header(poppler-qt6 BASE_NAME poppler-qt6 EXPORT_FILE_NAME "${CMAKE_CURRENT_BINARY_DIR}/poppler-export.h") --set_target_properties(poppler-qt6 PROPERTIES VERSION 3.1.0 SOVERSION 3) +-set_target_properties(poppler-qt6 PROPERTIES VERSION 3.2.0 SOVERSION 3) if(MINGW AND BUILD_SHARED_LIBS) get_target_property(POPPLER_QT6_SOVERSION poppler-qt6 SOVERSION) set_target_properties(poppler-qt6 PROPERTIES SUFFIX "-${POPPLER_QT6_SOVERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}") Index: patches/patch-utils_CMakeLists_txt =================================================================== RCS file: /cvs/ports/print/poppler/patches/patch-utils_CMakeLists_txt,v retrieving revision 1.7 diff -u -p -r1.7 patch-utils_CMakeLists_txt --- patches/patch-utils_CMakeLists_txt 11 Mar 2022 19:51:06 -0000 1.7 +++ patches/patch-utils_CMakeLists_txt 16 Jul 2023 21:47:08 -0000 @@ -4,12 +4,12 @@ up any already installed older version o Index: utils/CMakeLists.txt --- utils/CMakeLists.txt.orig +++ utils/CMakeLists.txt -@@ -37,7 +37,7 @@ if (HAVE_CAIRO) +@@ -36,7 +36,7 @@ if (HAVE_CAIRO) ) add_definitions(${CAIRO_CFLAGS}) add_executable(pdftocairo ${pdftocairo_SOURCES}) -- target_link_libraries(pdftocairo ${CAIRO_LIBRARIES} ${FREETYPE_LIBRARIES} ${common_libs}) -+ target_link_libraries(pdftocairo ${common_libs} ${CAIRO_LIBRARIES} ${FREETYPE_LIBRARIES}) - if(CMAKE_USE_PTHREADS_INIT) - target_link_libraries(pdftocairo Threads::Threads) - endif() +- target_link_libraries(pdftocairo ${CAIRO_LIBRARIES} Freetype::Freetype ${common_libs}) ++ target_link_libraries(pdftocairo ${common_libs} ${CAIRO_LIBRARIES} Freetype::Freetype) + target_include_directories(pdftocairo SYSTEM PRIVATE ${CAIRO_INCLUDE_DIRS}) + if(LCMS2_FOUND) + target_link_libraries(pdftocairo ${LCMS2_LIBRARIES})