Skip to content

Commit

Permalink
app-arch/p7zip: 17.05-r1 revbump
Browse files Browse the repository at this point in the history
Upstream pushed out 17.05 with 17.04 in version, they re-released
with it corrected, this grabs the re-release.

Also removed wxgtk reference since we don't build GUI anymore.

Closes: https://bugs.gentoo.org/902117
Signed-off-by: Joe Kappus <[email protected]>
Signed-off-by: Matthew Thode <[email protected]>
  • Loading branch information
joecool1029 authored and prometheanfire committed Apr 14, 2023
1 parent bfe1db6 commit 26730a4
Show file tree
Hide file tree
Showing 2 changed files with 111 additions and 1 deletion.
2 changes: 1 addition & 1 deletion app-arch/p7zip/Manifest
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
DIST p7zip-17.05.tar.gz 6722048 BLAKE2B 3aa653b7875bb1b5ce96af7f7b8f4097860a9e5f0e172803fde6917ae4b7ef9c9e06d1daa31b7e33bb4ff91302972e8ece10f846bfa152fa6c783b234ac77ed3 SHA512 973fd906eaf376ca7d1d0738bb9aa137dcae3a6b17f974d3afc6bbb4efab4c7afa78e3dc9fbdf7b6d37630c9986ddaca7afc209ba18da1ed27944ee88a321a55
DIST p7zip-17.05.tar.gz 6722154 BLAKE2B 0bcba638d3acaf2aa270e02693ad4295dfcc6b388037bdb446e25f3f4e1cb34f1b05bbc9a845364ca770625c32b2d7f55f63f504ad8e0863fff4bf940ae1fddd SHA512 97a7cfd15287998eb049c320548477be496c4ddf6b45c833c42adca4ab88719b07a442ae2e71cf2dc3b30a0777a3acab0a1a30f01fd85bacffa3fa9bd22c3f7d
DIST p7zip_16.02_src_all.tar.bz2 4239909 BLAKE2B 075356fba5284cbb124e30c36364a910ae5a7ac6bee8a8fb682c5a7ce2f1870ef83d3160c84f8dabad1d616c13d642cba1f19fb9384160d21590cf678dd8f1a6 SHA512 d2c4d53817f96bb4c7683f42045198d4cd509cfc9c3e2cb85c8d9dc4ab6dfa7496449edeac4e300ecf986a9cbbc90bd8f8feef8156895d94617c04e507add55f
110 changes: 110 additions & 0 deletions app-arch/p7zip/p7zip-17.05-r1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit multilib toolchain-funcs wrapper xdg

DESCRIPTION="Port of 7-Zip archiver for Unix"
HOMEPAGE="https://github.com/p7zip-project/p7zip"
SRC_URI="https://github.com/p7zip-project/p7zip/archive/v${PV}.tar.gz -> ${P}.tar.gz"
#S="${WORKDIR}/${PN}-${PV}"

LICENSE="LGPL-2.1 rar? ( unRAR )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris"
IUSE="abi_x86_x32 doc +pch rar static"

DEPEND="${RDEPEND}"
BDEPEND="
abi_x86_x32? ( >=dev-lang/yasm-1.2.0-r1 )
amd64? ( dev-lang/yasm )
x86? ( dev-lang/nasm )"

src_prepare() {
default

if ! use pch; then
sed "s:PRE_COMPILED_HEADER=StdAfx.h.gch:PRE_COMPILED_HEADER=:g" -i makefile.* || die
fi

sed \
-e 's|-m32 ||g' \
-e 's|-m64 ||g' \
-e 's|-pipe||g' \
-e "/[ALL|OPT]FLAGS/s|-s||;/OPTIMIZE/s|-s||" \
-e "/CFLAGS=/s|=|+=|" \
-e "/CXXFLAGS=/s|=|+=|" \
-i makefile* || die

# remove non-free RAR codec
if use rar; then
ewarn "Enabling nonfree RAR decompressor"
else
sed \
-e '/Rar/d' \
-e '/RAR/d' \
-i makefile* CPP/7zip/Bundles/Format7zFree/makefile || die
rm -r CPP/7zip/Compress/Rar || die
fi

if use abi_x86_x32; then
sed -i -e "/^ASM=/s:amd64:x32:" makefile* || die
cp -f makefile.linux_amd64_asm makefile.machine || die
elif use amd64; then
cp -f makefile.linux_amd64_asm makefile.machine || die
elif use x86; then
cp -f makefile.linux_x86_asm_gcc_4.X makefile.machine || die
elif [[ ${CHOST} == *-darwin* ]] ; then
# Mac OS X needs this special makefile, because it has a non-GNU
# linker, it doesn't matter so much for bitwidth, for it doesn't
# do anything with it
cp -f makefile.macosx_llvm_64bits makefile.machine || die
# bundles have extension .bundle but don't die because USE=-rar
# removes the Rar directory
sed -i -e '/strcpy(name/s/\.so/.bundle/' \
CPP/Windows/DLL.cpp || die
sed -i -e '/^PROG=/s/\.so/.bundle/' \
CPP/7zip/Bundles/Format7zFree/makefile.list \
$(use rar && echo CPP/7zip/Compress/Rar/makefile.list) || die
fi

if use static; then
sed -i -e '/^LOCAL_LIBS=/s/LOCAL_LIBS=/&-static /' makefile.machine || die
fi
}

src_compile() {
emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" all3
}

src_test() {
emake test test_7z test_7zr
}

src_install() {
# these wrappers cannot be symlinks, p7zip should be called with full path
make_wrapper 7zr /usr/$(get_libdir)/p7zip/7zr
make_wrapper 7za /usr/$(get_libdir)/p7zip/7za
make_wrapper 7z /usr/$(get_libdir)/p7zip/7z

dobin contrib/gzip-like_CLI_wrapper_for_7z/p7zip
doman contrib/gzip-like_CLI_wrapper_for_7z/man1/p7zip.1

exeinto /usr/$(get_libdir)/p7zip
doexe bin/7z bin/7za bin/7zr bin/7zCon.sfx
doexe bin/*$(get_modname)
if use rar; then
exeinto /usr/$(get_libdir)/p7zip/Codecs
doexe bin/Codecs/*$(get_modname)
fi

doman man1/7z.1 man1/7za.1 man1/7zr.1

dodoc ChangeLog README TODO
if use doc; then
dodoc DOC/*.txt
docinto html
dodoc -r DOC/MANUAL/.
fi
}

0 comments on commit 26730a4

Please sign in to comment.