summaryrefslogtreecommitdiff
path: root/app-arch
diff options
context:
space:
mode:
Diffstat (limited to 'app-arch')
-rw-r--r--app-arch/7-zip/7-zip-22.01.ebuild (renamed from app-arch/7-zip/7-zip-21.07.ebuild)16
-rw-r--r--app-arch/7-zip/Manifest2
-rw-r--r--app-arch/7-zip/files/7-zip-less-asm.patch41
-rw-r--r--app-arch/7-zip/metadata.xml1
-rw-r--r--app-arch/precomp-cpp/metadata.xml3
5 files changed, 56 insertions, 7 deletions
diff --git a/app-arch/7-zip/7-zip-21.07.ebuild b/app-arch/7-zip/7-zip-22.01.ebuild
index 86d7287..81229fc 100644
--- a/app-arch/7-zip/7-zip-21.07.ebuild
+++ b/app-arch/7-zip/7-zip-22.01.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit flag-o-matic
+inherit toolchain-funcs
MY_PV=${PV%%_*}
MY_PV=${MY_PV//./}
@@ -12,10 +12,10 @@ DESCRIPTION="File archiver with a high compression ratio"
HOMEPAGE="https://7-zip.org/"
SRC_URI="https://7-zip.org/a/7z${MY_PV}-src.tar.xz"
-LICENSE="LGPL-2.1+"
+LICENSE="LGPL-2.1+ BSD rar? ( unRAR )"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE="+asm"
+IUSE="+asm rar"
BDEPEND="
asm? ( dev-lang/jwasm )
@@ -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)
@@ -44,6 +47,7 @@ src_compile() {
einfo "asm is not supported on this arch, ignoring"
fi
fi
+ use rar || myemakeargs+=(DISABLE_RAR=1)
mkdir -p b/g || die
emake -f ../../cmpl_gcc.mak "${myemakeargs[@]}"
}
diff --git a/app-arch/7-zip/Manifest b/app-arch/7-zip/Manifest
index 1dc3b00..ac40149 100644
--- a/app-arch/7-zip/Manifest
+++ b/app-arch/7-zip/Manifest
@@ -1 +1 @@
-DIST 7z2107-src.tar.xz 1230388 BLAKE2B 59e460cdf5a0d78669decee2578a1f7ad398de66e99eb556f9af574b2a7957d1e67b949e240af56c7cbdbaca8d35c6a9256f4153b71de170590e13c47f314510 SHA512 c964e3f1193adb72adc338416ab3226ee2655b9a953f0ec7dafc83adafdfa6b89e32752bd23d521086d96164fca1795064f888e0c37b13e7160fdb37e61d2018
+DIST 7z2201-src.tar.xz 1291560 BLAKE2B 1d88234fdf9d7074e3dc6c243c209f694897ac23f82d7f5d4767186114245c1aa9c4290c8a538dc3cdd1074385ae9142f1efd22771942ec63d8c00ed38b7082b SHA512 3f391b1bd65a0654eb5b31b50f1d400f0ec38ab191d88e15849a6e4d164b7bf2ce4a6d70ec8b6e27bde1b83bb2d45b65c03129499334669e05ee025784be455a
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/app-arch/7-zip/metadata.xml b/app-arch/7-zip/metadata.xml
index aab945b..d212dd9 100644
--- a/app-arch/7-zip/metadata.xml
+++ b/app-arch/7-zip/metadata.xml
@@ -7,5 +7,6 @@
</maintainer>
<use>
<flag name="asm">Use assembly implementations (currently only amd64, arm64, x86)</flag>
+ <flag name="rar">RAR archive support, requires accepting unRAR license</flag>
</use>
</pkgmetadata>
diff --git a/app-arch/precomp-cpp/metadata.xml b/app-arch/precomp-cpp/metadata.xml
index 004555a..50e3faf 100644
--- a/app-arch/precomp-cpp/metadata.xml
+++ b/app-arch/precomp-cpp/metadata.xml
@@ -5,4 +5,7 @@
<email>alex_y_xu@yahoo.ca</email>
<name>Alex Xu (Hello71)</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">schnaader/precomp-cpp</remote-id>
+ </upstream>
</pkgmetadata>