diff options
-rw-r--r-- | app-arch/7-zip/7-zip-21.07-r2.ebuild (renamed from app-arch/7-zip/7-zip-21.07-r1.ebuild) | 9 | ||||
-rw-r--r-- | app-arch/7-zip/files/7-zip-less-asm.patch | 41 | ||||
-rw-r--r-- | profiles/package.use.mask | 3 |
3 files changed, 47 insertions, 6 deletions
diff --git a/app-arch/7-zip/7-zip-21.07-r1.ebuild b/app-arch/7-zip/7-zip-21.07-r2.ebuild index 7154c6c..81229fc 100644 --- a/app-arch/7-zip/7-zip-21.07-r1.ebuild +++ b/app-arch/7-zip/7-zip-21.07-r2.ebuild @@ -24,13 +24,16 @@ RDEPEND="!app-arch/p7zip" S=${WORKDIR} -PATCHES=( ${FILESDIR}/7-zip-flags.patch ) +PATCHES=( + "${FILESDIR}/7-zip-flags.patch" + "${FILESDIR}/7-zip-less-asm.patch" +) src_compile() { cd CPP/7zip/Bundles/Alone2 || die local myemakeargs=( - CC="$(tc-getCC) ${CFLAGS} ${LDFLAGS}" - CXX="$(tc-getCXX) ${CXXFLAGS} ${LDFLAGS}" + CC="$(tc-getCC) ${CFLAGS} -fno-strict-aliasing ${LDFLAGS}" + CXX="$(tc-getCXX) ${CXXFLAGS} -fno-strict-aliasing ${LDFLAGS}" ) if use asm; then myemakeargs+=(USE_ASM=1 USE_JWASM=1) diff --git a/app-arch/7-zip/files/7-zip-less-asm.patch b/app-arch/7-zip/files/7-zip-less-asm.patch new file mode 100644 index 0000000..040b445 --- /dev/null +++ b/app-arch/7-zip/files/7-zip-less-asm.patch @@ -0,0 +1,41 @@ +--- a/CPP/7zip/7zip_gcc.mak 2021-12-25 09:00:00.000000000 -0500 ++++ b/CPP/7zip/7zip_gcc.mak 2022-05-13 12:20:17.539629635 -0400 +@@ -1127,21 +1127,6 @@ + endif
+ endif
+
+-ifdef USE_X86_ASM
+-$O/7zCrcOpt.o: ../../../../Asm/x86/7zCrcOpt.asm
+- $(MY_ASM) $(AFLAGS) $<
+-$O/XzCrc64Opt.o: ../../../../Asm/x86/XzCrc64Opt.asm
+- $(MY_ASM) $(AFLAGS) $<
+-$O/Sha1Opt.o: ../../../../Asm/x86/Sha1Opt.asm
+- $(MY_ASM) $(AFLAGS) $<
+-$O/Sha256Opt.o: ../../../../Asm/x86/Sha256Opt.asm
+- $(MY_ASM) $(AFLAGS) $<
+-
+-ifndef USE_JWASM
+-USE_X86_ASM_AES=1
+-endif
+-
+-else
+ $O/7zCrcOpt.o: ../../../../C/7zCrcOpt.c
+ $(CC) $(CFLAGS) $<
+ $O/XzCrc64Opt.o: ../../../../C/XzCrc64Opt.c
+@@ -1150,16 +1135,10 @@ + $(CC) $(CFLAGS) $<
+ $O/Sha256Opt.o: ../../../../C/Sha256Opt.c
+ $(CC) $(CFLAGS) $<
+-endif
+
+
+-ifdef USE_X86_ASM_AES
+-$O/AesOpt.o: ../../../../Asm/x86/AesOpt.asm
+- $(MY_ASM) $(AFLAGS) $<
+-else
+ $O/AesOpt.o: ../../../../C/AesOpt.c
+ $(CC) $(CFLAGS) $<
+-endif
+
+
+ ifdef USE_X64_ASM
diff --git a/profiles/package.use.mask b/profiles/package.use.mask index 5402ef5..12ac400 100644 --- a/profiles/package.use.mask +++ b/profiles/package.use.mask @@ -11,6 +11,3 @@ dev-java/openj9-openjdk jbootstrap # not implemented yet dev-java/openj9-openjdk javafx - -# some AES decryptions cause wrong password -app-arch/7-zip asm |