commit:     9033c9230b8c6a3b6f21713229a128c91714be56
Author:     Martin Matouš <m <AT> matous <DOT> dev>
AuthorDate: Mon Aug 28 03:10:31 2023 +0000
Commit:     Martin Matouš <m <AT> matous <DOT> dev>
CommitDate: Mon Aug 28 03:10:31 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=9033c923

app-arch/7zip: new package, add 23.01

Signed-off-by: Martin Matouš <m <AT> matous.dev>

 app-arch/7zip/7zip-23.01.ebuild | 63 +++++++++++++++++++++++++++++++++++++++++
 app-arch/7zip/Manifest          |  1 +
 app-arch/7zip/metadata.xml      | 19 +++++++++++++
 3 files changed, 83 insertions(+)

diff --git a/app-arch/7zip/7zip-23.01.ebuild b/app-arch/7zip/7zip-23.01.ebuild
new file mode 100644
index 0000000000..191ccaaeee
--- /dev/null
+++ b/app-arch/7zip/7zip-23.01.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+NO_DOT_PV=$(ver_rs 1- '')
+DESCRIPTION="A free file archiver for extremely high compression"
+HOMEPAGE="https://www.7-zip.org/ https://sourceforge.net/projects/sevenzip/";
+SRC_URI="https://sourceforge.net/projects/sevenzip/files/7-Zip/${PV}/7z${NO_DOT_PV}-src.tar.xz/download
 -> ${PN}-${PV}.tar.xz"
+LICENSE="LGPL-2 BSD"
+
+IUSE="asm"
+SLOT="0"
+KEYWORDS="~amd64"
+
+S="${WORKDIR}/CPP/7zip/"
+RESTRICT="mirror"
+
+RDEPEND=""
+DEPEND="${RDEPEND}"
+BDEPEND="asm? ( dev-lang/jwasm )"
+
+pkg_setup() {
+       # instructions in DOC/readme.txt, Compiling 7-Zip for Unix/Linux
+       # TLDR; every combination of options (clang|gcc)+(asm/noasm)
+       # has a dedicated makefile & builddir
+       mfile="cmpl"
+       if tc-is-clang; then
+               mfile="${mfile}_clang"
+               bdir=c
+       elif tc-is-gcc; then
+               mfile="${mfile}_gcc"
+               bdir=g
+       else
+               die "Unsupported compiler: $(tc-getCC)"
+       fi
+       if use asm ; then
+               mfile="${mfile}_x64"
+               bdir="${bdir}_x64"
+       fi
+       export mfile="${mfile}.mak"
+       export bdir
+}
+
+src_prepare() {
+       default
+       sed -i -e 's/-Werror //g' ./7zip_gcc.mak || die "Error removing -Werror"
+       sed -i -e 's/$(LFLAGS_STRIP)//g' ./7zip_gcc.mak \
+               || die "Error removing hardcoded strip"
+}
+
+src_compile() {
+       pushd "./Bundles/Alone2" || die "Unable to switch directory"
+       # USE_JWASM=1 - if asm: use JWasm assembler instead of Asmc (not a 
gentoo package)
+       emake DISABLE_RAR=1 USE_JWASM=1 --file "../../${mfile}"
+       popd > /dev/null || die "Unable to switch directory"
+}
+
+src_install() {
+       dobin "./Bundles/Alone2/b/${bdir}/7zz"
+}

diff --git a/app-arch/7zip/Manifest b/app-arch/7zip/Manifest
new file mode 100644
index 0000000000..0f23ebee40
--- /dev/null
+++ b/app-arch/7zip/Manifest
@@ -0,0 +1 @@
+DIST 7zip-23.01.tar.xz 1378588 BLAKE2B 
348484b24b39db70e513fe50d79954ea0e2dd669f83e3601fa796c8f0ca4734132ca20fac8cda9b8ba550bad9146627fc0ae07056abb99028ef6d825b6a533bd
 SHA512 
e39f660c023aa65e55388be225b5591fe2a5c9138693f3c9107e2eb4ce97fafde118d3375e01ada99d29de9633f56221b5b3d640c982178884670cd84c8aa986

diff --git a/app-arch/7zip/metadata.xml b/app-arch/7zip/metadata.xml
new file mode 100644
index 0000000000..099821269c
--- /dev/null
+++ b/app-arch/7zip/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <use>
+               <flag name="asm">Use <pkg>dev-lang/jwasm</pkg> to include 
optimized code</flag>
+       </use>
+       <maintainer type="person">
+               <email>m...@matous.dev</email>
+               <name>Martin Matouš</name>
+       </maintainer>
+       <upstream>
+               <maintainer>
+                       <name>Igor Pavlov</name>
+               </maintainer>
+               <remote-id type="sourceforge">sevenzip</remote-id>
+               <changelog>https://www.7-zip.org/history.txt</changelog>
+               <bugs-to>https://sourceforge.net/p/sevenzip/bugs/</bugs-to>
+       </upstream>
+</pkgmetadata>

Reply via email to