jobextra/gtk3/PKGBUILD-arch

157 lines
3.1 KiB
Plaintext
Raw Normal View History

2022-03-20 13:34:07 +01:00
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Ionut Biru <ibiru@archlinux.org>
pkgbase=gtk3
2022-12-23 17:34:45 +01:00
pkgname=(
gtk3
gtk3-demos
gtk3-docs
)
pkgver=3.24.41
pkgrel=1
2022-03-20 13:34:07 +01:00
epoch=1
pkgdesc="GObject-based multi-platform GUI toolkit"
url="https://www.gtk.org/"
2022-03-23 03:58:16 +01:00
arch=(x86_64)
2024-01-18 20:01:22 +01:00
license=(LGPL-2.0-only)
2022-11-24 23:03:48 +01:00
depends=(
adwaita-icon-theme
atk
cairo
cantarell-fonts
dconf
desktop-file-utils
2022-12-23 17:34:45 +01:00
fontconfig
2022-11-24 23:03:48 +01:00
fribidi
gdk-pixbuf2
2022-12-23 17:34:45 +01:00
glib2
harfbuzz
2022-11-24 23:03:48 +01:00
iso-codes
libcloudproviders
libcolord
libcups
2022-12-23 17:34:45 +01:00
libegl
2022-11-24 23:03:48 +01:00
libepoxy
2022-12-23 17:34:45 +01:00
libgl
2022-11-24 23:03:48 +01:00
librsvg
libxcomposite
2022-12-23 17:34:45 +01:00
libx11
2022-11-24 23:03:48 +01:00
libxcursor
libxdamage
2022-12-23 17:34:45 +01:00
libxext
libxfixes
2022-11-24 23:03:48 +01:00
libxi
libxinerama
libxkbcommon
libxrandr
2022-12-23 17:34:45 +01:00
libxrender
2022-11-24 23:03:48 +01:00
pango
shared-mime-info
tracker3
wayland
)
makedepends=(
git
glib2-docs
gobject-introspection
gtk-doc
meson
sassc
wayland-protocols
)
_commit=77ebdd85091833a7869ece48c3114fa6d9966321 # tags/3.24.41^0
2022-11-24 23:03:48 +01:00
source=(
"git+https://gitlab.gnome.org/GNOME/gtk.git#commit=$_commit"
gtk-query-immodules-3.0.hook
)
2024-01-18 20:01:22 +01:00
b2sums=('SKIP'
'8e6a3906126749c6d853f582e3802254cdbba099c6af7190ad576eff6ea5425404a72b1b36950a87e3afdac82295cfe246003172c3e0341a73bd931a36f3b407')
2022-03-20 13:34:07 +01:00
pkgver() {
cd gtk
git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
}
prepare() {
cd gtk
}
build() {
local meson_options=(
-D broadway_backend=true
-D cloudproviders=true
-D colord=yes
-D gtk_doc=true
2022-11-24 23:03:48 +01:00
-D introspection=true
2022-03-20 13:34:07 +01:00
-D man=true
2022-11-24 23:03:48 +01:00
-D tracker3=true
2022-03-20 13:34:07 +01:00
)
2022-11-24 23:03:48 +01:00
CFLAGS+=" -DG_DISABLE_CAST_CHECKS"
2022-03-20 13:34:07 +01:00
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() {
2022-12-23 17:34:45 +01:00
depends+=(gtk-update-icon-cache)
2022-03-20 13:34:07 +01:00
optdepends=('evince: Default print preview command')
2022-12-23 17:34:45 +01:00
provides=(
gtk3-print-backends
libgailutil-3.so
libgdk-3.so
libgtk-3.so
)
2022-03-20 13:34:07 +01:00
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"
_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
2022-12-23 17:34:45 +01:00
_pick docs usr/share/gtk-doc
# Built by GTK 4, shared with GTK 3
rm usr/bin/gtk-update-icon-cache
rm usr/share/man/man1/gtk-update-icon-cache.1
2022-03-20 13:34:07 +01:00
}
package_gtk3-demos() {
pkgdesc+=" (demo applications)"
depends=(gtk3)
mv demo/* "$pkgdir"
}
2022-12-23 17:34:45 +01:00
package_gtk3-docs() {
pkgdesc+=" (documentation)"
depends=()
mv docs/* "$pkgdir"
}
2022-11-24 23:03:48 +01:00
# vim:set sw=2 sts=-1 et: