temp/gtk+2.0: fork from Alpine for aarch64

Fork it as the package is currently gone in Alpine edge for aarch64 and
the builder seems to be stuck.
This commit is contained in:
Oliver Smith 2022-10-28 08:30:33 +02:00
parent 8c19bf2f9b
commit 2acece294a
No known key found for this signature in database
GPG key ID: 5AE7F5513E0885CB
6 changed files with 148 additions and 0 deletions

106
temp/gtk+2.0/APKBUILD Normal file
View file

@ -0,0 +1,106 @@
# Forked from Alpine: has been moved from main to community in Alpine. The
# package has been removed from main but not yet built again in community for
# aarch64. This breaks pmbootstrap install (pma#1769). The build-edge-aarch64
# builder seems to be stuck, so fork it temporarily to pmOS until the package
# is back in Alpine edge.
pkgname=gtk+2.0
pkgver=2.24.33
pkgrel=7
pkgdesc="The GTK+ Toolkit (v2)"
url="https://www.gtk.org/"
install="$pkgname.post-install $pkgname.post-upgrade $pkgname.post-deinstall"
arch="aarch64"
options="!check" # Requires xvfb, resulting in eventual circular dependency
license="LGPL-2.0-or-later"
subpackages="
$pkgname-dbg
$pkgname-dev
$pkgname-doc
$pkgname-lang
"
depends="shared-mime-info gtk-update-icon-cache"
depends_dev="
at-spi2-core-dev
cairo-dev
intltool
libxdamage-dev
pango-dev
"
# we add hicolor-icon-theme because the subpackage gtk-update-icon-cache
# needs it. We need to force hicolor-icon-cache to be built before gtk+.2.0
makedepends="
autoconf automake libtool
$depends_dev
cups-dev
expat-dev
gdk-pixbuf-dev
gettext-dev
glib-dev
gobject-introspection-dev
gtk-doc
hicolor-icon-theme
libice-dev
libx11-dev
libxcomposite-dev
libxcursor-dev
libxext-dev
libxfixes-dev
libxi-dev
libxrandr-dev
zlib-dev
"
source="https://download.gnome.org/sources/gtk+/${pkgver%.*}/gtk+-$pkgver.tar.xz
xid-collision-debug.patch
gtk2-fixdso.patch
"
builddir="$srcdir"/gtk+-$pkgver
prepare() {
default_prepare
libtoolize --force \
&& aclocal -I m4 \
&& autoconf \
&& automake --add-missing
}
build() {
CFLAGS="$CFLAGS -flto=auto" \
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--with-xinput=yes \
--without-libjasper \
--with-included-loaders=png \
--with-gdktarget=x11 \
--enable-cups \
--enable-man
# https://bugzilla.gnome.org/show_bug.cgi?id=655517
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
package() {
make DESTDIR="$pkgdir" install
# use gtk-update-icon-cache from gtk+3.0
rm -f "$pkgdir"/usr/bin/gtk-update-icon-cache
rm -f "$pkgdir"/usr/share/man/man1/gtk-update-icon-cache.1
}
dev() {
amove usr/share/gtk-2.0
default_dev
amove \
usr/bin/gtk-builder-convert \
usr/bin/gtk-demo
}
sha512sums="
71b588797c81f727dfac8dcb1be193f7436f717d30ecf18eae2d3aeb0f445b3be4743400acac16435490db8f564f01032065d3f42d27871317f80c98aef929d5 gtk+-2.24.33.tar.xz
89e3223c86731a76b12d39245f1ec4cf8b4860ab1d11d74a10e5deb0db302f20b4bb5d9034da1d8aeb96369dbdeddcdd2f28943270dc501476c694562b960159 xid-collision-debug.patch
95f28633a5164a2a9fec45ee1aa80bd1c07e0c5a7ac8d770b9c74af0909b7286b823eb634aa384cad609dc8799d2e6c9e8392c2732b9093076fdf94b4f6878b7 gtk2-fixdso.patch
"

View file

@ -0,0 +1,7 @@
#!/bin/sh
# since we depend on coreutils and busybox trigger has not yet run, we
# use busybox directly as workaround
/bin/busybox rm -f etc/gtk-2.0/gtk.immodules
/bin/busybox rm -f etc/gtk-2.0/gdk-pixbuf.loaders

View file

@ -0,0 +1,4 @@
#!/bin/sh
usr/bin/gtk-query-immodules-2.0 --update-cache
usr/bin/gdk-pixbuf-query-loaders --update-cache

View file

@ -0,0 +1 @@
gtk+2.0.post-install

View file

@ -0,0 +1,15 @@
--- gtk+-2.24.8/gtk/Makefile.am.orig 2012-02-01 11:14:25.468115547 +0000
+++ gtk+-2.24.8/gtk/Makefile.am 2012-02-01 11:14:57.920116650 +0000
@@ -904,10 +904,10 @@
libgtk_quartz_2_0_la_SOURCES = $(gtk_c_sources)
libgtk_directfb_2_0_la_SOURCES = $(gtk_c_sources)
-libgtk_x11_2_0_la_LDFLAGS = $(libtool_opts)
+libgtk_x11_2_0_la_LDFLAGS = $(libtool_opts) -lgmodule-2.0
libgtk_win32_2_0_la_LDFLAGS = $(libtool_opts) -Wl,-luuid
libgtk_quartz_2_0_la_LDFLAGS = $(libtool_opts)
-libgtk_directfb_2_0_la_LDFLAGS = $(libtool_opts)
+libgtk_directfb_2_0_la_LDFLAGS = $(libtool_opts) -lgmodule-2.0
libgtk_x11_2_0_la_LIBADD = $(libadd)
libgtk_win32_2_0_la_LIBADD = $(libadd) -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32

View file

@ -0,0 +1,15 @@
--- gtk+-2.18.3/gdk/x11/gdkxid.c 2009-06-19 04:59:18.000000000 +0200
+++ gtk+-2.18.3/gdk/x11/gdkxid.c.new 2009-07-22 11:30:12.000000000 +0200
@@ -56,10 +56,10 @@
if (!display_x11->xid_ht)
display_x11->xid_ht = g_hash_table_new ((GHashFunc) gdk_xid_hash,
(GEqualFunc) gdk_xid_equal);
-
+/*
if (g_hash_table_lookup (display_x11->xid_ht, xid))
g_warning ("XID collision, trouble ahead");
-
+*/
g_hash_table_insert (display_x11->xid_ht, xid, data);
}