summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Groffen <grobian@gentoo.org>2024-02-18 20:40:39 +0100
committerFabian Groffen <grobian@gentoo.org>2024-02-18 20:41:39 +0100
commitcc91eb0f86043ae92c10cce55b326244bed3f061 (patch)
treeda64a8db1b1cdcad98a22294a16c13cd6247e7ec /app-arch/xar
parentnet-dns/pdns-recursor: drop 4.9.2 (diff)
downloadgentoo-cc91eb0f86043ae92c10cce55b326244bed3f061.tar.gz
gentoo-cc91eb0f86043ae92c10cce55b326244bed3f061.tar.bz2
gentoo-cc91eb0f86043ae92c10cce55b326244bed3f061.zip
app-arch/xar-1.8.0.0.498: version bump
Version bump, fix implicit declarations and format warnings. Closes: https://bugs.gentoo.org/923106 Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Diffstat (limited to 'app-arch/xar')
-rw-r--r--app-arch/xar/Manifest1
-rw-r--r--app-arch/xar/files/xar-1.8.0.0.498-impl-decls.patch24
-rw-r--r--app-arch/xar/xar-1.8.0.0.498.ebuild89
3 files changed, 114 insertions, 0 deletions
diff --git a/app-arch/xar/Manifest b/app-arch/xar/Manifest
index e925d356fafd..5fb4e06ff4ff 100644
--- a/app-arch/xar/Manifest
+++ b/app-arch/xar/Manifest
@@ -1 +1,2 @@
DIST xar-487.100.1.tar.gz 224108 BLAKE2B 2fa5c44b46a9e37e49be03d05d6d06ab706b5205d857e6d6f24954160dbf5fc91fbec848053cb2d0a11505e5f7c37f8331ac126d65eb91b08e302a28db12acc0 SHA512 a45d1327ac5c6dc6f1cdb359e7e487fd91cea82a446157b65da34f0481cd58bbe03b0e005643087c802962e89316a1c816e2c6b625f1259b10a52bbf902f79e6
+DIST xar-498.tar.gz 224373 BLAKE2B 56dfae475f23384b57492d6a5e141a4c93f7b0238de04be8bbcde63fe7ca0a9beb137b5b9052b165717cd2afae4ddfe5005e65ba16d1821c42e036a9ef9d0e04 SHA512 ecd6186e42ff3005296d94ce01d7fbea04814f26afe1df0449ffa522009ec85beafc71e25931b215910c159a2440565e7dd31a6a7c50389a50a1368bd5ff5f75
diff --git a/app-arch/xar/files/xar-1.8.0.0.498-impl-decls.patch b/app-arch/xar/files/xar-1.8.0.0.498-impl-decls.patch
new file mode 100644
index 000000000000..8c37a6c9cfbc
--- /dev/null
+++ b/app-arch/xar/files/xar-1.8.0.0.498-impl-decls.patch
@@ -0,0 +1,24 @@
+include stdlib.h for free and strtol
+silence format warning
+
+--- a/lib/ext2.c
++++ b/lib/ext2.c
+@@ -41,6 +41,7 @@
+ #include "asprintf.h"
+ #endif
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <unistd.h>
+ #include "xar.h"
+ #include "arcmod.h"
+--- a/lib/ea.c
++++ a/lib/ea.c
+@@ -67,7 +67,7 @@
+ xar_prop_setvalue(XAR_EA(ret)->prop, NULL);
+ XAR_PROP(XAR_EA(ret)->prop)->attrs = xar_attr_new();
+ XAR_ATTR(XAR_PROP(XAR_EA(ret)->prop)->attrs)->key = strdup("id");
+- asprintf((char **)&XAR_ATTR(XAR_PROP(XAR_EA(ret)->prop)->attrs)->value, "%lld", XAR_FILE(f)->nexteaid++);
++ asprintf((char **)&XAR_ATTR(XAR_PROP(XAR_EA(ret)->prop)->attrs)->value, PRId64, XAR_FILE(f)->nexteaid++);
+
+ xar_prop_pset(f, XAR_EA(ret)->prop, "name", name);
+
diff --git a/app-arch/xar/xar-1.8.0.0.498.ebuild b/app-arch/xar/xar-1.8.0.0.498.ebuild
new file mode 100644
index 000000000000..a4dc6bb80c82
--- /dev/null
+++ b/app-arch/xar/xar-1.8.0.0.498.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools flag-o-matic toolchain-funcs multilib-minimal
+
+APPLE_PV=$(ver_cut 5-) # 487: macOS 13.3 and up
+DESCRIPTION="An easily extensible archive format"
+HOMEPAGE="https://github.com/apple-oss-distributions/xar"
+SRC_URI="https://github.com/apple-oss-distributions/xar/archive/xar-${APPLE_PV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+DEPEND="
+ elibc_musl? ( sys-libs/fts-standalone )
+ kernel_linux? ( virtual/acl )
+ dev-libs/openssl:0=[${MULTILIB_USEDEP}]
+ app-arch/bzip2[${MULTILIB_USEDEP}]
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.6.1-ext2.patch
+ "${FILESDIR}"/${PN}-1.8-safe_dirname.patch
+ "${FILESDIR}"/${PN}-1.8-arm-ppc.patch
+ "${FILESDIR}"/${PN}-1.8-openssl-1.1.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.452-linux.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.487-non-darwin.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.487-variable-sized-object.patch
+ "${FILESDIR}"/${PN}-1.8.0.0.498-impl-decls.patch
+)
+
+S=${WORKDIR}/${PN}-${PN}-${APPLE_PV}/${PN}
+
+src_prepare() {
+ default
+
+ # make lib headers available (without installing first?)
+ cd "${S}"/include || die
+ mv ../lib/*.h . || die
+
+ # strip RPATH pointing to ED
+ cd "${S}"/src || die
+ sed -i -e 's/@RPATH@//' Makefile.inc.in || die
+
+ # avoid GNU make (bug?) behaviour of removing xar.o as intermediate
+ # file, this doesn't happen outside portage, but it does from the
+ # ebuild env, causing the install phase to re-compile xar.o and link
+ # the executable
+ echo ".PRECIOUS: @objroot@src/%.o" >> Makefile.inc.in || die
+
+ # drop Darwin specific reliance on CommonCrypto Framework, for it
+ # depends on what version of Darwin we're on, and it is much simpler
+ # to just use openessl instead, which we maintain and control
+ cd "${S}" || die
+ sed -i -e 's/__APPLE__/__NO_APPLE__/' \
+ include/archive.h \
+ lib/hash.c \
+ || die
+
+ # fix branding somewhat
+ sed -i -e "/XAR_VERSION/s|%s|%s (Gentoo ${PVR})|" src/xar.c || die
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ append-libs $($(tc-getPKG_CONFIG) --libs openssl)
+ use elibc_musl && append-libs $($(tc-getPKG_CONFIG) --libs fts-standalone)
+ append-cflags -Wno-unused-result # allow to see real problems
+ ECONF_SOURCE=${S} \
+ econf --disable-static
+ # botched check, fix it up
+ if use kernel_SunOS ; then
+ sed -i -e '/HAVE_SYS_ACL_H/s:^\(.*\)$:/* \1 */:' include/config.h || die
+ fi
+ # allow xar/xar.h to be found
+ ( cd include && ln -s . xar )
+}
+
+multilib_src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}