2751cd7c64
This is 3.24.27 w/ Purism's mobile UI patches in their fork. According to Purism, 3.24.27 resolves some stability issues (like a segfault when scrolling) [ci:skip-build]: already built successfully in CI
138 lines
3.4 KiB
Text
138 lines
3.4 KiB
Text
# Forked from Alpine to apply Purism's patches for responsivness
|
|
pkgname=gtk+3.0
|
|
pkgver=9999_git20210319
|
|
pkgrel=0
|
|
_commit="f9d568742a919e5bd92ceed4cc2db9f9239cc7fe"
|
|
pkgdesc="The GTK+ Toolkit (v3)"
|
|
url="https://www.gtk.org/"
|
|
install="$pkgname.post-install $pkgname.post-upgrade $pkgname.post-deinstall"
|
|
arch="all"
|
|
license="LGPL-2.1-or-later"
|
|
options="!check" # Most glade tests fail :c
|
|
subpackages="$pkgname-demo $pkgname-dev $pkgname-lang $pkgname-dbg"
|
|
depends="shared-mime-info gtk-update-icon-cache"
|
|
|
|
replaces="gtk+"
|
|
|
|
depends_dev="
|
|
atk-dev
|
|
gdk-pixbuf-dev
|
|
glib-dev
|
|
libepoxy-dev
|
|
libxext-dev
|
|
libxi-dev
|
|
libxinerama-dev
|
|
wayland-protocols
|
|
wayland-libs-client
|
|
wayland-libs-cursor
|
|
libxkbcommon-dev
|
|
"
|
|
makedepends="
|
|
$depends_dev
|
|
cups-dev
|
|
expat-dev
|
|
gettext-dev
|
|
gnutls-dev
|
|
gobject-introspection-dev
|
|
libice-dev
|
|
tiff-dev
|
|
zlib-dev
|
|
at-spi2-atk-dev
|
|
cairo-dev
|
|
fontconfig-dev
|
|
pango-dev
|
|
wayland-dev
|
|
libx11-dev
|
|
libxcomposite-dev
|
|
libxcursor-dev
|
|
libxdamage-dev
|
|
libxfixes-dev
|
|
libxrandr-dev
|
|
meson
|
|
gtk-doc
|
|
iso-codes-dev
|
|
"
|
|
checkdepends="
|
|
xvfb-run
|
|
ibus
|
|
librsvg
|
|
gdk-pixbuf
|
|
"
|
|
source="https://source.puri.sm/Librem5/gtk/-/archive/$_commit/gtk-$_commit.tar.gz
|
|
"
|
|
|
|
builddir="$srcdir/gtk-$_commit"
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
# Purism patches
|
|
grep "\.patch$" debian/patches/series \
|
|
| xargs -I {} -t -r -n1 patch -p1 -i debian/patches/{}
|
|
|
|
# Prevent unexpected downgrade: 3.90.99 is higher than Alpine's version
|
|
# (pma#694), but still passes the libportal check (pma#841)
|
|
for _ver in gtk_minor_version gtk_micro_version gtk_interface_age; do
|
|
sed -i "s/m4_define(\[$_ver\], \[.*\])/m4_define([$_ver], [90])/g" configure.ac
|
|
done
|
|
sed -i "s/ version: '.*',/ version: '3.90.99',/g" meson.build
|
|
sed -i "s/^gtk_interface_age = .*/gtk_interface_age = 90/g" meson.build
|
|
}
|
|
|
|
build() {
|
|
# postmarketOS specific: disable stuff that takes forever to (cross)compile:
|
|
# man=false, gtk_doc=false, tests=false
|
|
meson \
|
|
--prefix=/usr \
|
|
--sysconfdir=/etc \
|
|
--mandir=/usr/share/man \
|
|
--localstatedir=/var \
|
|
--buildtype=plain \
|
|
-Dman=false \
|
|
-Dgtk_doc=false \
|
|
-Dtests=false \
|
|
-Dbroadway_backend=true \
|
|
output
|
|
ninja -C output
|
|
}
|
|
|
|
check() {
|
|
xvfb-run ninja -C output test
|
|
}
|
|
|
|
package() {
|
|
DESTDIR="$pkgdir" ninja -C output install
|
|
|
|
# use gtk-update-icon-cache from gtk+2.0 for now
|
|
rm -f "$pkgdir"/usr/bin/gtk-update-icon-cache
|
|
rm -f "$pkgdir"/usr/share/man/man1/gtk-update-icon-cache.1
|
|
}
|
|
|
|
demo() {
|
|
pkgdesc="$pkgdesc (demonstration application)"
|
|
install -Dm755 "$pkgdir"/usr/bin/gtk3-demo \
|
|
"$pkgdir"/usr/bin/gtk3-widget-factory \
|
|
"$pkgdir"/usr/bin/gtk3-demo-application \
|
|
-t "$subpkgdir"/usr/bin
|
|
install -Dm644 "$pkgdir"/usr/share/gtk-3.0/gtkbuilder.rng \
|
|
-t "$subpkgdir"/usr/share/gtk-3.0
|
|
install -Dm644 "$pkgdir"/usr/share/glib-2.0/schemas/org.gtk.Demo.gschema.xml \
|
|
-t "$subpkgdir"/usr/share/glib-2.0/schemas
|
|
install -Dm644 "$pkgdir"/usr/share/applications/gtk3-widget-factory.desktop \
|
|
"$pkgdir"/usr/share/applications/gtk3-demo.desktop \
|
|
-t "$subpkgdir"/usr/share/applications
|
|
mkdir -p "$subpkgdir"/usr/share
|
|
mv "$pkgdir"/usr/share/icons "$subpkgdir"/usr/share
|
|
}
|
|
|
|
dev() {
|
|
replaces="gtk+-dev"
|
|
default_dev
|
|
}
|
|
|
|
doc() {
|
|
replaces="gtk+-doc"
|
|
default_doc
|
|
}
|
|
|
|
sha512sums="07f1930033f9e3e399915e862c34c99aa3c2bd46e3f6f3232a7d47d64a48d14dd836e42b5a6970c47e5bc11b3d26535d9b43c1c42c80152bf2b4444f0cc4b547 gtk-f9d568742a919e5bd92ceed4cc2db9f9239cc7fe.tar.gz"
|