diff options
author | sg2002 <sg2002@gmx.com> | 2022-09-23 14:24:54 +0300 |
---|---|---|
committer | sg2002 <sg2002@gmx.com> | 2022-09-25 16:12:45 +0300 |
commit | 49a6efa32af1e61608a7e145d25b1ffa1375ff2c (patch) | |
tree | db632a842757732ee9024e0c1546a780615894dd /pkgs/development/interpreters/spidermonkey | |
parent | 01188530fdfed7234eabf2e9babdd09f2fe58566 (diff) |
spidermonkey: fix i686 build
Diffstat (limited to 'pkgs/development/interpreters/spidermonkey')
-rw-r--r-- | pkgs/development/interpreters/spidermonkey/common.nix | 3 | ||||
-rw-r--r-- | pkgs/development/interpreters/spidermonkey/fix-float-i686.patch | 16 |
2 files changed, 19 insertions, 0 deletions
diff --git a/pkgs/development/interpreters/spidermonkey/common.nix b/pkgs/development/interpreters/spidermonkey/common.nix index 8e2b1234fdbc9..1272e061b0d90 100644 --- a/pkgs/development/interpreters/spidermonkey/common.nix +++ b/pkgs/development/interpreters/spidermonkey/common.nix @@ -75,6 +75,9 @@ stdenv.mkDerivation (finalAttrs: rec { url = "https://hg.mozilla.org/releases/mozilla-esr102/raw-rev/1fa20fb474f5d149cc32d98df169dee5e6e6861b"; sha256 = "sha256-eCisKjNxy9SLr9KoEE2UB26BflUknnR7PIvnpezsZeA="; }) + ] ++ lib.optionals (lib.versionAtLeast version "91" && stdenv.hostPlatform.system == "i686-linux") [ + # Fixes i686 build, https://bugzilla.mozilla.org/show_bug.cgi?id=1729459 + ./fix-float-i686.patch ]; nativeBuildInputs = [ diff --git a/pkgs/development/interpreters/spidermonkey/fix-float-i686.patch b/pkgs/development/interpreters/spidermonkey/fix-float-i686.patch new file mode 100644 index 0000000000000..f4e28763b75f4 --- /dev/null +++ b/pkgs/development/interpreters/spidermonkey/fix-float-i686.patch @@ -0,0 +1,16 @@ +diff --git a/modules/fdlibm/src/math_private.h b/modules/fdlibm/src/math_private.h +index 51d79f9c2ec59..fafd7d6fc1e0d 100644 +--- a/modules/fdlibm/src/math_private.h ++++ b/modules/fdlibm/src/math_private.h +@@ -30,5 +30,9 @@ + * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t + */ + ++#if defined __FLT_EVAL_METHOD__ && (__FLT_EVAL_METHOD__ == 2) ++typedef long double __double_t; ++#else + typedef double __double_t; ++#endif + typedef __double_t double_t; + + /* \ No newline at end of file |