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})