149 lines
3.2 KiB
Plaintext
149 lines
3.2 KiB
Plaintext
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
|
|
# Contributor: Ionut Biru <ibiru@archlinux.org>
|
|
|
|
pkgbase=gtk3
|
|
pkgname=(gtk3 gtk3-docs gtk3-demos)
|
|
pkgver=3.24.35
|
|
pkgrel=2
|
|
epoch=1
|
|
pkgdesc="GObject-based multi-platform GUI toolkit"
|
|
url="https://www.gtk.org/"
|
|
arch=(x86_64)
|
|
license=(LGPL)
|
|
depends=(
|
|
adwaita-icon-theme
|
|
at-spi2-atk
|
|
atk
|
|
cairo
|
|
cantarell-fonts
|
|
dconf
|
|
desktop-file-utils
|
|
fribidi
|
|
gdk-pixbuf2
|
|
gtk-update-icon-cache
|
|
iso-codes
|
|
libcloudproviders
|
|
libcolord
|
|
libcups
|
|
libepoxy
|
|
librsvg
|
|
libxcomposite
|
|
libxcursor
|
|
libxdamage
|
|
libxi
|
|
libxinerama
|
|
libxkbcommon
|
|
libxrandr
|
|
mesa
|
|
pango
|
|
shared-mime-info
|
|
tracker3
|
|
wayland
|
|
)
|
|
makedepends=(
|
|
git
|
|
glib2-docs
|
|
gobject-introspection
|
|
gtk-doc
|
|
meson
|
|
sassc
|
|
wayland-protocols
|
|
)
|
|
options=(debug)
|
|
_commit=14cf55f98ddd71ad3f91487eda1c7f14d67de119 # tags/3.24.35^0
|
|
source=(
|
|
"git+https://gitlab.gnome.org/GNOME/gtk.git#commit=$_commit"
|
|
gtk-query-immodules-3.0.hook
|
|
)
|
|
sha256sums=('SKIP'
|
|
'a0319b6795410f06d38de1e8695a9bf9636ff2169f40701671580e60a108e229')
|
|
|
|
pkgver() {
|
|
cd gtk
|
|
git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
|
|
}
|
|
|
|
prepare() {
|
|
cd gtk
|
|
|
|
# Crash in gnome-screenshot
|
|
# https://gitlab.gnome.org/GNOME/gtk/-/issues/4456
|
|
git cherry-pick -n e413f5c43259a22269aa1e75767dd545e10119b5
|
|
|
|
# https://bugs.archlinux.org/task/76651
|
|
# https://gitlab.gnome.org/GNOME/gtk/-/issues/5365
|
|
git cherry-pick -n 3f1536632f682c355d0c3abe1afc80cf975c2cce
|
|
}
|
|
|
|
build() {
|
|
local meson_options=(
|
|
-D broadway_backend=true
|
|
-D cloudproviders=true
|
|
-D colord=yes
|
|
-D gtk_doc=true
|
|
-D introspection=true
|
|
-D man=true
|
|
-D tracker3=true
|
|
)
|
|
|
|
CFLAGS+=" -DG_DISABLE_CAST_CHECKS"
|
|
arch-meson gtk build "${meson_options[@]}"
|
|
meson compile -C build
|
|
}
|
|
|
|
_pick() {
|
|
local p="$1" f d; shift
|
|
for f; do
|
|
d="$srcdir/$p/${f#$pkgdir/}"
|
|
mkdir -p "$(dirname "$d")"
|
|
mv "$f" "$d"
|
|
rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
|
|
done
|
|
}
|
|
|
|
package_gtk3() {
|
|
optdepends=('evince: Default print preview command')
|
|
provides=(gtk3-print-backends libgtk-3.so libgdk-3.so libgailutil-3.so)
|
|
conflicts=(gtk3-print-backends)
|
|
replaces=("gtk3-print-backends<=3.22.26-1")
|
|
install=gtk3.install
|
|
|
|
meson install -C build --destdir "$pkgdir"
|
|
|
|
install -Dm644 /dev/stdin "$pkgdir/usr/share/gtk-3.0/settings.ini" <<END
|
|
[Settings]
|
|
gtk-icon-theme-name = Adwaita
|
|
gtk-theme-name = Adwaita
|
|
gtk-font-name = Cantarell 11
|
|
END
|
|
|
|
install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 gtk-query-immodules-3.0.hook
|
|
|
|
cd "$pkgdir"
|
|
|
|
rm usr/bin/gtk-update-icon-cache
|
|
rm usr/share/man/man1/gtk-update-icon-cache.1
|
|
|
|
_pick docs usr/share/gtk-doc
|
|
|
|
_pick demo usr/bin/gtk3-{demo,demo-application,icon-browser,widget-factory}
|
|
_pick demo usr/share/applications/gtk3-{demo,icon-browser,widget-factory}.desktop
|
|
_pick demo usr/share/glib-2.0/schemas/org.gtk.{Demo,exampleapp}.gschema.xml
|
|
_pick demo usr/share/icons/hicolor/*/apps/gtk3-{demo,widget-factory}[-.]*
|
|
_pick demo usr/share/man/man1/gtk3-{demo,demo-application,icon-browser,widget-factory}.1
|
|
}
|
|
|
|
package_gtk3-docs() {
|
|
pkgdesc+=" (documentation)"
|
|
depends=()
|
|
mv docs/* "$pkgdir"
|
|
}
|
|
|
|
package_gtk3-demos() {
|
|
pkgdesc+=" (demo applications)"
|
|
depends=(gtk3)
|
|
mv demo/* "$pkgdir"
|
|
}
|
|
|
|
# vim:set sw=2 sts=-1 et:
|