diff --git a/gjs-1.71.1-bigint-32bit-test.patch b/gjs-1.71.1-bigint-32bit-test.patch new file mode 100644 index 0000000..e26c2e9 --- /dev/null +++ b/gjs-1.71.1-bigint-32bit-test.patch @@ -0,0 +1,46 @@ +From a81be96706588c69ebad5c310ddb050b73831ae6 Mon Sep 17 00:00:00 2001 +From: Philip Chimento +Date: Sun, 20 Feb 2022 17:31:57 -0800 +Subject: [PATCH] tests: Fix BigInt tests on 32-bit + +Since we test BigInt values for each type that has a key in the +BigIntLimits object, we need to not define keys for types that are not +64-bits. +--- + installed-tests/js/testGIMarshalling.js | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +diff --git a/installed-tests/js/testGIMarshalling.js b/installed-tests/js/testGIMarshalling.js +index 02c03f0f9..1f13b311f 100644 +--- a/installed-tests/js/testGIMarshalling.js ++++ b/installed-tests/js/testGIMarshalling.js +@@ -141,10 +141,6 @@ const BigIntLimits = { + max: 2n ** 63n - 1n, + umax: 2n ** 64n - 1n, + }, +- long: {}, +- ssize: { +- utype: 'size', +- }, + }; + + Object.assign(Limits.short, Limits.int16); +@@ -152,13 +148,13 @@ Object.assign(Limits.int, Limits.int32); + // Platform dependent sizes; expand definitions as needed + if (GLib.SIZEOF_LONG === 8) { + Object.assign(Limits.long, Limits.int64); +- Object.assign(BigIntLimits.long, BigIntLimits.int64); ++ BigIntLimits.long = Object.assign({}, BigIntLimits.int64); + } else { + Object.assign(Limits.long, Limits.int32); + } + if (GLib.SIZEOF_SSIZE_T === 8) { + Object.assign(Limits.ssize, Limits.int64); +- Object.assign(BigIntLimits.ssize, BigIntLimits.int64); ++ BigIntLimits.ssize = Object.assign({utype: 'size'}, BigIntLimits.int64); + } else { + Object.assign(Limits.ssize, Limits.int32); + } +-- +GitLab + diff --git a/gjs.spec b/gjs.spec index a14c103..cd44661 100644 --- a/gjs.spec +++ b/gjs.spec @@ -4,7 +4,7 @@ Name: gjs Version: 1.71.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Javascript Bindings for GNOME # The following files contain code from Mozilla which @@ -16,6 +16,8 @@ URL: https://wiki.gnome.org/Projects/Gjs Source0: https://download.gnome.org/sources/%{name}/1.71/%{name}-%{version}.tar.xz # https://gitlab.gnome.org/GNOME/gjs/-/issues/461 Patch0: gjs-1.71.1-cairo-textextents-test.patch +# https://gitlab.gnome.org/GNOME/gjs/-/issues/462 +Patch1: gjs-1.71.1-bigint-32bit-test.patch BuildRequires: gcc-c++ BuildRequires: meson @@ -60,12 +62,6 @@ the functionality of the installed gjs package. %prep %autosetup -p1 -# Disable a test that fails on 32-bit for now, we don't care much about -# i686 or 32-bit ARM and need this to build: -# https://gitlab.gnome.org/GNOME/gjs/-/issues/462 -%ifarch %{ix86} %{arm} -sed -i -e "/'GIMarshalling'/d" installed-tests/js/meson.build -%endif # Also disable another test that fails on 32-bit ARM: # https://gitlab.gnome.org/GNOME/gjs/-/issues/463 %ifarch %{arm} @@ -105,6 +101,9 @@ sed -i -e "/'Gtk4'/d" installed-tests/js/meson.build %{_datadir}/installed-tests/ %changelog +* Mon Feb 21 2022 David King - 1.71.1-3 +- Fix 32-bit GI marshalling test + * Sun Feb 20 2022 Frantisek Zatloukal - 1.71.1-2 - Rebuild against mozjs91-91.6.0-1