Gentoo Archives: gentoo-commits

From: Matt Turner <mattst88@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: x11-libs/gtk+/
Date: Sat, 01 May 2021 02:57:13
Message-Id: 1619837797.dbfdf135d3b56dc428abfc500529577030890bfb.mattst88@gentoo
1 commit: dbfdf135d3b56dc428abfc500529577030890bfb
2 Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
3 AuthorDate: Sat May 1 02:17:30 2021 +0000
4 Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
5 CommitDate: Sat May 1 02:56:37 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dbfdf135
7
8 x11-libs/gtk+: Version bump to 3.24.29
9
10 Closes: https://bugs.gentoo.org/786411
11 Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>
12
13 x11-libs/gtk+/Manifest | 1 +
14 x11-libs/gtk+/gtk+-3.24.29.ebuild | 254 ++++++++++++++++++++++++++++++++++++++
15 2 files changed, 255 insertions(+)
16
17 diff --git a/x11-libs/gtk+/Manifest b/x11-libs/gtk+/Manifest
18 index 09938d12d58..95dc8f878f0 100644
19 --- a/x11-libs/gtk+/Manifest
20 +++ b/x11-libs/gtk+/Manifest
21 @@ -3,3 +3,4 @@ DIST gtk+-2.24.32.tar.xz 12620860 BLAKE2B 03f4c0a8be98473f62bc8c86859937969c4169
22 DIST gtk+-2.24.33.tar.xz 12661828 BLAKE2B f3488b220aaee54bf36fa77e2112d060152e57938845d240014a7d43a5743b1d4de19cc09c683d9d238fd1967cd67cc3c493f2475e4e481f6709f5cdc652c65c SHA512 71b588797c81f727dfac8dcb1be193f7436f717d30ecf18eae2d3aeb0f445b3be4743400acac16435490db8f564f01032065d3f42d27871317f80c98aef929d5
23 DIST gtk+-3.24.26.tar.xz 21404732 BLAKE2B 8260b684b4d508af6b9a5060e47847254ae6bf647ae1dfa131bdbb35f2eaeb3f45ba749e9ad6e1920c05dab660d78424e38d974070928c56e91fc422a62d87db SHA512 d3023e9cd0c1f0de384266c4bd4549a7006ff475de82617de16378617a4a669645ad355cbabfe2ff43b19dddfbba7b9413ec98c14ed0f5ee3a61466b3d6eff76
24 DIST gtk+-3.24.28.tar.xz 22783312 BLAKE2B b0a8dd5619feacf44880bb1ef168fce5431802c401fbb31408a4a4a9822755ca76cc309eb0f271e98cce63ad7f5cbec4d0d6c947a631843bfbe509a81836778b SHA512 65856ae06e4a863c56b3718c0cc3d0ca9f61a62a02ddef30904432300cd455851efee3fa1e5661659eaacbdfca45650ee7c8a2d4eca004ad2936c1e26c720c15
25 +DIST gtk+-3.24.29.tar.xz 21396876 BLAKE2B 1675e54b185d813965a6279fa80a62784fc6216408710fad0b07a3300eb08301c80779e6e3a6b1109ce29bacca4e7ff4710b670a68ec0c6ffa68e44cfb07ccc5 SHA512 00f71024686c2d11d5c0cdd683365c35fe4d28b5eaad4937e79690777500788818faa5bd0c483e54ba8ce734aa6411388a39e398dc638cfcf0ec0e542aae6c2b
26
27 diff --git a/x11-libs/gtk+/gtk+-3.24.29.ebuild b/x11-libs/gtk+/gtk+-3.24.29.ebuild
28 new file mode 100644
29 index 00000000000..54b60dc29ad
30 --- /dev/null
31 +++ b/x11-libs/gtk+/gtk+-3.24.29.ebuild
32 @@ -0,0 +1,254 @@
33 +# Copyright 1999-2021 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=7
37 +GNOME2_EAUTORECONF="yes"
38 +
39 +inherit gnome2 multilib multilib-minimal virtualx
40 +
41 +DESCRIPTION="Gimp ToolKit +"
42 +HOMEPAGE="https://www.gtk.org/"
43 +
44 +LICENSE="LGPL-2+"
45 +SLOT="3"
46 +IUSE="aqua broadway cloudprint colord cups examples gtk-doc +introspection sysprof test vim-syntax wayland +X xinerama"
47 +REQUIRED_USE="
48 + || ( aqua wayland X )
49 + xinerama? ( X )
50 +"
51 +
52 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
53 +
54 +# Upstream wants us to do their job:
55 +# https://bugzilla.gnome.org/show_bug.cgi?id=768662#c1
56 +RESTRICT="test"
57 +
58 +# FIXME: introspection data is built against system installation of gtk+:3,
59 +# bug #????
60 +COMMON_DEPEND="
61 + >=dev-libs/atk-2.32.0[introspection?,${MULTILIB_USEDEP}]
62 + >=dev-libs/fribidi-0.19.7[${MULTILIB_USEDEP}]
63 + >=dev-libs/glib-2.57.2:2[${MULTILIB_USEDEP}]
64 + media-libs/fontconfig[${MULTILIB_USEDEP}]
65 + >=media-libs/harfbuzz-0.9:=
66 + >=media-libs/libepoxy-1.4[X(+)?,${MULTILIB_USEDEP}]
67 + virtual/libintl[${MULTILIB_USEDEP}]
68 + >=x11-libs/cairo-1.14[aqua?,glib,svg,X?,${MULTILIB_USEDEP}]
69 + >=x11-libs/gdk-pixbuf-2.30:2[introspection?,${MULTILIB_USEDEP}]
70 + >=x11-libs/pango-1.41.0[introspection?,${MULTILIB_USEDEP}]
71 + x11-misc/shared-mime-info
72 +
73 + cloudprint? (
74 + >=dev-libs/json-glib-1.0[${MULTILIB_USEDEP}]
75 + >=net-libs/rest-0.7[${MULTILIB_USEDEP}]
76 + )
77 + colord? ( >=x11-misc/colord-0.1.9:0=[${MULTILIB_USEDEP}] )
78 + cups? ( >=net-print/cups-2.0[${MULTILIB_USEDEP}] )
79 + introspection? ( >=dev-libs/gobject-introspection-1.39:= )
80 + sysprof? ( >=dev-util/sysprof-capture-3.33.2:3[${MULTILIB_USEDEP}] )
81 + wayland? (
82 + >=dev-libs/wayland-1.14.91[${MULTILIB_USEDEP}]
83 + >=dev-libs/wayland-protocols-1.17
84 + media-libs/mesa[wayland,${MULTILIB_USEDEP}]
85 + >=x11-libs/libxkbcommon-0.2[${MULTILIB_USEDEP}]
86 + )
87 + X? (
88 + >=app-accessibility/at-spi2-atk-2.15.1[${MULTILIB_USEDEP}]
89 + media-libs/mesa[X(+),${MULTILIB_USEDEP}]
90 + x11-libs/libX11[${MULTILIB_USEDEP}]
91 + x11-libs/libXcomposite[${MULTILIB_USEDEP}]
92 + x11-libs/libXcursor[${MULTILIB_USEDEP}]
93 + x11-libs/libXdamage[${MULTILIB_USEDEP}]
94 + x11-libs/libXext[${MULTILIB_USEDEP}]
95 + x11-libs/libXfixes[${MULTILIB_USEDEP}]
96 + >=x11-libs/libXi-1.3[${MULTILIB_USEDEP}]
97 + >=x11-libs/libXrandr-1.5[${MULTILIB_USEDEP}]
98 + xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
99 + )
100 +"
101 +DEPEND="${COMMON_DEPEND}
102 + test? (
103 + media-fonts/font-cursor-misc
104 + media-fonts/font-misc-misc
105 + )
106 + X? ( x11-base/xorg-proto )
107 +"
108 +# gtk+-3.2.2 breaks Alt key handling in <=x11-libs/vte-0.30.1:2.90
109 +# gtk+-3.3.18 breaks scrolling in <=x11-libs/vte-0.31.0:2.90
110 +RDEPEND="${COMMON_DEPEND}
111 + >=dev-util/gtk-update-icon-cache-3
112 + !<x11-libs/vte-0.31.0:2.90
113 +"
114 +# librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710
115 +PDEPEND="
116 + gnome-base/librsvg[${MULTILIB_USEDEP}]
117 + >=x11-themes/adwaita-icon-theme-3.14
118 + vim-syntax? ( app-vim/gtk-syntax )
119 +"
120 +BDEPEND="
121 + app-text/docbook-xml-dtd:4.1.2
122 + app-text/docbook-xsl-stylesheets
123 + dev-libs/gobject-introspection-common
124 + dev-libs/libxslt
125 + >=dev-util/gdbus-codegen-2.48
126 + dev-util/glib-utils
127 + >=dev-util/gtk-doc-am-1.20
128 + wayland? ( dev-util/wayland-scanner )
129 + >=sys-devel/gettext-0.19.7
130 + virtual/pkgconfig
131 + x11-libs/gdk-pixbuf:2
132 + gtk-doc? (
133 + app-text/docbook-xml-dtd:4.3
134 + >=dev-util/gtk-doc-1.20
135 + )
136 +"
137 +
138 +MULTILIB_CHOST_TOOLS=(
139 + /usr/bin/gtk-query-immodules-3.0$(get_exeext)
140 +)
141 +
142 +PATCHES=(
143 + # gtk-update-icon-cache is installed by dev-util/gtk-update-icon-cache
144 + "${FILESDIR}"/${PN}-3.24.25-update-icon-cache.patch
145 +
146 + # Fix broken autotools logic
147 + "${FILESDIR}"/${PN}-3.22.20-libcloudproviders-automagic.patch
148 +)
149 +
150 +strip_builddir() {
151 + local rule=$1
152 + shift
153 + local directory=$1
154 + shift
155 + sed -e "s/^\(${rule} =.*\)${directory}\(.*\)$/\1\2/" -i $@ \
156 + || die "Could not strip director ${directory} from build."
157 +}
158 +
159 +src_prepare() {
160 + if ! use test ; then
161 + # don't waste time building tests
162 + strip_builddir SRC_SUBDIRS testsuite Makefile.{am,in}
163 +
164 + # the tests dir needs to be build now because since commit
165 + # 7ff3c6df80185e165e3bf6aa31bd014d1f8bf224 tests/gtkgears.o needs to be there
166 + # strip_builddir SRC_SUBDIRS tests Makefile.{am,in}
167 + fi
168 +
169 + if ! use examples; then
170 + # don't waste time building demos
171 + strip_builddir SRC_SUBDIRS demos Makefile.{am,in}
172 + strip_builddir SRC_SUBDIRS examples Makefile.{am,in}
173 + fi
174 +
175 + gnome2_src_prepare
176 +}
177 +
178 +multilib_src_configure() {
179 + local myconf=(
180 + $(use_enable aqua quartz-backend)
181 + $(use_enable broadway broadway-backend)
182 + $(use_enable cloudprint)
183 + $(use_enable colord)
184 + $(use_enable cups cups auto)
185 + $(multilib_native_use_enable gtk-doc)
186 + $(multilib_native_use_enable introspection)
187 + $(use_enable sysprof profiler)
188 + $(use_enable wayland wayland-backend)
189 + $(use_enable X x11-backend)
190 + $(use_enable X xcomposite)
191 + $(use_enable X xdamage)
192 + $(use_enable X xfixes)
193 + $(use_enable X xkb)
194 + $(use_enable X xrandr)
195 + $(use_enable xinerama)
196 + # cloudprovider is not packaged in Gentoo yet
197 + --disable-cloudproviders
198 + --disable-papi
199 + --enable-man
200 + --with-xml-catalog="${EPREFIX}"/etc/xml/catalog
201 + # need libdir here to avoid a double slash in a path that libtool doesn't
202 + # grok so well during install (// between $EPREFIX and usr ...)
203 + # TODO: Is this still the case?
204 + --libdir="${EPREFIX}"/usr/$(get_libdir)
205 + CUPS_CONFIG="${EPREFIX}/usr/bin/${CHOST}-cups-config"
206 + )
207 +
208 + if use wayland; then
209 + myconf+=(
210 + # Include wayland immodule into gtk itself, to avoid problems like
211 + # https://gitlab.gnome.org/GNOME/gnome-shell/issues/109 from a
212 + # user overridden GTK_IM_MODULE envvar
213 + --with-included-immodules=wayland
214 + )
215 + fi;
216 +
217 + ECONF_SOURCE=${S} gnome2_src_configure "${myconf[@]}"
218 +
219 + # work-around gtk-doc out-of-source brokedness
220 + if multilib_is_native_abi; then
221 + local d
222 + for d in gdk gtk libgail-util; do
223 + ln -s "${S}"/docs/reference/${d}/html docs/reference/${d}/html || die
224 + done
225 + fi
226 +}
227 +
228 +multilib_src_test() {
229 + "${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/gtk" || die
230 + GSETTINGS_SCHEMA_DIR="${S}/gtk" virtx emake check
231 +}
232 +
233 +multilib_src_install() {
234 + gnome2_src_install
235 +}
236 +
237 +multilib_src_install_all() {
238 + insinto /etc/gtk-3.0
239 + doins "${FILESDIR}"/settings.ini
240 + # Skip README.{in,commits,win32} that would get installed by default
241 + DOCS=( AUTHORS ChangeLog NEWS README )
242 + einstalldocs
243 +}
244 +
245 +pkg_preinst() {
246 + gnome2_pkg_preinst
247 +
248 + multilib_pkg_preinst() {
249 + # Make immodules.cache belongs to gtk+ alone
250 + local cache="/usr/$(get_libdir)/gtk-3.0/3.0.0/immodules.cache"
251 +
252 + if [[ -e ${EROOT}${cache} ]]; then
253 + cp "${EROOT}${cache}" "${ED}${cache}" || die
254 + else
255 + touch "${ED}${cache}" || die
256 + fi
257 + }
258 + multilib_parallel_foreach_abi multilib_pkg_preinst
259 +}
260 +
261 +pkg_postinst() {
262 + gnome2_pkg_postinst
263 +
264 + multilib_pkg_postinst() {
265 + gnome2_query_immodules_gtk3 \
266 + || die "Update immodules cache failed (for ${ABI})"
267 + }
268 + multilib_parallel_foreach_abi multilib_pkg_postinst
269 +
270 + if ! has_version "app-text/evince"; then
271 + elog "Please install app-text/evince for print preview functionality."
272 + elog "Alternatively, check \"gtk-print-preview-command\" documentation and"
273 + elog "add it to your settings.ini file."
274 + fi
275 +}
276 +
277 +pkg_postrm() {
278 + gnome2_pkg_postrm
279 +
280 + if [[ -z ${REPLACED_BY_VERSION} ]]; then
281 + multilib_pkg_postrm() {
282 + rm -f "${EROOT}/usr/$(get_libdir)/gtk-3.0/3.0.0/immodules.cache"
283 + }
284 + multilib_foreach_abi multilib_pkg_postrm
285 + fi
286 +}