Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-text/poppler/, app-text/poppler/files/
Date: Mon, 02 Nov 2020 14:07:46
Message-Id: 1604326058.885f5da062560e20a0754b0d17bd4f681c4b2f18.polynomial-c@gentoo
1 commit: 885f5da062560e20a0754b0d17bd4f681c4b2f18
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Mon Nov 2 14:04:13 2020 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Mon Nov 2 14:07:38 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=885f5da0
7
8 app-text/poppler: Bump to version 20.11.0
9
10 Package-Manager: Portage-3.0.9, Repoman-3.0.2
11 Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
12
13 app-text/poppler/Manifest | 1 +
14 .../files/poppler-20.11.0-respect-cflags.patch | 64 +++++++++++
15 app-text/poppler/poppler-20.11.0.ebuild | 124 +++++++++++++++++++++
16 3 files changed, 189 insertions(+)
17
18 diff --git a/app-text/poppler/Manifest b/app-text/poppler/Manifest
19 index d0cb619887c..0deb36ba3fe 100644
20 --- a/app-text/poppler/Manifest
21 +++ b/app-text/poppler/Manifest
22 @@ -1,3 +1,4 @@
23 DIST poppler-0.90.1.tar.xz 1633804 BLAKE2B 5c7256bca74af6cc2732fb6c413bec10ea579f28fe623ccb5d4863c62d39329a4264c240ee0e395a78de577a960a5156ba20f957990c0cde91efcee72dbc2fef SHA512 c0a38c3c40196f8b847f0737152d0cbb40656870a8ceb766134ee22ec7c21bc979a13f56b7596a13ae2f08f1a9a2c396ba7f5ff176d02c262af7e863c2afde34
24 DIST poppler-20.09.0.tar.xz 1642932 BLAKE2B be61275560bf57c639f185b5ebbd8b37b99fd008412f49890ed644e95f4d8f2c4ca865b081eea99f2604d44fa1c0c31bd551339340f03cb43ab7f5a03992f760 SHA512 fbd57dd0754279d4b0a20ccbdbfb06abc5a5d84e63915676353fd42d5b80318904cf7e6ae462db445ed6c6e011fc24675dccbb8bd3597fc6532657a4ea23406a
25 DIST poppler-20.10.0.tar.xz 1644528 BLAKE2B ce38491805ff8ecb45eea45c44c93ec85404cb310ed6da49d7ce752a4e572abfbd7f5740448d6fb0c0958aa5661ebf87a3a2988bf51b0d0f0b1ea102110952b9 SHA512 edbcd53a06df9a5911a58fd05066e44dc8ab9a1dbc6da852b40bbc5627b9c0fcb35d97f46e3fcd78f7d08f86cba37e2ab3ff81b9a18fad300571df2bf1ef91a9
26 +DIST poppler-20.11.0.tar.xz 1648432 BLAKE2B 373464ba60ed84863b40eca2e4f99ebc1625ea06f68a1621165675cf46e70713b649f90630049d15c5c2bc59bd0befb437a4039b47e17509d4fcc4fed8586d53 SHA512 c8237e931ef20d939656e2600453fffb12a2beeafb273782b2069aec6e5915d8cc85136982b7eaf5956af30ce00da2faf84d86ffab47f725447dfbb9d6ffe335
27
28 diff --git a/app-text/poppler/files/poppler-20.11.0-respect-cflags.patch b/app-text/poppler/files/poppler-20.11.0-respect-cflags.patch
29 new file mode 100644
30 index 00000000000..9845c097017
31 --- /dev/null
32 +++ b/app-text/poppler/files/poppler-20.11.0-respect-cflags.patch
33 @@ -0,0 +1,64 @@
34 +From 083bc159ce35e21ab5bb942e91e98a95ce1f8f99 Mon Sep 17 00:00:00 2001
35 +From: Lars Wendler <polynomial-c@g.o>
36 +Date: Mon, 2 Nov 2020 14:30:22 +0100
37 +Subject: [PATCH] build: respect cflags
38 +
39 +---
40 + cmake/modules/PopplerMacros.cmake | 41 -------------------------------
41 + 1 file changed, 41 deletions(-)
42 +
43 +diff --git a/cmake/modules/PopplerMacros.cmake b/cmake/modules/PopplerMacros.cmake
44 +index 6e5f0050..1a3d0f9f 100644
45 +--- a/cmake/modules/PopplerMacros.cmake
46 ++++ b/cmake/modules/PopplerMacros.cmake
47 +@@ -145,47 +145,6 @@ if(CMAKE_COMPILER_IS_GNUCXX)
48 + endif(GCC_HAS_AS_NEEDED)
49 + endif (CMAKE_COMPILER_IS_GNUCXX)
50 +
51 +-if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
52 +-# set the default compile warnings
53 +- set(_warn "-Wall -Wextra -Wpedantic")
54 +- set(_warn "${_warn} -Wno-unused-parameter")
55 +- set(_warn "${_warn} -Wcast-align")
56 +- set(_warn "${_warn} -Wformat-security")
57 +- set(_warn "${_warn} -Wframe-larger-than=65536")
58 +- set(_warn "${_warn} -Wmissing-format-attribute")
59 +- set(_warn "${_warn} -Wnon-virtual-dtor")
60 +- set(_warn "${_warn} -Woverloaded-virtual")
61 +- set(_warn "${_warn} -Wmissing-declarations")
62 +- set(_warn "${_warn} -Wundef")
63 +- set(_warn "${_warn} -Wzero-as-null-pointer-constant")
64 +- set(_warn "${_warn} -Wshadow")
65 +- set(_warn "${_warn} -Wweak-vtables")
66 +-
67 +- # set extra warnings
68 +- set(_warnx "${_warnx} -Wconversion")
69 +-
70 +- set(DEFAULT_COMPILE_WARNINGS "${_warn}")
71 +- set(DEFAULT_COMPILE_WARNINGS_EXTRA "${_warn} ${_warnx}")
72 +-
73 +- set(_save_cxxflags "${CMAKE_CXX_FLAGS}")
74 +- set(CMAKE_CXX_FLAGS "-fno-exceptions -fno-check-new -fno-common -D_DEFAULT_SOURCE")
75 +- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cxxflags}")
76 +- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG ${_save_cxxflags}")
77 +- # clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
78 +- set(CMAKE_CXX_FLAGS_DEBUG "-g ${_save_cxxflags}")
79 +- set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline ${_save_cxxflags}")
80 +- set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs ${_save_cxxflags}")
81 +- set(_save_cflags "${CMAKE_C_FLAGS}")
82 +- set(CMAKE_C_FLAGS "-std=c99 -D_DEFAULT_SOURCE")
83 +- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cflags}")
84 +- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG ${_save_cflags}")
85 +- # clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
86 +- set(CMAKE_C_FLAGS_DEBUG "-g ${_save_cflags}")
87 +- set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline ${_save_cflags}")
88 +- set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs ${_save_cflags}")
89 +-
90 +-endif()
91 +-
92 + if(CMAKE_C_COMPILER MATCHES "icc")
93 + set(_save_cxxflags "${CMAKE_CXX_FLAGS}")
94 + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cxxflags}")
95 +--
96 +2.29.2
97 +
98
99 diff --git a/app-text/poppler/poppler-20.11.0.ebuild b/app-text/poppler/poppler-20.11.0.ebuild
100 new file mode 100644
101 index 00000000000..88fc60ed4b7
102 --- /dev/null
103 +++ b/app-text/poppler/poppler-20.11.0.ebuild
104 @@ -0,0 +1,124 @@
105 +# Copyright 2005-2020 Gentoo Authors
106 +# Distributed under the terms of the GNU General Public License v2
107 +
108 +EAPI=7
109 +
110 +inherit cmake toolchain-funcs xdg-utils
111 +
112 +if [[ ${PV} == *9999* ]] ; then
113 + inherit git-r3
114 + EGIT_REPO_URI="https://anongit.freedesktop.org/git/poppler/poppler.git"
115 + SLOT="0/9999"
116 +else
117 + SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz"
118 + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
119 + SLOT="0/104" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION
120 +fi
121 +
122 +DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
123 +HOMEPAGE="https://poppler.freedesktop.org/"
124 +
125 +LICENSE="GPL-2"
126 +IUSE="cairo cjk curl +cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
127 +
128 +# No test data provided
129 +RESTRICT="test"
130 +
131 +BDEPEND="
132 + dev-util/glib-utils
133 + virtual/pkgconfig
134 +"
135 +DEPEND="
136 + media-libs/fontconfig
137 + media-libs/freetype
138 + sys-libs/zlib
139 + cairo? (
140 + dev-libs/glib:2
141 + x11-libs/cairo
142 + introspection? ( dev-libs/gobject-introspection:= )
143 + )
144 + curl? ( net-misc/curl )
145 + jpeg? ( virtual/jpeg:0 )
146 + jpeg2k? ( >=media-libs/openjpeg-2.3.0-r1:2= )
147 + lcms? ( media-libs/lcms:2 )
148 + nss? ( >=dev-libs/nss-3.19:0 )
149 + png? ( media-libs/libpng:0= )
150 + qt5? (
151 + dev-qt/qtcore:5
152 + dev-qt/qtgui:5
153 + dev-qt/qtxml:5
154 + )
155 + tiff? ( media-libs/tiff:0 )
156 +"
157 +RDEPEND="${DEPEND}
158 + cjk? ( app-text/poppler-data )
159 +"
160 +
161 +DOCS=( AUTHORS NEWS README.md README-XPDF )
162 +
163 +PATCHES=(
164 + "${FILESDIR}/${PN}-0.60.1-qt5-dependencies.patch"
165 + "${FILESDIR}/${PN}-0.28.1-fix-multilib-configuration.patch"
166 + "${FILESDIR}/${PN}-20.11.0-respect-cflags.patch"
167 + "${FILESDIR}/${PN}-0.61.0-respect-cflags.patch"
168 + "${FILESDIR}/${PN}-0.57.0-disable-internal-jpx.patch"
169 +)
170 +
171 +src_prepare() {
172 + cmake_src_prepare
173 +
174 + # Clang doesn't grok this flag, the configure nicely tests that, but
175 + # cmake just uses it, so remove it if we use clang
176 + if [[ ${CC} == clang ]] ; then
177 + sed -e 's/-fno-check-new//' -i cmake/modules/PopplerMacros.cmake || die
178 + fi
179 +
180 + if ! grep -Fq 'cmake_policy(SET CMP0002 OLD)' CMakeLists.txt ; then
181 + sed -e '/^cmake_minimum_required/acmake_policy(SET CMP0002 OLD)' \
182 + -i CMakeLists.txt || die
183 + else
184 + einfo "policy(SET CMP0002 OLD) - workaround can be removed"
185 + fi
186 +}
187 +
188 +src_configure() {
189 + xdg_environment_reset
190 + local mycmakeargs=(
191 + -DBUILD_GTK_TESTS=OFF
192 + -DBUILD_QT5_TESTS=OFF
193 + -DBUILD_CPP_TESTS=OFF
194 + -DRUN_GPERF_IF_PRESENT=OFF
195 + -DENABLE_SPLASH=ON
196 + -DENABLE_ZLIB=ON
197 + -DENABLE_ZLIB_UNCOMPRESS=OFF
198 + -DENABLE_UNSTABLE_API_ABI_HEADERS=ON
199 + -DUSE_FLOAT=OFF
200 + -DWITH_Cairo=$(usex cairo)
201 + -DENABLE_LIBCURL=$(usex curl)
202 + -DENABLE_CPP=$(usex cxx)
203 + -DWITH_JPEG=$(usex jpeg)
204 + -DENABLE_DCTDECODER=$(usex jpeg libjpeg none)
205 + -DENABLE_LIBOPENJPEG=$(usex jpeg2k openjpeg2 none)
206 + -DENABLE_CMS=$(usex lcms lcms2 none)
207 + -DWITH_NSS3=$(usex nss)
208 + -DWITH_PNG=$(usex png)
209 + $(cmake_use_find_package qt5 Qt5Core)
210 + -DWITH_TIFF=$(usex tiff)
211 + -DENABLE_UTILS=$(usex utils)
212 + -DENABLE_QT6=OFF
213 + )
214 + use cairo && mycmakeargs+=( -DWITH_GObjectIntrospection=$(usex introspection) )
215 +
216 + cmake_src_configure
217 +}
218 +
219 +src_install() {
220 + cmake_src_install
221 +
222 + # live version doesn't provide html documentation
223 + if use cairo && use doc && [[ ${PV} != *9999* ]]; then
224 + # For now install gtk-doc there
225 + insinto /usr/share/gtk-doc/html/poppler
226 + doins -r "${S}"/glib/reference/html/*
227 + fi
228 +}