summaryrefslogtreecommitdiff
path: root/app-arch/unar
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-01-12 01:06:33 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-01-12 01:06:33 +0000
commit5c273534e10d0e86a5941f9ba9c4ed87b90f0dd1 (patch)
tree6fc2a78d8d62da19b832c6506988b3c5bcccf6f4 /app-arch/unar
parent427aed27427f356a75db3288d7b96ce7e2a044b2 (diff)
gentoo auto-resync : 12:01:2024 - 01:06:32
Diffstat (limited to 'app-arch/unar')
-rw-r--r--app-arch/unar/Manifest3
-rw-r--r--app-arch/unar/files/unar-1.10.8-Wint-conversion.patch40
-rw-r--r--app-arch/unar/unar-1.10.8.ebuild55
3 files changed, 98 insertions, 0 deletions
diff --git a/app-arch/unar/Manifest b/app-arch/unar/Manifest
index adc17d18c32b..6423003793ce 100644
--- a/app-arch/unar/Manifest
+++ b/app-arch/unar/Manifest
@@ -1,4 +1,7 @@
+AUX unar-1.10.8-Wint-conversion.patch 1835 BLAKE2B 0a69bf181cb7a86d392d54c9de6b3aaa71028ea8b92435d08784db930e8d7ffc3067d37d7745c9d02ab5e5c4e1a545ae2fbe649fac187ef7dac732060032e06a SHA512 78ca977f198cf0846f01668091b4ad1b3371188e0b2172875302a5bb6e6fd9c0c7237e58b89c696628772bd7f1a6c93c072dbd66d10cb8ce7de34ee7995d1812
DIST XADMaster-1.10.7.tar.gz 2064770 BLAKE2B f6119dfb46f3d617fafb5847f41d6c0f3e5e87c8cd0763cd8e5986fae1d5b1c6e6761e9e7e4fa84125003979151b2b34d35ff47dc9be3271107cf53f1be22644 SHA512 3447b6d8f3f4fa5eea93c6628a1633017da6ff09c580d5ce4fd422027b3b79acbf38d6e41a059806d1e60eb25a9d66889938b32599168dc2c0ca648e1c1976b1
+DIST XADMaster-1.10.8.tar.gz 2072715 BLAKE2B ffa674a007865a7bbe3b67a97ad41ac4c4d4fcaf90a39d410a1f7668ac5dd526d0af7b523aca951a3dcc8ee61eb1b7f17db88604464504b2273471f3c31f846a SHA512 34c6c47806877763e022720ac3f6097c9c369481f2bb4a1c1c22e65e2c6250835c73bc3f73e71764810acec8950b05ae9f2dc29348ff192ef22968776fc7efe4
DIST universal-detector-1.1.tar.gz 196274 BLAKE2B d84dc1f850031213d88c288341edcbb588197f23ae0d10632ed129e73e4cc2b7670c8c862bba2165fcc7421c265e4dc3e791ea188e3d2b647bd1ab9b428bb866 SHA512 e514670b3d37b2472ed3e9cb0fdc3298a8479772264b7573411f104be554222bec2e01f73e1f35db95620fe785bee2dcf9ddc9c2b1f4ff6b522fa64d14d020f5
EBUILD unar-1.10.7.ebuild 1383 BLAKE2B 78fa169605a3c793396bbbb9066f8d33bd4a9e1f982abf77ee7d47f760f7a3ea468018b0ccef0c1f50d204049c2f5bfad9621418ff2cbf19999cb6dd55116182 SHA512 8a133b1416dd1c6b450417d28c60495756b659dddaa9f03458c03a8bc64fe5da800b3bc6d2fc4d5cc16ca01675fd99032945ea5fb6bce156cbe39eb9119f276c
+EBUILD unar-1.10.8.ebuild 1391 BLAKE2B 0cbab12ec41bd8da8e3269b313678a4e7c5722c6ba747eb23285c95dcb80b6ef2fa068ea301c683549fa5779c66ba75061f7b22a903c97a264e8dca9df944740 SHA512 1b9bb651803039617d758faf1dfe9421e50f6b43c2aecf112964de1ac610f2356c805f7d9a1c86f6b5e01a72f7b37455284cdc9dfeaefec2ddfd706442de017f
MISC metadata.xml 326 BLAKE2B 80f4ed31e741075e82317cfcea7feff354cad61feedef27b80d6a121f9ff2fd2c2c0fe805d2b5e48082baf6d47f0046578f94fa330a255a9bb597890ab0a8c16 SHA512 6ec4c0148942354f0d49a399d90d0039b9c0c3c2981738c30449440f3d42ae114d545b251eb49ae64f069a75fb8712dd3c513c765385f717ffdf76a30dad3ebb
diff --git a/app-arch/unar/files/unar-1.10.8-Wint-conversion.patch b/app-arch/unar/files/unar-1.10.8-Wint-conversion.patch
new file mode 100644
index 000000000000..73053c97b86a
--- /dev/null
+++ b/app-arch/unar/files/unar-1.10.8-Wint-conversion.patch
@@ -0,0 +1,40 @@
+Without this change, GCC 14 will fail compilation with an error:
+
+XADRAR5Parser.m: In function ‘+[XADRAR5Parser recognizeFileWithHandle:firstBytes:name:]’: XADRAR5Parser.m:79:5: warning: ‘XADRAR5Parser’ may not respond to ‘+signatureLocationInData:’
+ 79 | off_t signatureLocation = [self signatureLocationInData:data];
+ | ^~~~~
+XADRAR5Parser.m:79:5: warning: (messages without a matching method signature will be assumed to return ‘id’ and accept ‘...’ as arguments)
+XADRAR5Parser.m:79:31: error: initialization of ‘off_t’ {aka ‘long int’} from ‘id’ makes integer from pointer without a cast
+ 79 | off_t signatureLocation = [self signatureLocationInData:data];
+ | ^
+
+Submitted upstream: <https://github.com/MacPaw/XADMaster/pull/161>
+
+--- a/XADRAR5Parser.m
++++ b/XADRAR5Parser.m
+@@ -74,12 +74,6 @@ static inline BOOL IsZeroHeaderBlock(RAR5HeaderBlock block) { return IsZeroBlock
+ return 8;
+ }
+
+-+(BOOL)recognizeFileWithHandle:(CSHandle *)handle firstBytes:(NSData *)data name:(NSString *)name
+-{
+- off_t signatureLocation = [self signatureLocationInData:data];
+- return signatureLocation != RAR5SignatureNotFound;
+-}
+-
+ + (off_t)signatureLocationInData:(NSData *)data {
+ const uint8_t *bytes=[data bytes];
+ int length=[data length];
+@@ -98,6 +92,12 @@ static inline BOOL IsZeroHeaderBlock(RAR5HeaderBlock block) { return IsZeroBlock
+ return RAR5SignatureNotFound;
+ }
+
+++(BOOL)recognizeFileWithHandle:(CSHandle *)handle firstBytes:(NSData *)data name:(NSString *)name
++{
++ off_t signatureLocation = [self signatureLocationInData:data];
++ return signatureLocation != RAR5SignatureNotFound;
++}
++
+ +(NSArray *)volumesForHandle:(CSHandle *)handle firstBytes:(NSData *)data name:(NSString *)name
+ {
+ // Check if multipart
diff --git a/app-arch/unar/unar-1.10.8.ebuild b/app-arch/unar/unar-1.10.8.ebuild
new file mode 100644
index 000000000000..8192fdaf82b2
--- /dev/null
+++ b/app-arch/unar/unar-1.10.8.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 toolchain-funcs
+
+DESCRIPTION="Unpacker for various archiving formats, e.g. rar v3"
+HOMEPAGE="https://unarchiver.c3.cx/"
+SRC_URI="
+ https://github.com/MacPaw/XADMaster/archive/v${PV}/XADMaster-${PV}.tar.gz
+ https://github.com/MacPaw/universal-detector/archive/1.1/universal-detector-1.1.tar.gz"
+S="${WORKDIR}/XADMaster-${PV}"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ app-arch/bzip2:=
+ dev-libs/icu:=
+ gnustep-base/gnustep-base:=
+ media-sound/wavpack
+ sys-libs/zlib"
+DEPEND="
+ ${RDEPEND}
+ gnustep-base/gnustep-make[native-exceptions]"
+
+PATCHES=( "${FILESDIR}"/${P}-Wint-conversion.patch )
+
+src_prepare() {
+ default
+ # avoid jobserver warning "make[1]: warning: jobserver unavailable: using -j1"
+ sed -i -e 's:make:$(MAKE):g' Makefile.linux || die
+ mv "${WORKDIR}/universal-detector-1.1" "${WORKDIR}/UniversalDetector" || die
+}
+
+src_compile() {
+ emake -f Makefile.linux \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ OBJCC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ OBJCFLAGS="${CFLAGS}" \
+ LD="$(tc-getCXX)" \
+ LDFLAGS="-Wl,--whole-archive -fexceptions -fgnu-runtime ${LDFLAGS}"
+}
+
+src_install() {
+ dobin {ls,un}ar
+ doman Extra/{ls,un}ar.1
+ dobashcomp Extra/{ls,un}ar.bash_completion
+}