system/xar: Updated for version 1.8dev+498.

Signed-off-by: B. Watson <urchlay@slackware.uk>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
B. Watson 2023-11-18 20:25:17 -05:00 committed by Willy Sudiarto Raharjo
parent 00ee73279b
commit 83049cab39
No known key found for this signature in database
GPG Key ID: 3F617144D7238786
5 changed files with 63 additions and 15 deletions

View File

@ -0,0 +1,7 @@
xar-1.6.1-ext2.patch
xar-1.8-safe_dirname.patch
xar-1.8-arm-ppc.patch
xar-1.8-openssl-1.1.patch
xar-1.8.0.0.452-linux.patch
xar-1.8.0.0.487-non-darwin.patch
xar-1.8.0.0.487-variable-sized-object.patch

View File

@ -0,0 +1,12 @@
don't do availability stuff on non-Darwin
--- a/include/xar.h.in
+++ b/include/xar.h.in
@@ -52,6 +52,7 @@
#import <os/availability.h>
#else
#define API_DEPRECATED(...)
+#define API_AVAILABLE(...)
#endif
#pragma pack(4)

View File

@ -0,0 +1,18 @@
GCC doesn't like this:
filetree.c:744:9: error: variable-sized object may not be initialized
Since there's nothing changing at runtime at all, just make the compiler
see it's always going to be 1.
--- a/lib/filetree.c
+++ b/lib/filetree.c
@@ -740,7 +740,7 @@
size_t fspath1_size = 0, fspath2_size = 0;
size_t ns1_size = 0, ns2_size = 0;
const struct __xar_file_t * child1 = NULL, * child2 = NULL;
- const uint keys_to_ignore_count = 1;
+#define keys_to_ignore_count 1
char * keys_to_ignore[keys_to_ignore_count] = { "id" }; // ID is allowed ot mismatch
// If the two pointers match, call it the same.

View File

@ -13,13 +13,15 @@
# bother me.
# The original google code project is dead, and so is mackyle's github
# project. The Apple project might be deprecated, but it's still being
# updated.
# project. The Apple github project might be deprecated, but it's
# still being updated (as of August 2023).
# For some reason, gentoo and other distros want to give this the
# version number "1.8.0.0.452". Dunno where the extra zeroes come
# from. "xar --version" reports "1.8dev", the tarball's version
# number is the SVN revision, 452...
# For some reason, gentoo and other distros want to give this version
# numbers like "1.8.0.0.452". Dunno where the extra zeroes come from.
# "xar --version" reports "1.8dev", the tarball's version number
# is the SVN revision (452, 498, etc).
# 20231118 bkw: update for v498.
# 20230711 bkw: no script changes, just a note to myself: there's now
# a 496 tag, and it won't compile either.
@ -37,8 +39,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xar
VERSION=${VERSION:-1.8dev+452}
BUILD=${BUILD:-2}
VERSION=${VERSION:-1.8dev+498}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@ -89,12 +91,21 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
cd $PRGNAM
# patches came from gentoo:
# https://gitweb.gentoo.org/repo/gentoo.git/tree/app-arch/xar
for i in $CWD/patches/*.patch; do
patch -p1 < $i
# Patches came from liguros:
# https://gitlab.com/liguros/liguros-repo/-/tree/stable/app-arch/xar
for i in $( cat $CWD/patches/series ); do
patch -p1 < $CWD/patches/$i
done
# This bit comes from liguros's xar-498.ebuild.
sed -i 's/__APPLE__/__NO_APPLE__/' lib/hash.c lib/archive.h
cp lib/*.h include
# Make #include <xar/xar.h> include the one in the build dir, not
# any system-wide one in /usr/include.
mkdir include/xar
ln -sf ../xar.h include/xar/xar.h
# -I doesn't affect #include "blah.h".
sed -i 's,"\(\(util\|filetree\)\.h\)",<\1>,' src/xar.c

View File

@ -1,8 +1,8 @@
PRGNAM="xar"
VERSION="1.8dev+452"
VERSION="1.8dev+498"
HOMEPAGE="https://opensource.apple.com/source/xar/"
DOWNLOAD="https://github.com/apple-oss-distributions/xar/archive/xar-452/xar-xar-452.tar.gz"
MD5SUM="2dd42db34c7a7050b5e8c58d81d791cf"
DOWNLOAD="https://github.com/apple-oss-distributions/xar/archive/xar-498/xar-xar-498.tar.gz"
MD5SUM="4a4bcc060d8e9a1678c39ee3b701c44b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""