https://wit.wiimm.de/
Set of command-line tools to work with Wii/GameCube ISO and WBFS files
Signed-off-by: Sebastian <sebastian@sebsite.pw>
---
Since v4: removed implied makedepends bash, gcc, and make
testing/wiimms-iso-tools/APKBUILD | 32 +++++++++++++
.../wiimms-iso-tools/wiimms-iso-tools.patch | 46 +++++++++++++++++++
2 files changed, 78 insertions(+)
create mode 100644 testing/wiimms-iso-tools/APKBUILD
create mode 100644 testing/wiimms-iso-tools/wiimms-iso-tools.patch
diff --git a/testing/wiimms-iso-tools/APKBUILD b/testing/wiimms-iso-tools/APKBUILD
new file mode 100644
index 00000000..cec42681
--- /dev/null
+++ b/testing/wiimms-iso-tools/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Sebastian Hudak <sebastian@sebsite.pw>
+# Maintainer: Sebastian Hudak <sebastian@sebsite.pw>
+pkgname=wiimms-iso-tools
+pkgver=3.04a
+pkgrel=0
+pkgdesc="Set of command-line tools to work with Wii/GameCube ISO and WBFS files"
+# releases aren't tagged; this commit matches version 3.04a
+_commit=e58ce7463bc8829c46bcba52e8232f550e49c17c
+url="https://wit.wiimm.de/"
+arch="x86 x86_64"
+license="GPL-2.0-or-later"
+makedepends="bash linux-headers ncurses-dev openssl-dev zlib-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$_commit.tar.gz::https://github.com/Wiimm/wiimms-iso-tools/archive/$_commit.tar.gz
+ $pkgname.patch"
+builddir="$srcdir/$pkgname-$_commit"
+options="!check" # No tests
+
+build() {
+ make -C project INSTALL_PATH="$pkgdir/usr" all doc
+}
+
+package() {
+ make -C project INSTALL_PATH="$pkgdir/usr" install
+ mkdir -p "$pkgdir"/usr/share/doc/wit/
+ install -m644 project/doc/*.txt "$pkgdir"/usr/share/doc/wit/
+}
+
+sha512sums="
+b750964dafd54a04b8c32849499e4af3a2c996aaa3c41e06766bdee1210bbe273aa4eaad0e75ff9142a93d36e3042f84e57a602ba6bd610e734f864f7504a842 wiimms-iso-tools-e58ce7463bc8829c46bcba52e8232f550e49c17c.tar.gz
+a501814ed144592bfb8ee42663d2e0cf33d3a157fce8544e3ac21ab87ea530ad3c79acc4bd7ee61a33d3f87f5c7943d0b7519455a7a029bf894ee752801c11d8 wiimms-iso-tools.patch
+"
diff --git a/testing/wiimms-iso-tools/wiimms-iso-tools.patch b/testing/wiimms-iso-tools/wiimms-iso-tools.patch
new file mode 100644
index 00000000..2551a292
--- /dev/null
+++ b/testing/wiimms-iso-tools/wiimms-iso-tools.patch
@@ -0,0 +1,46 @@
+Manually linking tinfo is unnecessary and results in a linker error.
+
+diff -Naur wiimms-iso-tools-e58ce7463bc8829c46bcba52e8232f550e49c17c/project/Makefile wiimms-iso-tools-e58ce7463bc8829c46bcba52e8232f550e49c17c-alpine/project/Makefile
+--- wiimms-iso-tools-e58ce7463bc8829c46bcba52e8232f550e49c17c/project/Makefile 2021-04-18 11:43:37.000000000 +0000
++++ wiimms-iso-tools-e58ce7463bc8829c46bcba52e8232f550e49c17c-alpine/project/Makefile 2021-12-11 23:47:51.596954056 +0000
+@@ -303,7 +303,6 @@
+ CFLAGS += -O3 -Isrc/libwbfs -Isrc -I$(UI) -I. -Iwork
+
+ ifeq ($(SYSTEM_LINUX),1)
+- LIBS += -ltinfo
+ CFLAGS += -Wno-format-truncation
+ endif
+
+wiimms-iso-tools assumes that the global variables stdin, stdout, and stderr
+are mutable. This is true in glibc, but false in musl. This patch removes code
+which attempts to mutate standard streams.
+
+diff -Naur wiimms-iso-tools-e58ce7463bc8829c46bcba52e8232f550e49c17c/project/dclib/dclib-color.c wiimms-iso-tools-e58ce7463bc8829c46bcba52e8232f550e49c17c-alpine/project/dclib/dclib-color.c
+--- wiimms-iso-tools-e58ce7463bc8829c46bcba52e8232f550e49c17c/project/dclib/dclib-color.c 2021-04-18 11:43:37.000000000 +0000
++++ wiimms-iso-tools-e58ce7463bc8829c46bcba52e8232f550e49c17c-alpine/project/dclib/dclib-color.c 2021-12-11 23:48:55.610289581 +0000
+@@ -4810,8 +4810,6 @@
+ {
+ DASSERT(ssf);
+
+- stdout = ssf->std_out;
+- stderr = ssf->std_err;
+ stdlog = ssf->std_log;
+ stdmsg = ssf->std_msg;
+ stdwrn = ssf->std_wrn;
+@@ -4839,7 +4837,7 @@
+ if (ssf)
+ SaveStdFiles(ssf);
+
+- stdout = stdwrn = stdmsg = f;
++ stdwrn = stdmsg = f;
+ colout = colwrn = colmsg = colset ? colset : GetFileColorSet(f);
+
+ // special handling for stdlog
+@@ -4851,7 +4849,6 @@
+
+ if (err_too)
+ {
+- stderr = stdout;
+ colerr = colout;
+ }
+ }
--
2.34.1