commit:     cc91eb0f86043ae92c10cce55b326244bed3f061
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 18 19:40:39 2024 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Sun Feb 18 19:41:39 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc91eb0f

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 <AT> gentoo.org>

 app-arch/xar/Manifest                              |  1 +
 .../xar/files/xar-1.8.0.0.498-impl-decls.patch     | 24 ++++++
 app-arch/xar/xar-1.8.0.0.498.ebuild                | 89 ++++++++++++++++++++++
 3 files changed, 114 insertions(+)

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
+}

Reply via email to