blob: 3f5f2de628aec719c1ca336f9fc759f6c00d7505 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
# Maintainer: Shengyu Zhang <la@archlinuxcn.org>
# Contributor: Dario Ostuni <dario.ostuni@gmail.com>
# Based on gtk4-git
pkgname=gtk4
pkgver=4.0.0
pkgrel=1
pkgdesc="GObject-based multi-platform GUI toolkit"
arch=('i686' 'x86_64')
url="https://www.gtk.org/"
license=('LGPL')
provides=('gtk4' 'gtk4-print-backends' 'gtk4-update-icon-cache')
replaces=('gtk4-print-backends' 'gtk4-update-icon-cache')
conflicts=('gtk4-git' 'gtk4-print-backends' 'gtk4-update-icon-cache')
depends=('hicolor-icon-theme'
'at-spi2-atk'
'atk'
'dconf'
'glib2'
'libepoxy'
'libxcomposite'
'libxcursor'
'libxinerama'
'libxkbcommon'
'libxrandr'
'mesa'
'pango'
'wayland'
'graphene'
'json-glib'
'colord'
'libcups'
'rest'
'vulkan-icd-loader'
'gdk-pixbuf2'
'gst-plugins-bad')
makedepends=('gobject-introspection'
'meson'
'ninja'
'vulkan-headers'
'wayland-protocols'
'pkgconfig'
'git'
'sassc')
optdepends=('gnome-icon-theme: Default icon theme'
'gnome-themes-standard: Default widget theme'
'gdk-pixbuf2: An image loading library')
source=("https://download.gnome.org/sources/gtk/${pkgver%.*}/gtk-${pkgver}.tar.xz"
'gtk4.install'
'gtk4-update-icon-cache.hook'
'gtk4-update-icon-cache.script'
'settings.ini'
'fix-incompatible-vulkan-error.patch')
sha512sums=('5fe807bcdb59f0df2ad1cc5a28b654dbf90f5fa29bf9a4c69c9278543ab9a3e4f8b1712547fb2fd1f35711c438f78ee8a5cd1a509cf64f815274bb8c82023922'
'5dcb698a15e7d5f4611c9357782d475052944cc71e73351238ffb5dfbe18d1bd1b62289da7f8066cde256c4339de5efa982088f47781876f5d8317f92b87f79f'
'9d3bb80afb3a00dc50402d32476719daaeab017e1a066425bb602316b534d0a9899d48734a84f70af1066ed104df0491264383a34969dfad2ea9828fb41b9b6b'
'805cf12606c738d0442d8af415223d3faada93c933b563b7c4c1d5e0c16d2d21435406add1fcc69300fb2fe534f2d0ddbf50b2c0463fc7462109d0f7802ccef1'
'1642d77622d61234e316e8fcbc803a6a5556c606e37e56aa5981ef2f2df85bfa959c31b5d1bff248b340760e1178281cb0d7abdf540c5f7d4b62cb383a67c685'
'2abb3e5c0743992bdffb5cdb2a9256577acba1e3da39971921e013d9d197dbbc5dd29555176f558a2176bd2a2853fd6370b8e7004257c4d001d3211694a9b9c3')
install=gtk4.install
prepare() {
cd gtk-${pkgver}
patch -p1 -i "$srcdir"/fix-incompatible-vulkan-error.patch
}
build() {
cd gtk-${pkgver}
meson --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--libdir=/usr/lib \
-Dbroadway-backend=true \
-Dvulkan=enabled \
-Dgtk_doc=false \
_build .
cd _build
ninja
}
package() {
cd gtk-${pkgver}/_build
DESTDIR="$pkgdir" ninja install
install -Dm 644 "../../settings.ini" "$pkgdir"/usr/share/gtk-4.0/settings.ini
install -D "gtk/tools/gtk4-update-icon-cache" "$pkgdir"/usr/bin/gtk4-update-icon-cache
install -Dm 644 "../../gtk4-update-icon-cache.hook" "$pkgdir"/usr/share/libalpm/hooks/gtk4-update-icon-cache.hook
install -Dm 755 "../../gtk4-update-icon-cache.script" "$pkgdir"/usr/share/libalpm/scripts/gtk4-update-icon-cache
# Remove conflicts with gtk3
rm -f "$pkgdir/usr/share/gettext/its/gtkbuilder.its"
rm -f "$pkgdir/usr/share/gettext/its/gtkbuilder.loc"
rm -f "$pkgdir/usr/share/glib-2.0/schemas/org.gtk.Demo.gschema.xml"
rm -f "$pkgdir/usr/share/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml"
rm -f "$pkgdir/usr/share/glib-2.0/schemas/org.gtk.Settings.Debug.gschema.xml"
rm -f "$pkgdir/usr/share/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml"
rm -f "$pkgdir/usr/share/glib-2.0/schemas/org.gtk.Settings.EmojiChooser.gschema.xml"
rm -f "$pkgdir/usr/share/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml"
# Remove conflicts with gtk-doc
rm -f "$pkgdir/usr/bin/gtkdoc-check"
rm -f "$pkgdir/usr/bin/gtkdoc-depscan"
rm -f "$pkgdir/usr/bin/gtkdoc-fixxref"
rm -f "$pkgdir/usr/bin/gtkdoc-mkdb"
rm -f "$pkgdir/usr/bin/gtkdoc-mkhtml"
rm -f "$pkgdir/usr/bin/gtkdoc-mkhtml2"
rm -f "$pkgdir/usr/bin/gtkdoc-mkman"
rm -f "$pkgdir/usr/bin/gtkdoc-mkpdf"
rm -f "$pkgdir/usr/bin/gtkdoc-rebase"
rm -f "$pkgdir/usr/bin/gtkdoc-scan"
rm -f "$pkgdir/usr/bin/gtkdoc-scangobj"
rm -f "$pkgdir/usr/bin/gtkdocize"
rm -f "$pkgdir/usr/share/aclocal/gtk-doc.m4"
rm -rf "$pkgdir/usr/share/cmake/GtkDoc"
rm -rf "$pkgdir/usr/share/gtk-doc"
rm -f "$pkgdir/usr/share/pkgconfig/gtk-doc.pc"
}
|