diff options
Diffstat (limited to 'user/wimlib')
-rw-r--r-- | user/wimlib/APKBUILD | 19 | ||||
-rw-r--r-- | user/wimlib/header.patch | 29 | ||||
-rw-r--r-- | user/wimlib/pc-fuse3.patch | 31 |
3 files changed, 75 insertions, 4 deletions
diff --git a/user/wimlib/APKBUILD b/user/wimlib/APKBUILD index 76e26f88e..a4e365ea6 100644 --- a/user/wimlib/APKBUILD +++ b/user/wimlib/APKBUILD @@ -1,16 +1,25 @@ # Contributor: CyberLeo <cyberleo@cyberleo.net> # Maintainer: CyberLeo <cyberleo@cyberleo.net> pkgname=wimlib -pkgver=1.13.4 +pkgver=1.14.4 pkgrel=0 pkgdesc="Windows Imaging (WIM) archive manipulation library and tools" url="https://wimlib.net/" arch="all" +# If the test suite crosses a clock-second boundary, the test will fail +# because the mtime of the src and dest will vary by 1s. The test suite +# then hangs waiting for the mount to umount, requiring manual operator +# intervention. The tests pass on ppc64, ppc, x86_64 for me when timed +# correctly, so for now we disable tests. +options="!check" license="(GPL-2.0 OR LGPL-2.1) AND CC0" depends="" -makedepends="libxml2-dev fuse-dev ntfs-3g ntfs-3g-dev" +makedepends="fuse3-dev ntfs-3g ntfs-3g-dev" subpackages="$pkgname-doc $pkgname-dev $pkgname-libs" -source="https://wimlib.net/downloads/wimlib-$pkgver.tar.gz" +source="https://wimlib.net/downloads/wimlib-$pkgver.tar.gz + header.patch + pc-fuse3.patch + " build() { ./configure \ @@ -26,4 +35,6 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="480fe6fa6c6e8f1bf9c3960f5e1671f3266535b18dc72e9d7c4c05c7fb833d9b00db5ae9fb49154da6e71e536cae8b562cbf81ab5a124e2a79326927e2cf7344 wimlib-1.13.4.tar.gz" +sha512sums="f3c25ee14fe849f452f004ce8137ef040410ea048555ae71180086f010858b6ed593c8881b805bac65f9ee878bf11661a7f17677c6c24e2c77149c35ee0cd853 wimlib-1.14.4.tar.gz +25a410614b4d4a16f16149c09bb1107a5678d49b729ecb55fe5641727556f6eb8a0e3473331ae738e3747652674d78c32be0d6da57c2aa414bd9fc636c27997e header.patch +e58429f3256e85e39558920be295c93645ec0584cf71282e01102c62b05b51fab1c3c1b62a8edb7be8bfc2427d2464400154ca05ad07e02548cad140f781aa7f pc-fuse3.patch" diff --git a/user/wimlib/header.patch b/user/wimlib/header.patch new file mode 100644 index 000000000..71255d446 --- /dev/null +++ b/user/wimlib/header.patch @@ -0,0 +1,29 @@ +This patch should be removed once the following musl commit lands: + +https://git.musl-libc.org/cgit/musl/commit\ +/include/stdio.h?id=05ce67fea99ca09cd4b6625cff7aec9cc222dd5a + +These macros are also exposed via <linux/fs.h>. + +diff -ur a/src/mount_image.c b/src/mount_image.c +--- a/src/mount_image.c 2024-12-11 21:13:37.806412788 -0600 ++++ b/src/mount_image.c 2024-12-11 21:18:32.528640110 -0600 +@@ -53,6 +53,18 @@ + #include <unistd.h> + #include <utime.h> + ++#if defined(_GNU_SOURCE) ++#ifndef RENAME_NOREPLACE ++#define RENAME_NOREPLACE (1 << 0) ++#endif ++#ifndef RENAME_EXCHANGE ++#define RENAME_EXCHANGE (1 << 1) ++#endif ++#ifndef RENAME_WHITEOUT ++#define RENAME_WHITEOUT (1 << 2) ++#endif ++#endif ++ + #include "wimlib/blob_table.h" + #include "wimlib/dentry.h" + #include "wimlib/encoding.h" diff --git a/user/wimlib/pc-fuse3.patch b/user/wimlib/pc-fuse3.patch new file mode 100644 index 000000000..9c8743b31 --- /dev/null +++ b/user/wimlib/pc-fuse3.patch @@ -0,0 +1,31 @@ +The pkgconfig file for fuse3 is called fuse3, not fuse. + +Otherwise, we get: + +>>> WARNING: wimlib-dev*: Could not find any provider for pc:fuse + +We can't patch the .ac file because it hardcodes the git version and decides +that this is wimlib 1.0-BETA6 (or whatever). + +#--- wimlib-1.14.4/configure.ac.old 2024-02-09 17:36:25.000000000 -0600 +#+++ wimlib-1.14.4/configure.ac 2024-12-11 21:27:27.638385598 -0600 +#@@ -156,7 +156,7 @@ +# disable this feature. If your operating system packages +# development files separately, the package you need to install +# may be called libfuse3-dev, fuse-devel, or similar.])]) +#- PKGCONFIG_PRIVATE_REQUIRES="$PKGCONFIG_PRIVATE_REQUIRES fuse" +#+ PKGCONFIG_PRIVATE_REQUIRES="$PKGCONFIG_PRIVATE_REQUIRES fuse3" +# AC_DEFINE([WITH_FUSE], [1], [Define to 1 if using FUSE support]) +# +# AC_CHECK_LIB([rt], [mq_open], [], +--- wimlib-1.14.4/configure.old 2024-02-24 12:41:27.000000000 -0600 ++++ wimlib-1.14.4/configure 2024-12-11 21:27:48.176175338 -0600 +@@ -16032,7 +16032,7 @@ + printf "%s\n" "yes" >&6; } + + fi +- PKGCONFIG_PRIVATE_REQUIRES="$PKGCONFIG_PRIVATE_REQUIRES fuse" ++ PKGCONFIG_PRIVATE_REQUIRES="$PKGCONFIG_PRIVATE_REQUIRES fuse3" + + printf "%s\n" "#define WITH_FUSE 1" >>confdefs.h + |