summaryrefslogtreecommitdiffstats
path: root/packages/app-crypt/veracrypt/files
diff options
context:
space:
mode:
Diffstat (limited to 'packages/app-crypt/veracrypt/files')
-rw-r--r--packages/app-crypt/veracrypt/files/veracrypt-1.26.29-argon2-avx2-avx512f.patch98
-rw-r--r--packages/app-crypt/veracrypt/files/veracrypt-1.26.29-fix-nosse2.patch31
-rw-r--r--packages/app-crypt/veracrypt/files/veracrypt-1.26.29-fix-release-date.patch19
3 files changed, 148 insertions, 0 deletions
diff --git a/packages/app-crypt/veracrypt/files/veracrypt-1.26.29-argon2-avx2-avx512f.patch b/packages/app-crypt/veracrypt/files/veracrypt-1.26.29-argon2-avx2-avx512f.patch
new file mode 100644
index 0000000..7d9b76d
--- /dev/null
+++ b/packages/app-crypt/veracrypt/files/veracrypt-1.26.29-argon2-avx2-avx512f.patch
@@ -0,0 +1,98 @@
+Fix build when CFLAGS contains or implies -mavx2 and/or -mavx512f
+
+https://bugs.gentoo.org/983361
+https://github.com/veracrypt/VeraCrypt/issues/1867
+
+--- a/Build/Include/Makefile.inc
++++ b/Build/Include/Makefile.inc
+@@ -14,7 +14,7 @@ $(NAME): $(NAME).a
+
+ clean:
+ @echo Cleaning $(NAME)
+- rm -f $(APPNAME) $(NAME).a $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJSHANI) $(OBJAESNI) $(OBJSSSE41) $(OBJSSSSE3) $(OBJSAVX2) $(OBJARMV8CRYPTO) $(OBJS:.o=.d) $(OBJSEX:.oo=.d) $(OBJSNOOPT:.o0=.d) $(OBJSHANI:.oshani=.d) $(OBJAESNI:.oaesni=.d) $(OBJSSSE41:.osse41=.d) $(OBJSSSSE3:.ossse3=.d) $(OBJSAVX2:.oavx2=.d) $(OBJARMV8CRYPTO:.oarmv8crypto=.d) *.gch
++ rm -f $(APPNAME) $(NAME).a $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJSHANI) $(OBJAESNI) $(OBJSSSE2) $(OBJSSSE41) $(OBJSSSSE3) $(OBJSAVX2) $(OBJARMV8CRYPTO) $(OBJS:.o=.d) $(OBJSEX:.oo=.d) $(OBJSNOOPT:.o0=.d) $(OBJSHANI:.oshani=.d) $(OBJAESNI:.oaesni=.d) $(OBJSSSE2:.osse2=.d) $(OBJSSSE41:.osse41=.d) $(OBJSSSSE3:.ossse3=.d) $(OBJSAVX2:.oavx2=.d) $(OBJARMV8CRYPTO:.oarmv8crypto=.d) *.gch
+
+ %.o: %.c
+ @echo Compiling $(<F)
+@@ -24,6 +24,10 @@ clean:
+ @echo Compiling $(<F)
+ $(CC) $(CFLAGS) -O0 -c $< -o $@
+
++%.osse2: %.c
++ @echo Compiling $(<F)
++ $(CC) $(CFLAGS) -msse2 -mno-avx2 -mno-avx512f -c $< -o $@
++
+ %.osse41: %.c
+ @echo Compiling $(<F)
+ $(CC) $(CFLAGS) -mssse3 -msse4.1 -c $< -o $@
+@@ -42,7 +46,7 @@ clean:
+
+ %.oavx2: %.c
+ @echo Compiling $(<F)
+- $(CC) $(CFLAGS) -mavx2 -c $< -o $@
++ $(CC) $(CFLAGS) -mavx2 -mno-avx512f -c $< -o $@
+
+ %.oarmv8crypto: %.c
+ @echo Compiling $(<F)
+@@ -122,7 +126,7 @@ TR_SED_BIN := tr '\n' ' ' | tr -s ' ' ',' | sed -e 's/^,//g' -e 's/,$$/n/' | tr
+
+
+ # Dependencies
+--include $(OBJS:.o=.d) $(OBJSEX:.oo=.d) $(OBJSNOOPT:.o0=.d) $(OBJSHANI:.oshani=.d) $(OBJAESNI:.oaesni=.d) $(OBJSSSE41:.osse41=.d) $(OBJSSSSE3:.ossse3=.d) $(OBJSAVX2:.oavx2=.d) $(OBJARMV8CRYPTO:.oarmv8crypto=.d)
++-include $(OBJS:.o=.d) $(OBJSEX:.oo=.d) $(OBJSNOOPT:.o0=.d) $(OBJSHANI:.oshani=.d) $(OBJAESNI:.oaesni=.d) $(OBJSSSE2:.osse2=.d) $(OBJSSSE41:.osse41=.d) $(OBJSSSSE3:.ossse3=.d) $(OBJSAVX2:.oavx2=.d) $(OBJARMV8CRYPTO:.oarmv8crypto=.d)
+
+
+ # Deterministic static library: the 'D' modifier zeroes member mtime/uid/gid
+@@ -135,8 +139,8 @@ TR_SED_BIN := tr '\n' ' ' | tr -s ' ' ',' | sed -e 's/^,//g' -e 's/,$$/n/' | tr
+ AR_DETERMINISTIC := $(shell t=$$(mktemp); rm -f $$t.a; $(AR) Drc $$t.a $$t >/dev/null 2>&1 && echo D; rm -f $$t $$t.a)
+ RANLIB_DETERMINISTIC := $(shell t=$$(mktemp); rm -f $$t.a; $(AR) rc $$t.a $$t >/dev/null 2>&1; $(RANLIB) -D $$t.a >/dev/null 2>&1 && echo -D; rm -f $$t $$t.a)
+
+-$(NAME).a: $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJSHANI) $(OBJAESNI) $(OBJSSSE41) $(OBJSSSSE3) $(OBJSAVX2) $(OBJARMV8CRYPTO)
++$(NAME).a: $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJSHANI) $(OBJAESNI) $(OBJSSSE2) $(OBJSSSE41) $(OBJSSSSE3) $(OBJSAVX2) $(OBJARMV8CRYPTO)
+ @echo Updating library $@
+ rm -f $@
+- $(AR) $(AFLAGS) $(AR_DETERMINISTIC)rc $@ $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJSHANI) $(OBJAESNI) $(OBJSSSE41) $(OBJSSSSE3) $(OBJSAVX2) $(OBJARMV8CRYPTO)
++ $(AR) $(AFLAGS) $(AR_DETERMINISTIC)rc $@ $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJSHANI) $(OBJAESNI) $(OBJSSSE2) $(OBJSSSE41) $(OBJSSSSE3) $(OBJSAVX2) $(OBJARMV8CRYPTO)
+ $(RANLIB) $(RANLIB_DETERMINISTIC) $@
+--- a/Volume/Volume.make
++++ b/Volume/Volume.make
+@@ -13,6 +13,7 @@
+ OBJS :=
+ OBJSEX :=
+ OBJSNOOPT :=
++OBJSSSE2 :=
+ OBJSSSE41 :=
+ OBJSSSSE3 :=
+ OBJSHANI :=
+@@ -96,11 +97,15 @@ else
+ endif
+
+ ifeq "$(GCC_GTEQ_430)" "1"
++ OBJSSSE2 += ../Crypto/blake2s_SSE2.osse2
+ OBJSSSE41 += ../Crypto/blake2s_SSE41.osse41
+ OBJSSSSE3 += ../Crypto/blake2s_SSSE3.ossse3
++ OBJSSSE2 += ../Crypto/Argon2/src/opt_sse2.osse2
+ else
++ OBJS += ../Crypto/blake2s_SSE2.o
+ OBJS += ../Crypto/blake2s_SSE41.o
+ OBJS += ../Crypto/blake2s_SSSE3.o
++ OBJS += ../Crypto/Argon2/src/opt_sse2.o
+ endif
+ ifeq "$(GCC_GTEQ_500)" "1"
+ OBJSHANI += ../Crypto/Sha2Intel.oshani
+@@ -127,7 +134,6 @@ ifeq "$(ENABLE_WOLFCRYPT)" "0"
+ OBJS += ../Crypto/Aeskey.o
+ OBJS += ../Crypto/Aestab.o
+ OBJS += ../Crypto/blake2s.o
+-OBJS += ../Crypto/blake2s_SSE2.o
+ OBJS += ../Crypto/SerpentFast.o
+ OBJS += ../Crypto/SerpentFast_simd.o
+ OBJS += ../Crypto/Sha2.o
+@@ -141,7 +147,6 @@ OBJS += ../Crypto/Argon2/src/blake2/blake2b.o
+ OBJS += ../Crypto/Argon2/src/argon2.o
+ OBJS += ../Crypto/Argon2/src/core.o
+ OBJS += ../Crypto/Argon2/src/argon2.o
+-OBJS += ../Crypto/Argon2/src/opt_sse2.o
+ OBJS += ../Crypto/Argon2/src/ref.o
+ OBJS += ../Crypto/Argon2/src/selftest.o
+ OBJS += ../Common/Pkcs5.o
diff --git a/packages/app-crypt/veracrypt/files/veracrypt-1.26.29-fix-nosse2.patch b/packages/app-crypt/veracrypt/files/veracrypt-1.26.29-fix-nosse2.patch
new file mode 100644
index 0000000..f28b1ec
--- /dev/null
+++ b/packages/app-crypt/veracrypt/files/veracrypt-1.26.29-fix-nosse2.patch
@@ -0,0 +1,31 @@
+Fix building with NOSSE2.
+The change in Tcdefs.h is not required for x86, but for some reason it is
+necessary for x86_64.
+
+https://github.com/veracrypt/VeraCrypt/pull/1891
+
+--- a/Common/Tcdefs.h
++++ b/Common/Tcdefs.h
+@@ -52,9 +52,7 @@ extern unsigned short _rotl16(unsigned short value, unsigned char shift);
+
+ #endif // defined(_UEFI)
+
+-#ifdef TC_WINDOWS_BOOT
+ #include <stddef.h>
+-#endif
+
+ #define TC_APP_NAME "VeraCrypt"
+
+--- a/Makefile
++++ b/Makefile
+@@ -289,8 +289,8 @@ ifeq "$(shell uname -s)" "Linux"
+ endif
+
+ ifeq "$(origin NOSSE2)" "command line"
+- CFLAGS += -mno-sse2
+- CXXFLAGS += -mno-sse2
++ CFLAGS += -mno-sse2 -DCRYPTOPP_DISABLE_AESNI -DCRYPTOPP_DISABLE_SHANI
++ CXXFLAGS += -mno-sse2 -DCRYPTOPP_DISABLE_AESNI -DCRYPTOPP_DISABLE_SHANI
+ WXCONFIG_CFLAGS += -mno-sse2
+ WXCONFIG_CXXFLAGS += -mno-sse2
+ endif
diff --git a/packages/app-crypt/veracrypt/files/veracrypt-1.26.29-fix-release-date.patch b/packages/app-crypt/veracrypt/files/veracrypt-1.26.29-fix-release-date.patch
new file mode 100644
index 0000000..ed512b9
--- /dev/null
+++ b/packages/app-crypt/veracrypt/files/veracrypt-1.26.29-fix-release-date.patch
@@ -0,0 +1,19 @@
+From 80a126d04ec4943f96cb98d9cc152af1a4c1d0a0 Mon Sep 17 00:00:00 2001
+From: Mounir IDRASSI <mounir.idrassi@amcrypto.jp>
+Date: Sat, 13 Jun 2026 11:32:59 +0900
+Subject: [PATCH] Fix release date string to match actual TC_RELEASE_DATE_DAY
+ value
+
+---
+
+--- a/Common/Tcdefs.h
++++ b/Common/Tcdefs.h
+@@ -73,7 +73,7 @@ extern unsigned short _rotl16(unsigned short value, unsigned char shift);
+ #define VERSION_NUM 0x0126
+
+ // Release date
+-#define TC_STR_RELEASE_DATE L"June 8, 2026"
++#define TC_STR_RELEASE_DATE L"June 9, 2026"
+ #define TC_RELEASE_DATE_YEAR 2026
+ #define TC_RELEASE_DATE_MONTH 6
+ #define TC_RELEASE_DATE_DAY 9