diff options
Diffstat (limited to 'user/gobject-introspection')
-rw-r--r-- | user/gobject-introspection/APKBUILD | 30 | ||||
-rw-r--r-- | user/gobject-introspection/musl-time64.patch | 37 | ||||
-rw-r--r-- | user/gobject-introspection/support-cross-filesystem-move.patch | 11 | ||||
-rw-r--r-- | user/gobject-introspection/we-are-in-a-pickle.patch | 28 |
4 files changed, 61 insertions, 45 deletions
diff --git a/user/gobject-introspection/APKBUILD b/user/gobject-introspection/APKBUILD index 81dca7aed..df8490dc9 100644 --- a/user/gobject-introspection/APKBUILD +++ b/user/gobject-introspection/APKBUILD @@ -1,6 +1,6 @@ -# Maintainer: +# Maintainer: Zach van Rijn <me@zv.io> pkgname=gobject-introspection -pkgver=1.60.2 +pkgver=1.72.0 pkgrel=0 pkgdesc="Introspection system for GObject-based libraries" url="https://wiki.gnome.org/action/show/Projects/GObjectIntrospection" @@ -13,28 +13,22 @@ makedepends="$depends_dev bison flex glib-dev libffi-dev meson ninja python3-dev checkdepends="sed" subpackages="$pkgname-doc $pkgname-dev" replaces="libgirepository" -source="https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz" - -prepare() { - cd "$builddir" - default_prepare - mkdir -p build -} +source="https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz + musl-time64.patch + support-cross-filesystem-move.patch + " build() { - cd "$builddir"/build - meson -Dprefix=/usr - ninja + meson -Dprefix=/usr build + ninja -C build } check() { - cd "$builddir"/build - ninja test + ninja -C build test -j1 } package() { - cd "$builddir"/build - DESTDIR="$pkgdir" ninja install + DESTDIR="$pkgdir" ninja -C build install } dev() { @@ -46,4 +40,6 @@ dev() { replaces="gobject-introspection" } -sha512sums="8e8c1c3a025cb6c18933302ada8cce7c4826f22eef791c80a97abb28379239f8d99312e1237bcea1060f4d5cf65441909b9da434561982209bb4976b1f22529e gobject-introspection-1.60.2.tar.xz" +sha512sums="b8fba2bd12e93776c55228acf3487bef36ee40b1abdc7f681b827780ac94a8bfa1f59b0c30d60fa5a1fea2f610de78b9e52029f411128067808f17eb6374cdc5 gobject-introspection-1.72.0.tar.xz +784acecd0e139685664ba1af6f1df69aeeb2da11a2b7ef9b42f46f42699e087aa90f0a2d95c1ff7aa1c04a3f2505d6006015b5a0f1ba1b125d6b1311474736c2 musl-time64.patch +ce07017598d55a7a0b2a0cad18664a004d4f0425b57c29fd7d6c1d0d340e82db83c2a876cd60f3fb0fbc9e79d83badea4fc7c547f854d44b51bb980df8afa95a support-cross-filesystem-move.patch" diff --git a/user/gobject-introspection/musl-time64.patch b/user/gobject-introspection/musl-time64.patch new file mode 100644 index 000000000..53066bebb --- /dev/null +++ b/user/gobject-introspection/musl-time64.patch @@ -0,0 +1,37 @@ +--- a/giscanner/ast.py ++++ b/giscanner/ast.py +@@ -346,7 +346,8 @@ + type_names['ssize_t'] = type_names['gssize'] + type_names['uintptr_t'] = type_names['guintptr'] + type_names['intptr_t'] = type_names['gintptr'] +-type_names['time_t'] = TYPE_LONG ++# musl libc 1.2 and newer uses 64 time_t for all arches ++type_names['time_t'] = TYPE_INT64 + type_names['off_t'] = type_names['gsize'] + type_names['pid_t'] = TYPE_INT + type_names['uid_t'] = TYPE_UINT +--- a/tests/scanner/Regress-1.0-expected.gir ++++ b/tests/scanner/Regress-1.0-expected.gir +@@ -2003,7 +2003,7 @@ uses a C sugar return type.</doc> + <type name="FooObject" c:type="RegressFooObject*"/> + </instance-parameter> + <parameter name="time" transfer-ownership="none"> +- <type name="glong" c:type="time_t"/> ++ <type name="gint64" c:type="time_t"/> + </parameter> + </parameters> + </method> +@@ -8381,11 +8381,11 @@ https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc> + <function name="test_timet" c:identifier="regress_test_timet"> + <source-position filename="regress.h" line="94"/> + <return-value transfer-ownership="none"> +- <type name="glong" c:type="time_t"/> ++ <type name="gint64" c:type="time_t"/> + </return-value> + <parameters> + <parameter name="in" transfer-ownership="none"> +- <type name="glong" c:type="time_t"/> ++ <type name="gint64" c:type="time_t"/> + </parameter> + </parameters> + </function> diff --git a/user/gobject-introspection/support-cross-filesystem-move.patch b/user/gobject-introspection/support-cross-filesystem-move.patch new file mode 100644 index 000000000..80fc80baa --- /dev/null +++ b/user/gobject-introspection/support-cross-filesystem-move.patch @@ -0,0 +1,11 @@ +--- a/misc/update-glib-annotations.py ++++ b/misc/update-glib-annotations.py +@@ -57,7 +57,7 @@ + extract_annotations(module_name, glib_src_dir, target) + if os.path.isfile(target_path): + os.unlink(target_path) +- os.rename(tmpname, target_path) ++ shutil.move(tmpname, target_path) + + print("Updated '%s'" % (target_path, )) + diff --git a/user/gobject-introspection/we-are-in-a-pickle.patch b/user/gobject-introspection/we-are-in-a-pickle.patch deleted file mode 100644 index 5262e2887..000000000 --- a/user/gobject-introspection/we-are-in-a-pickle.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 945438608433a554b8d7077af648d60a9daf59f9 Mon Sep 17 00:00:00 2001 -From: Christoph Reiter <reiter.christoph@gmail.com> -Date: Sat, 8 Dec 2018 18:44:31 +0100 -Subject: [PATCH] cachestore: don't try to catch nonexisting - pickle.BadPickleGet. Fixes #159 - -pickle.loads() can pretty much throw any kind of exception and we can't -handle it besides ignoring it, so just catch all. ---- - giscanner/cachestore.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/giscanner/cachestore.py b/giscanner/cachestore.py -index 58b3193c..857dc725 100644 ---- a/giscanner/cachestore.py -+++ b/giscanner/cachestore.py -@@ -178,7 +178,7 @@ class CacheStore(object): - return None - try: - data = pickle.load(fd) -- except (AttributeError, EOFError, ValueError, pickle.BadPickleGet): -+ except Exception: - # Broken cache entry, remove it - self._remove_filename(store_filename) - data = None --- -2.18.1 - |