[arch-commits] Commit in lib32-glib2/repos (6 files)

Jan Steffens heftig at archlinux.org
Sun Feb 7 23:07:33 UTC 2021


    Date: Sunday, February 7, 2021 @ 23:07:33
  Author: heftig
Revision: 848502

archrelease: copy trunk to multilib-testing-x86_64

Added:
  lib32-glib2/repos/multilib-testing-x86_64/
  lib32-glib2/repos/multilib-testing-x86_64/0001-giochannel-Fix-length_size-bounds-check.patch
    (from rev 848501, lib32-glib2/trunk/0001-giochannel-Fix-length_size-bounds-check.patch)
  lib32-glib2/repos/multilib-testing-x86_64/PKGBUILD
    (from rev 848501, lib32-glib2/trunk/PKGBUILD)
  lib32-glib2/repos/multilib-testing-x86_64/gio-querymodules-32.hook
    (from rev 848501, lib32-glib2/trunk/gio-querymodules-32.hook)
  lib32-glib2/repos/multilib-testing-x86_64/gio-querymodules-32.script
    (from rev 848501, lib32-glib2/trunk/gio-querymodules-32.script)
  lib32-glib2/repos/multilib-testing-x86_64/multilib.diff
    (from rev 848501, lib32-glib2/trunk/multilib.diff)

----------------------------------------------------+
 0001-giochannel-Fix-length_size-bounds-check.patch |   28 +++++++
 PKGBUILD                                           |   74 +++++++++++++++++++
 gio-querymodules-32.hook                           |   12 +++
 gio-querymodules-32.script                         |    7 +
 multilib.diff                                      |   12 +++
 5 files changed, 133 insertions(+)

Copied: lib32-glib2/repos/multilib-testing-x86_64/0001-giochannel-Fix-length_size-bounds-check.patch (from rev 848501, lib32-glib2/trunk/0001-giochannel-Fix-length_size-bounds-check.patch)
===================================================================
--- multilib-testing-x86_64/0001-giochannel-Fix-length_size-bounds-check.patch	                        (rev 0)
+++ multilib-testing-x86_64/0001-giochannel-Fix-length_size-bounds-check.patch	2021-02-07 23:07:33 UTC (rev 848502)
@@ -0,0 +1,28 @@
+From a149bf2f9030168051942124536e303af8ba6176 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens at gmail.com>
+Date: Sun, 7 Feb 2021 23:32:40 +0100
+Subject: [PATCH] giochannel: Fix length_size bounds check
+
+The inverted condition is an obvious error introduced by ecdf91400e9a.
+
+Fixes https://gitlab.gnome.org/GNOME/glib/-/issues/2323
+---
+ glib/giochannel.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/glib/giochannel.c b/glib/giochannel.c
+index 4c5e081ed..8516c0b5e 100644
+--- a/glib/giochannel.c
++++ b/glib/giochannel.c
+@@ -899,7 +899,7 @@ g_io_channel_set_line_term (GIOChannel	*channel,
+     {
+       /* FIXME: We’re constrained by line_term_len being a guint here */
+       gsize length_size = strlen (line_term);
+-      g_return_if_fail (length_size > G_MAXUINT);
++      g_return_if_fail (length_size <= G_MAXUINT);
+       length_unsigned = (guint) length_size;
+     }
+ 
+-- 
+2.30.0
+

Copied: lib32-glib2/repos/multilib-testing-x86_64/PKGBUILD (from rev 848501, lib32-glib2/trunk/PKGBUILD)
===================================================================
--- multilib-testing-x86_64/PKGBUILD	                        (rev 0)
+++ multilib-testing-x86_64/PKGBUILD	2021-02-07 23:07:33 UTC (rev 848502)
@@ -0,0 +1,74 @@
+# Maintainer: Jan Alexander Steffens (heftig) <heftig at archlinux.org>
+# Contributor: Ionut Biru <ibiru at archlinux.org>
+# Contributor: Pierre Schmitz <pierre at archlinux.de>
+# Contributor: Mikko Seppälä <t-r-a-y at mbnet.fi>
+
+pkgname=lib32-glib2
+pkgver=2.66.6
+pkgrel=2
+pkgdesc="Low level core library (32-bit)"
+url="https://wiki.gnome.org/Projects/GLib"
+license=(LGPL)
+arch=(x86_64)
+depends=(lib32-pcre lib32-libffi lib32-util-linux lib32-zlib glib2)
+makedepends=(gettext gtk-doc shared-mime-info python lib32-libelf git util-linux
+             meson lib32-dbus)
+checkdepends=(desktop-file-utils lib32-glib2)
+_commit=d5ec4f360fb5a2ef0df1862999f970dc67fa352c  # tags/2.66.6^0
+source=("git+https://gitlab.gnome.org/GNOME/glib.git#commit=$_commit"
+        0001-giochannel-Fix-length_size-bounds-check.patch
+        multilib.diff
+        gio-querymodules-32.{hook,script})
+sha256sums=('SKIP'
+            'd2dbc00679545cedb33d0179d69a9be5c12b3f00d426e227ca07687384f3407c'
+            '2611ec4c97346c3c4eea61786ee20c801207135a9d52a771f5f340b41bf69fbc'
+            '2fe9543c97829300c25e6b45ed01fb63d3b699649fb2924b9a41443ccec8b946'
+            '1c96fb5f09baf59987e4b97bf3af37ea8feedcc753b48c91ffc6bff080461f21')
+
+pkgver() {
+  cd glib
+  git describe --tags | sed 's/-/+/g'
+}
+
+prepare() {
+  cd glib
+
+  # https://bugs.archlinux.org/task/69569
+  git apply -3 ../0001-giochannel-Fix-length_size-bounds-check.patch
+
+  # 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 selinux=disabled \
+    --libdir=/usr/lib32
+  meson compile -C build
+}
+
+check() {
+  meson test -C build --no-suite flaky --no-suite slow --print-errorlogs
+}
+
+package() {
+  depends+=(libmount.so)
+  provides+=(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
+  install -D gio-querymodules-32.script "$pkgdir/usr/share/libalpm/scripts/gio-querymodules-32"
+}
+
+# vim:set sw=2 et:

Copied: lib32-glib2/repos/multilib-testing-x86_64/gio-querymodules-32.hook (from rev 848501, lib32-glib2/trunk/gio-querymodules-32.hook)
===================================================================
--- multilib-testing-x86_64/gio-querymodules-32.hook	                        (rev 0)
+++ multilib-testing-x86_64/gio-querymodules-32.hook	2021-02-07 23:07:33 UTC (rev 848502)
@@ -0,0 +1,12 @@
+[Trigger]
+Type = Path
+Operation = Install
+Operation = Upgrade
+Operation = Remove
+Target = usr/lib32/gio/modules/
+
+[Action]
+Description = Updating 32-bit GIO module cache...
+When = PostTransaction
+Exec = /usr/share/libalpm/scripts/gio-querymodules-32
+NeedsTargets

Copied: lib32-glib2/repos/multilib-testing-x86_64/gio-querymodules-32.script (from rev 848501, lib32-glib2/trunk/gio-querymodules-32.script)
===================================================================
--- multilib-testing-x86_64/gio-querymodules-32.script	                        (rev 0)
+++ multilib-testing-x86_64/gio-querymodules-32.script	2021-02-07 23:07:33 UTC (rev 848502)
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+while read -r d; do
+  [[ -d $d ]] || continue
+  gio-querymodules-32 "$d"
+  rmdir --ignore-fail-on-non-empty "$d"
+done

Copied: lib32-glib2/repos/multilib-testing-x86_64/multilib.diff (from rev 848501, lib32-glib2/trunk/multilib.diff)
===================================================================
--- multilib-testing-x86_64/multilib.diff	                        (rev 0)
+++ multilib-testing-x86_64/multilib.diff	2021-02-07 23:07:33 UTC (rev 848502)
@@ -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


More information about the arch-commits mailing list