summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Grande2020-05-26 19:12:48 -0400
committerVincent Grande2020-05-26 19:12:48 -0400
commit7551e4ee2122654315075c7adc85803ed07b555b (patch)
tree6bd235b7bf84ad12df2947ac9c3dc769d2e28d3c
downloadaur-7551e4ee2122654315075c7adc85803ed07b555b.tar.gz
initial upload
-rw-r--r--.SRCINFO42
-rwxr-xr-xPKGBUILD70
-rwxr-xr-xgio-querymodules-32.hook11
-rwxr-xr-xmultilib.diff12
4 files changed, 135 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..8b46d85b4266
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,42 @@
+pkgbase = lib32-glib2-git
+ pkgdesc = Low level core library (32-bit)
+ pkgver = 2.64.0+250+gf733eff2e
+ pkgrel = 1
+ url = https://wiki.gnome.org/Projects/GLib
+ arch = x86_64
+ license = LGPL2.1
+ makedepends = gettext
+ makedepends = shared-mime-info
+ makedepends = python
+ makedepends = lib32-libelf
+ makedepends = git
+ makedepends = util-linux
+ makedepends = meson
+ makedepends = lib32-dbus
+ depends = lib32-pcre
+ depends = lib32-libffi
+ depends = lib32-util-linux
+ depends = lib32-zlib
+ depends = glib2
+ source = git+https://gitlab.gnome.org/GNOME/glib.git
+ source = multilib.diff
+ source = gio-querymodules-32.hook
+ sha256sums = SKIP
+ sha256sums = SKIP
+ sha256sums = SKIP
+
+pkgname = lib32-glib2-git
+ depends = lib32-pcre
+ depends = lib32-libffi
+ depends = lib32-util-linux
+ depends = lib32-zlib
+ depends = glib2
+ depends = libmount.so
+ provides = lib32-glib2
+ provides = libgio-2.0.so
+ provides = libglib-2.0.so
+ provides = libgmodule-2.0.so
+ provides = libgobject-2.0.so
+ provides = libgthread-2.0.so
+ conflicts = lib32-glib2
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100755
index 000000000000..c312d83820c0
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,70 @@
+# Maintainer: Vincent Grande <shoober420@gmail.com>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
+# Contributor: Pierre Schmitz <pierre@archlinux.de>
+# Contributor: Mikko Seppälä <t-r-a-y@mbnet.fi>
+
+pkgname=lib32-glib2-git
+pkgver=2.64.0+250+gf733eff2e
+pkgrel=1
+pkgdesc="Low level core library (32-bit)"
+url="https://wiki.gnome.org/Projects/GLib"
+license=(LGPL2.1)
+arch=(x86_64)
+depends=(lib32-pcre lib32-libffi lib32-util-linux lib32-zlib glib2)
+makedepends=(gettext shared-mime-info python lib32-libelf git util-linux
+ meson lib32-dbus)
+#checkdepends=(desktop-file-utils lib32-glib2)
+source=("git+https://gitlab.gnome.org/GNOME/glib.git"
+ multilib.diff
+ gio-querymodules-32.hook)
+sha256sums=('SKIP'
+ 'SKIP'
+ 'SKIP')
+
+pkgver() {
+ cd glib
+ git describe --tags | sed 's/-/+/g'
+}
+
+prepare() {
+ cd glib
+
+ # Test suite workaround
+ git apply -3 ../multilib.diff
+}
+
+build() {
+ export CC="gcc -m32 -mstackrealign"
+ export CXX="g++ -m32 -mstackrealign"
+ export PKG_CONFIG="i686-pc-linux-gnu-pkg-config"
+
+ CFLAGS+=" -DG_DISABLE_CAST_CHECKS"
+ arch-meson glib build \
+ -D b_lto=false \
+ -D b_pie=false \
+ -D selinux=disabled \
+ --libdir=/usr/lib32
+ meson compile -C build
+}
+
+#check() {
+ # Spurious wakeups in g_cond_wait_until, only on lib32
+# meson test -C build --no-suite flaky --no-suite slow --print-errorlogs || :
+#}
+
+package() {
+ depends+=(libmount.so)
+ conflicts=(lib32-glib2)
+ provides+=(lib32-glib2 libgio-2.0.so libglib-2.0.so libgmodule-2.0.so libgobject-2.0.so
+ libgthread-2.0.so)
+
+ DESTDIR="$pkgdir" meson install -C build
+
+ rm -r "$pkgdir"/usr/{share,include}
+ find "$pkgdir/usr/bin" -type f -not -name gio-querymodules -printf 'Removing %P\n' -delete
+ mv "$pkgdir"/usr/bin/gio-querymodules{,-32}
+
+ install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook
+}
+
+# vim:set sw=2 et:
diff --git a/gio-querymodules-32.hook b/gio-querymodules-32.hook
new file mode 100755
index 000000000000..1f6899efbba8
--- /dev/null
+++ b/gio-querymodules-32.hook
@@ -0,0 +1,11 @@
+[Trigger]
+Type = Path
+Operation = Install
+Operation = Upgrade
+Operation = Remove
+Target = usr/lib32/gio/modules/*.so
+
+[Action]
+Description = Updating 32-bit GIO module cache...
+When = PostTransaction
+Exec = /usr/bin/gio-querymodules-32 /usr/lib32/gio/modules
diff --git a/multilib.diff b/multilib.diff
new file mode 100755
index 000000000000..c3b4ed300868
--- /dev/null
+++ b/multilib.diff
@@ -0,0 +1,12 @@
+diff --git i/gio/tests/meson.build w/gio/tests/meson.build
+index 65f43e267..3bd66bf60 100644
+--- i/gio/tests/meson.build
++++ w/gio/tests/meson.build
+@@ -598,6 +598,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
+ '-r',
+ '-b','binary',
+ '@INPUT@',
++ '--oformat', 'elf32-i386',
+ '-o','@OUTPUT@'])
+
+ # Rename symbol to match the one in the C file