diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 181 |
1 files changed, 94 insertions, 87 deletions
@@ -1,36 +1,31 @@ -# Maintainer: Michael Healy <horsemanoffaith@gmail.com> +# Maintainer: Que Quotion <quequotion@bugmenot.com> +# Contributor: Michael Healy <horsemanoffaith@gmail.com> # Contributor: Xiao-Long Chen <chenxiaolong@cxl.epac.to> # Contributor: Christopher Reimer <github@creimer.net> # Contributor: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: Ionut Biru <ibiru@archlinux.org> # Maintainer: Solomon Choina <shlomochoina@gmail.com> -pkgbase=gtk3-ubuntu -pkgname=(gtk3-ubuntu gtk-update-icon-cache-ubuntu) +pkgname=gtk3-ubuntu _ubuntu_ver=3.24.23 _ubuntu_rel=1ubuntu1 -pkgver=3.24.23 +_import_pkgver=3.24.31 +pkgver=3.24.31 pkgrel=1 pkgdesc="GObject-based multi-platform toolkit" arch=(x86_64) url="http://www.gtk.org/" -depends=(adwaita-icon-theme at-spi2-atk atk cairo cantarell-fonts colord dconf desktop-file-utils gdk-pixbuf2 gtk-update-icon-cache json-glib libcanberra libcups libepoxy librsvg libxcomposite libxcursor libxdamage libxi libxinerama libxkbcommon libxrandr mesa pango rest shared-mime-info wayland wayland-protocols gtk-update-icon-cache) -makedepends=(gobject-introspection git gtk-doc glib2-docs sassc) +depends=(adwaita-icon-theme at-spi2-atk atk cairo cantarell-fonts dconf desktop-file-utils fribidi iso-codes gdk-pixbuf2 gtk-update-icon-cache json-glib lib{cloudproviders,colord,cups,epoxy,rsvg,xcomposite,xcursor,xdamage,xi,xinerama,xkbcommon,xrandr} mesa pango rest shared-mime-info tracker3 wayland) +makedepends=(gobject-introspection git gtk-doc glib2-docs sassc meson wayland-protocols) license=(LGPL) -options=("libtool") -source=("git+https://gitlab.gnome.org/GNOME/gtk.git#tag=$pkgver" - settings.ini - gtk-query-immodules-3.0.hook - gtk-update-icon-cache.hook - gtk-update-icon-cache.script) - -source+=("https://launchpad.net/ubuntu/+archive/primary/+files/gtk+3.0_${_ubuntu_ver:-${pkgver}}-${_ubuntu_rel}.debian.tar.xz") - -sha512sums=('SKIP' - 'ad2c0b0388f4169592b9574f0b3db673a969b7c4721548c4ac7c438eddbcdc378fcaac04e2b6c858a1562cc23ddf4804e5f7be08068340b7c9365e2b11ddcfb8' - 'f0ffd95544863f2e10fda81488b4727aa9a8a35a7d39fb96872db6664d03442db2b58af788b5990825c7b3a83681f7220ca481409cca5421dfb39b9a3bbac9ac' - 'abfd73de4faa6f53784182800395aa3c39bb98e15a0eb300fb4142073ff7ce565a0836a2363393b2f132060b5293dbc0c30c380a023f38d5bd39c62cb58389c2' - '5cd50d93bb6bc203438a2a0764bd717409658e124058b18a1da26a21f10ef7564a16f32fc0633a68b45b2e303fa63a5efefeadd6b0bf1d7f474556df8cdb6c58' - '7fa98b8e04ef74aa3356124b63c2e9932ccc2d15a45f8e89122a46b90f0ae138a35951f4c38a67720cd7a7eacf8f1258bf4755eaf1eab0c24e9049b957945792') +_commit=ab45bde94c7bbd140b12fa0dd6203f7b98d1a715 # tags/3.24.31^0 +source=("git+https://gitlab.gnome.org/GNOME/gtk.git#commit=$_commit" + gtk-query-immodules-3.0.hook + add_ubuntu_headers_to_meson_build.patch) +source+=("https://launchpad.net/ubuntu/+archive/primary/+files/gtk+3.0_${_ubuntu_ver:-${import_pkgver}}-${_ubuntu_rel}.debian.tar.xz") +sha256sums=('SKIP' + 'de46e5514ff39a7a65e01e485e874775ab1c0ad20b8e94ada43f4a6af1370845' + '5d283c23657a2301fec22cec5130ea7d5edb659e0e50e7a2a5e87fea234893af' + '7c4626cdc2112bd00e806cb3b1aae5c4dc557b9af1804f2e59b24eb95b255760') pkgver() { cd gtk @@ -38,84 +33,96 @@ pkgver() { } prepare() { - cd gtk - - local patches=( - updateiconcache-Sort-list-of-entries.patch - gdk-Don-t-distribute-generated-files-in-tarballs.patch - gtk-Really-don-t-distribute-built-files.patch - demos-examples-tests-Don-t-distribute-built-files.patch - 016_no_offscreen_widgets_grabbing.patch - 017_no_offscreen_device_grabbing.patch - 060_ignore-random-icons.patch - reftest-known-fail.patch - Disable-accessibility-dump-aka-a11ytests-test.patch - 073_treeview_almost_fixed.patch - bzg_gtkcellrenderer_grabbing_modifier.patch - ubuntu_gtk_custom_menu_items.patch - print-dialog-show-options-of-remote-dnssd-printers.patch - uimanager-guard-against-nested-node-updates.patch - x-canonical-accel.patch - message-dialog-restore-traditional-look-on-unity.patch - 0001-gtk-reftest-Force-icon-theme-to-Adwaita.patch - 0001-calendar-always-emit-day-selected-once.patch - 0001-gtkwindow-set-transparent-background-color.patch - unity-border-radius.patch - unity-headerbar-maximized-mode.patch - ) - - for i in "${patches[@]}"; do - msg "Applying ${i} ..." - patch -p1 -i "../debian/patches/${i}" - done - - NOCONFIGURE=1 ./autogen.sh + cd gtk + + local patches=( + #updateiconcache-Sort-list-of-entries.patch + gdk-Don-t-distribute-generated-files-in-tarballs.patch + gtk-Really-don-t-distribute-built-files.patch + demos-examples-tests-Don-t-distribute-built-files.patch + 016_no_offscreen_widgets_grabbing.patch + 017_no_offscreen_device_grabbing.patch + 060_ignore-random-icons.patch + reftest-known-fail.patch + Disable-accessibility-dump-aka-a11ytests-test.patch + 073_treeview_almost_fixed.patch + bzg_gtkcellrenderer_grabbing_modifier.patch + ubuntu_gtk_custom_menu_items.patch + print-dialog-show-options-of-remote-dnssd-printers.patch + uimanager-guard-against-nested-node-updates.patch + x-canonical-accel.patch + message-dialog-restore-traditional-look-on-unity.patch + 0001-gtk-reftest-Force-icon-theme-to-Adwaita.patch + 0001-calendar-always-emit-day-selected-once.patch + 0001-gtkwindow-set-transparent-background-color.patch + unity-border-radius.patch + unity-headerbar-maximized-mode.patch + ) + + for i in "${patches[@]}"; do + msg "Applying ${i} ..." + patch -p1 -i "../debian/patches/${i}" + done + + #Ubuntu is still using autoconf, push ahead to meson + patch -Np1 < ../add_ubuntu_headers_to_meson_build.patch } build() { - cd gtk + CFLAGS+=" -DG_DISABLE_CAST_CHECKS" - CXX=/bin/false ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --disable-schemas-compile \ - --enable-x11-backend \ - --enable-broadway-backend \ - --enable-wayland-backend \ - --enable-gtk-doc + local meson_options=( + -D broadway_backend=true + -D cloudproviders=true + -D tracker3=true + -D colord=yes + -D gtk_doc=true + -D man=true + ) - #https://bugzilla.gnome.org/show_bug.cgi?id=655517 - sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + arch-meson gtk build "${meson_options[@]}" + + meson compile -C build +} - make +_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-ubuntu() { - depends+=(gtk-update-icon-cache) - provides=(gtk3=$pkgver gtk3-print-backends - libgtk-3.so libgdk-3.so libgailutil-3.so ) - conflicts=(gtk3 gtk3-print-backends) - replaces=("gtk3-print-backends") + optdepends=('evince: Default print preview command') + provides=(gtk3{,-print-backends}=$pkgver lib{gtk,gdk,gailutil}-3.so) + conflicts=(gtk3{,-print-backends}) + replaces=("gtk3-print-backends<=3.22.26-1") + install=gtk3.install - cd gtk - make DESTDIR="$pkgdir" install + meson install -C build --destdir "$pkgdir" - install -Dm644 ../settings.ini "$pkgdir/usr/share/gtk-3.0/settings.ini" - install -Dm644 ../gtk-query-immodules-3.0.hook "$pkgdir/usr/share/libalpm/hooks/gtk-query-immodules-3.0.hook" + 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 - # split this out to use with gtk2 too - rm "$pkgdir/usr/bin/gtk-update-icon-cache" -} + install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 gtk-query-immodules-3.0.hook -package_gtk-update-icon-cache-ubuntu() { - pkgdesc="GTK+ icon cache updater" - provides=(gtk-update-icon-cache) - conflicts=(gtk-update-icon-cache) - depends=(gdk-pixbuf2 librsvg hicolor-icon-theme) + cd "$pkgdir" - cd gtk - install -D gtk/gtk-update-icon-cache "$pkgdir/usr/bin/gtk-update-icon-cache" - install -Dm644 ../gtk-update-icon-cache.hook "$pkgdir/usr/share/libalpm/hooks/gtk-update-icon-cache.hook" - install -D ../gtk-update-icon-cache.script "$pkgdir/usr/share/libalpm/scripts/gtk-update-icon-cache" -} + 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.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 +} |