1 |
commit: a17c778dcd5f7b58d78c8bc35ae54142891db517 |
2 |
Author: Mart Raudsepp <leio <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Sep 8 22:21:55 2018 +0000 |
4 |
Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Sep 9 00:11:50 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a17c778d |
7 |
|
8 |
x11-libs/gtk+: bump to 3.24.0 for a few new features |
9 |
|
10 |
Most notable new features for the gtk3 series with 3.24 over 3.22 are: |
11 |
* The font chooser exposes more advanced OpenType features |
12 |
* Emoji completion support via :emoji-name: style suggestions |
13 |
* New GdkEventController subclasses for more fine-grained control |
14 |
over input events. |
15 |
* Ability to choose color from the screen with Wayland. Requires |
16 |
running under newer gnome-shell than we have at the time of |
17 |
commit or a newer kwin, though. |
18 |
|
19 |
3.24.x is now really expected to be the last gtk3 series, but bug fix |
20 |
releases are expected to happen for quite some years to come. Next big |
21 |
thing is gtk4, expected in March 2019. |
22 |
|
23 |
Package-Manager: Portage-2.3.49, Repoman-2.3.10 |
24 |
|
25 |
x11-libs/gtk+/Manifest | 1 + |
26 |
x11-libs/gtk+/gtk+-3.24.0.ebuild | 227 +++++++++++++++++++++++++++++++++++++++ |
27 |
2 files changed, 228 insertions(+) |
28 |
|
29 |
diff --git a/x11-libs/gtk+/Manifest b/x11-libs/gtk+/Manifest |
30 |
index 000211ae691..63cfee31388 100644 |
31 |
--- a/x11-libs/gtk+/Manifest |
32 |
+++ b/x11-libs/gtk+/Manifest |
33 |
@@ -4,3 +4,4 @@ DIST gtk+-2.24.32.tar.xz 12620860 BLAKE2B 03f4c0a8be98473f62bc8c86859937969c4169 |
34 |
DIST gtk+-3.22.19.tar.xz 18841024 BLAKE2B dc4c27d022c6766036b16e52b53b4aa3946c41457abaabca390bdba2b720db71b9c584101990928af1bef73dc49f7b71a951ba0000bd52e11aa5306a1d877f18 SHA512 c83198794433ee6eb29f8740d59bd7056cd36808b4bff1a99563ab1a1742e6635dab4f2a8be33317f74d3b336f0d1adc28dd91410da056b50a08c215f184dce2 |
35 |
DIST gtk+-3.22.29.tar.xz 18964852 BLAKE2B a7551d604a1e27cba1d0580f2645bf4afff900908ce40d3d4d05cfb7348afc0620922e9b7939cf4ce2314ff489ffe38386aaf2634f3eff6591dfd0a225f19bc7 SHA512 046fa4458626e81ea7b1ddb753d53ecd91d0f2101af428cfdf77fe866bbe430cb3622203cc5e895b220a9364e35009245cdaf76e0cfa30d32d31095b5fcb42bc |
36 |
DIST gtk+-3.22.30.tar.xz 18946084 BLAKE2B 020512f61ae9d265849bb684c55c6ad3f1e1726d73ce169cd482e781e614f22f37ac23bc721b1dc11df03f0d4e07333266cc8549633cb255ca99a85a499108d3 SHA512 31440a615cb2f406d0f904e59febb8f876106f27818ddd6951c76ab9bcb421ca480dae2bebfb1c4b1e03b833fc7c42e9feede053d9d71f19a02fe778e3197b38 |
37 |
+DIST gtk+-3.24.0.tar.xz 19273044 BLAKE2B c1ecf7f0cb5e58ce4b3b4f5422b0d479a6078f124cc101e5fabd57c32dd6d8c75c5c90da3db373ff9f71ecec64527adec432775a7ad8f87a85d8d9cdfae097eb SHA512 c82228f31a422d7f180b1157de697d941f2826f9a85a44d2a583564130626c88759a62269bb01f54969e00ff7499db4e1b026dbfb060dda1b6e62f36f3267981 |
38 |
|
39 |
diff --git a/x11-libs/gtk+/gtk+-3.24.0.ebuild b/x11-libs/gtk+/gtk+-3.24.0.ebuild |
40 |
new file mode 100644 |
41 |
index 00000000000..ca759ea53d6 |
42 |
--- /dev/null |
43 |
+++ b/x11-libs/gtk+/gtk+-3.24.0.ebuild |
44 |
@@ -0,0 +1,227 @@ |
45 |
+# Copyright 1999-2018 Gentoo Foundation |
46 |
+# Distributed under the terms of the GNU General Public License v2 |
47 |
+ |
48 |
+EAPI=6 |
49 |
+GNOME2_LA_PUNT="yes" |
50 |
+ |
51 |
+inherit autotools flag-o-matic gnome2 multilib virtualx multilib-minimal |
52 |
+ |
53 |
+DESCRIPTION="Gimp ToolKit +" |
54 |
+HOMEPAGE="https://www.gtk.org/" |
55 |
+ |
56 |
+LICENSE="LGPL-2+" |
57 |
+SLOT="3" |
58 |
+IUSE="aqua broadway cloudprint colord cups examples +introspection test vim-syntax wayland +X xinerama" |
59 |
+REQUIRED_USE=" |
60 |
+ || ( aqua wayland X ) |
61 |
+ xinerama? ( X ) |
62 |
+" |
63 |
+ |
64 |
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" |
65 |
+ |
66 |
+# Upstream wants us to do their job: |
67 |
+# https://bugzilla.gnome.org/show_bug.cgi?id=768662#c1 |
68 |
+RESTRICT="test" |
69 |
+ |
70 |
+# FIXME: introspection data is built against system installation of gtk+:3, |
71 |
+# bug #???? |
72 |
+COMMON_DEPEND=" |
73 |
+ >=dev-libs/atk-2.15[introspection?,${MULTILIB_USEDEP}] |
74 |
+ >=dev-libs/glib-2.49.4:2[${MULTILIB_USEDEP}] |
75 |
+ media-libs/fontconfig[${MULTILIB_USEDEP}] |
76 |
+ >=media-libs/libepoxy-1.4[X(+)?,${MULTILIB_USEDEP}] |
77 |
+ >=x11-libs/cairo-1.14[aqua?,glib,svg,X?,${MULTILIB_USEDEP}] |
78 |
+ >=x11-libs/gdk-pixbuf-2.30:2[introspection?,${MULTILIB_USEDEP}] |
79 |
+ >=x11-libs/pango-1.41.0[introspection?,${MULTILIB_USEDEP}] |
80 |
+ >=media-libs/harfbuzz-0.9:= |
81 |
+ x11-misc/shared-mime-info |
82 |
+ |
83 |
+ cloudprint? ( |
84 |
+ >=net-libs/rest-0.7[${MULTILIB_USEDEP}] |
85 |
+ >=dev-libs/json-glib-1.0[${MULTILIB_USEDEP}] ) |
86 |
+ colord? ( >=x11-misc/colord-0.1.9:0=[${MULTILIB_USEDEP}] ) |
87 |
+ cups? ( >=net-print/cups-1.2[${MULTILIB_USEDEP}] ) |
88 |
+ introspection? ( >=dev-libs/gobject-introspection-1.39:= ) |
89 |
+ wayland? ( |
90 |
+ >=dev-libs/wayland-1.9.91[${MULTILIB_USEDEP}] |
91 |
+ >=dev-libs/wayland-protocols-1.12 |
92 |
+ media-libs/mesa[wayland,${MULTILIB_USEDEP}] |
93 |
+ >=x11-libs/libxkbcommon-0.2[${MULTILIB_USEDEP}] |
94 |
+ ) |
95 |
+ X? ( |
96 |
+ >=app-accessibility/at-spi2-atk-2.5.3[${MULTILIB_USEDEP}] |
97 |
+ x11-libs/libX11[${MULTILIB_USEDEP}] |
98 |
+ >=x11-libs/libXi-1.3[${MULTILIB_USEDEP}] |
99 |
+ x11-libs/libXext[${MULTILIB_USEDEP}] |
100 |
+ >=x11-libs/libXrandr-1.5[${MULTILIB_USEDEP}] |
101 |
+ x11-libs/libXcursor[${MULTILIB_USEDEP}] |
102 |
+ x11-libs/libXfixes[${MULTILIB_USEDEP}] |
103 |
+ x11-libs/libXcomposite[${MULTILIB_USEDEP}] |
104 |
+ x11-libs/libXdamage[${MULTILIB_USEDEP}] |
105 |
+ xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] ) |
106 |
+ ) |
107 |
+" |
108 |
+DEPEND="${COMMON_DEPEND} |
109 |
+ app-text/docbook-xsl-stylesheets |
110 |
+ app-text/docbook-xml-dtd:4.1.2 |
111 |
+ dev-libs/libxslt |
112 |
+ dev-libs/gobject-introspection-common |
113 |
+ >=dev-util/gdbus-codegen-2.48 |
114 |
+ dev-util/glib-utils |
115 |
+ >=dev-util/gtk-doc-am-1.20 |
116 |
+ >=sys-devel/gettext-0.19.7[${MULTILIB_USEDEP}] |
117 |
+ virtual/pkgconfig[${MULTILIB_USEDEP}] |
118 |
+ X? ( x11-base/xorg-proto ) |
119 |
+ test? ( |
120 |
+ media-fonts/font-misc-misc |
121 |
+ media-fonts/font-cursor-misc ) |
122 |
+" |
123 |
+# gtk+-3.2.2 breaks Alt key handling in <=x11-libs/vte-0.30.1:2.90 |
124 |
+# gtk+-3.3.18 breaks scrolling in <=x11-libs/vte-0.31.0:2.90 |
125 |
+RDEPEND="${COMMON_DEPEND} |
126 |
+ >=dev-util/gtk-update-icon-cache-3 |
127 |
+ !<gnome-base/gail-1000 |
128 |
+ !<x11-libs/vte-0.31.0:2.90 |
129 |
+" |
130 |
+# librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710 |
131 |
+PDEPEND=" |
132 |
+ gnome-base/librsvg[${MULTILIB_USEDEP}] |
133 |
+ >=x11-themes/adwaita-icon-theme-3.14 |
134 |
+ vim-syntax? ( app-vim/gtk-syntax ) |
135 |
+" |
136 |
+ |
137 |
+MULTILIB_CHOST_TOOLS=( |
138 |
+ /usr/bin/gtk-query-immodules-3.0$(get_exeext) |
139 |
+) |
140 |
+ |
141 |
+strip_builddir() { |
142 |
+ local rule=$1 |
143 |
+ shift |
144 |
+ local directory=$1 |
145 |
+ shift |
146 |
+ sed -e "s/^\(${rule} =.*\)${directory}\(.*\)$/\1\2/" -i $@ \ |
147 |
+ || die "Could not strip director ${directory} from build." |
148 |
+} |
149 |
+ |
150 |
+src_prepare() { |
151 |
+ if ! use test ; then |
152 |
+ # don't waste time building tests |
153 |
+ strip_builddir SRC_SUBDIRS testsuite Makefile.{am,in} |
154 |
+ |
155 |
+ # the tests dir needs to be build now because since commit |
156 |
+ # 7ff3c6df80185e165e3bf6aa31bd014d1f8bf224 tests/gtkgears.o needs to be there |
157 |
+ # strip_builddir SRC_SUBDIRS tests Makefile.{am,in} |
158 |
+ fi |
159 |
+ |
160 |
+ if ! use examples; then |
161 |
+ # don't waste time building demos |
162 |
+ strip_builddir SRC_SUBDIRS demos Makefile.{am,in} |
163 |
+ strip_builddir SRC_SUBDIRS examples Makefile.{am,in} |
164 |
+ fi |
165 |
+ |
166 |
+ # gtk-update-icon-cache is installed by dev-util/gtk-update-icon-cache |
167 |
+ eapply "${FILESDIR}"/${PN}-3.22.2-update-icon-cache.patch |
168 |
+ |
169 |
+ # Fix broken autotools logic |
170 |
+ eapply "${FILESDIR}"/${PN}-3.22.20-libcloudproviders-automagic.patch |
171 |
+ |
172 |
+ eautoreconf |
173 |
+ gnome2_src_prepare |
174 |
+} |
175 |
+ |
176 |
+multilib_src_configure() { |
177 |
+ # need libdir here to avoid a double slash in a path that libtool doesn't |
178 |
+ # grok so well during install (// between $EPREFIX and usr ...) |
179 |
+ # cloudprovider is not packaged in Gentoo |
180 |
+ ECONF_SOURCE=${S} \ |
181 |
+ gnome2_src_configure \ |
182 |
+ $(use_enable aqua quartz-backend) \ |
183 |
+ $(use_enable broadway broadway-backend) \ |
184 |
+ $(use_enable cloudprint) \ |
185 |
+ $(use_enable colord) \ |
186 |
+ $(use_enable cups cups auto) \ |
187 |
+ $(multilib_native_use_enable introspection) \ |
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 |
+ --disable-cloudproviders \ |
197 |
+ --disable-mir-backend \ |
198 |
+ --disable-papi \ |
199 |
+ --enable-man \ |
200 |
+ --with-xml-catalog="${EPREFIX}"/etc/xml/catalog \ |
201 |
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \ |
202 |
+ CUPS_CONFIG="${EPREFIX}/usr/bin/${CHOST}-cups-config" |
203 |
+ |
204 |
+ # work-around gtk-doc out-of-source brokedness |
205 |
+ if multilib_is_native_abi; then |
206 |
+ local d |
207 |
+ for d in gdk gtk libgail-util; do |
208 |
+ ln -s "${S}"/docs/reference/${d}/html docs/reference/${d}/html || die |
209 |
+ done |
210 |
+ fi |
211 |
+} |
212 |
+ |
213 |
+multilib_src_test() { |
214 |
+ "${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/gtk" || die |
215 |
+ GSETTINGS_SCHEMA_DIR="${S}/gtk" virtx emake check |
216 |
+} |
217 |
+ |
218 |
+multilib_src_install() { |
219 |
+ gnome2_src_install |
220 |
+} |
221 |
+ |
222 |
+multilib_src_install_all() { |
223 |
+ insinto /etc/gtk-3.0 |
224 |
+ doins "${FILESDIR}"/settings.ini |
225 |
+ # Skip README.{in,commits,win32} and useless ChangeLog that would get installed by default |
226 |
+ DOCS=( AUTHORS NEWS README ) |
227 |
+ einstalldocs |
228 |
+} |
229 |
+ |
230 |
+pkg_preinst() { |
231 |
+ gnome2_pkg_preinst |
232 |
+ |
233 |
+ multilib_pkg_preinst() { |
234 |
+ # Make immodules.cache belongs to gtk+ alone |
235 |
+ local cache="usr/$(get_libdir)/gtk-3.0/3.0.0/immodules.cache" |
236 |
+ |
237 |
+ if [[ -e ${EROOT}${cache} ]]; then |
238 |
+ cp "${EROOT}"${cache} "${ED}"/${cache} || die |
239 |
+ else |
240 |
+ touch "${ED}"/${cache} || die |
241 |
+ fi |
242 |
+ } |
243 |
+ multilib_parallel_foreach_abi multilib_pkg_preinst |
244 |
+} |
245 |
+ |
246 |
+pkg_postinst() { |
247 |
+ gnome2_pkg_postinst |
248 |
+ |
249 |
+ multilib_pkg_postinst() { |
250 |
+ gnome2_query_immodules_gtk3 \ |
251 |
+ || die "Update immodules cache failed (for ${ABI})" |
252 |
+ } |
253 |
+ multilib_parallel_foreach_abi multilib_pkg_postinst |
254 |
+ |
255 |
+ if ! has_version "app-text/evince"; then |
256 |
+ elog "Please install app-text/evince for print preview functionality." |
257 |
+ elog "Alternatively, check \"gtk-print-preview-command\" documentation and" |
258 |
+ elog "add it to your settings.ini file." |
259 |
+ fi |
260 |
+} |
261 |
+ |
262 |
+pkg_postrm() { |
263 |
+ gnome2_pkg_postrm |
264 |
+ |
265 |
+ if [[ -z ${REPLACED_BY_VERSION} ]]; then |
266 |
+ multilib_pkg_postrm() { |
267 |
+ rm -f "${EROOT}"usr/$(get_libdir)/gtk-3.0/3.0.0/immodules.cache |
268 |
+ } |
269 |
+ multilib_foreach_abi multilib_pkg_postrm |
270 |
+ fi |
271 |
+} |