nss_latest: remove curve25519 support
Was enabled unconditionally, but causes SIGILL on machines that do not support the Intel ADX instruction extensions.
This commit is contained in:
parent
871fd1b210
commit
2e5b94de00
@ -52,6 +52,10 @@ stdenv.mkDerivation rec {
|
||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1771273
|
||||
# https://hg.mozilla.org/projects/nss/raw-rev/21e7aaa1f7d94bca15d997e5b4c2329b32fad21a
|
||||
./gcc-13-esr.patch
|
||||
] ++ lib.optionals (lib.versionAtLeast version "3.90") [
|
||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1836925
|
||||
# https://phabricator.services.mozilla.com/D180068
|
||||
./remove-c25519-support.patch
|
||||
];
|
||||
|
||||
patchFlags = [ "-p0" ];
|
||||
|
69
pkgs/development/libraries/nss/remove-c25519-support.patch
Normal file
69
pkgs/development/libraries/nss/remove-c25519-support.patch
Normal file
@ -0,0 +1,69 @@
|
||||
diff --git a/nss/lib/freebl/Makefile b/nss/lib/freebl/Makefile
|
||||
index 74e8e65..aa9dd95 100644
|
||||
--- nss/lib/freebl/Makefile
|
||||
+++ nss/lib/freebl/Makefile
|
||||
@@ -568,7 +568,6 @@ ifneq ($(shell $(CC) -? 2>&1 >/dev/null </dev/null | sed -e 's/:.*//;1q'),lcc)
|
||||
HAVE_INT128_SUPPORT = 1
|
||||
DEFINES += -DHAVE_INT128_SUPPORT
|
||||
else ifeq (1,$(CC_IS_GCC))
|
||||
- SUPPORTS_VALE_CURVE25519 = 1
|
||||
ifneq (,$(filter 4.6 4.7 4.8 4.9,$(word 1,$(GCC_VERSION)).$(word 2,$(GCC_VERSION))))
|
||||
HAVE_INT128_SUPPORT = 1
|
||||
DEFINES += -DHAVE_INT128_SUPPORT
|
||||
@@ -593,11 +592,6 @@ ifndef HAVE_INT128_SUPPORT
|
||||
DEFINES += -DKRML_VERIFIED_UINT128
|
||||
endif
|
||||
|
||||
-ifdef SUPPORTS_VALE_CURVE25519
|
||||
- VERIFIED_SRCS += Hacl_Curve25519_64.c
|
||||
- DEFINES += -DHACL_CAN_COMPILE_INLINE_ASM
|
||||
-endif
|
||||
-
|
||||
ifndef NSS_DISABLE_CHACHAPOLY
|
||||
ifeq ($(CPU_ARCH),x86_64)
|
||||
ifndef NSS_DISABLE_AVX2
|
||||
diff --git a/nss/lib/freebl/freebl.gyp b/nss/lib/freebl/freebl.gyp
|
||||
index 65f9a80..23940ef 100644
|
||||
--- nss/lib/freebl/freebl.gyp
|
||||
+++ nss/lib/freebl/freebl.gyp
|
||||
@@ -866,12 +866,6 @@
|
||||
}],
|
||||
],
|
||||
}],
|
||||
- [ 'supports_vale_curve25519==1', {
|
||||
- 'defines': [
|
||||
- # The Makefile does version-tests on GCC, but we're not doing that here.
|
||||
- 'HACL_CAN_COMPILE_INLINE_ASM',
|
||||
- ],
|
||||
- }],
|
||||
[ 'OS=="linux" or OS=="android"', {
|
||||
'conditions': [
|
||||
[ 'target_arch=="x64"', {
|
||||
@@ -934,11 +928,6 @@
|
||||
'variables': {
|
||||
'module': 'nss',
|
||||
'conditions': [
|
||||
- [ 'target_arch=="x64" and cc_is_gcc==1', {
|
||||
- 'supports_vale_curve25519%': 1,
|
||||
- }, {
|
||||
- 'supports_vale_curve25519%': 0,
|
||||
- }],
|
||||
[ 'target_arch=="x64" or target_arch=="arm64" or target_arch=="aarch64"', {
|
||||
'have_int128_support%': 1,
|
||||
}, {
|
||||
diff --git a/nss/lib/freebl/freebl_base.gypi b/nss/lib/freebl/freebl_base.gypi
|
||||
index d198c44..34b6b3c 100644
|
||||
--- nss/lib/freebl/freebl_base.gypi
|
||||
+++ nss/lib/freebl/freebl_base.gypi
|
||||
@@ -151,11 +151,6 @@
|
||||
'ecl/curve25519_32.c',
|
||||
],
|
||||
}],
|
||||
- ['supports_vale_curve25519==1', {
|
||||
- 'sources': [
|
||||
- 'verified/Hacl_Curve25519_64.c',
|
||||
- ],
|
||||
- }],
|
||||
['(target_arch!="ppc64" and target_arch!="ppc64le") or disable_altivec==1', {
|
||||
'sources': [
|
||||
# Gyp does not support per-file cflags, so working around like this.
|
Loading…
Reference in New Issue
Block a user