summaryrefslogtreecommitdiff
path: root/games-util
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-03-18 06:49:50 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-03-18 06:49:50 +0000
commit529bbf6d047ac6b80c0d9310ec0f666c145ec5fe (patch)
treeae415fb3fee6b16f7371a5d3597dcf98cca19b62 /games-util
parentec33f4bcbd3944dc39c56a98cde12232684932cf (diff)
gentoo auto-resync : 18:03:2024 - 06:49:50
Diffstat (limited to 'games-util')
-rw-r--r--games-util/Manifest.gzbin8222 -> 8225 bytes
-rw-r--r--games-util/wit/Manifest7
-rw-r--r--games-util/wit/files/wit-3.05a-makefile.patch266
-rw-r--r--games-util/wit/files/wit-3.05a-no-exec-stack.patch9
-rw-r--r--games-util/wit/wit-3.02a-r1.ebuild56
-rw-r--r--games-util/wit/wit-3.02a.ebuild11
-rw-r--r--games-util/wit/wit-3.05a.ebuild56
7 files changed, 402 insertions, 3 deletions
diff --git a/games-util/Manifest.gz b/games-util/Manifest.gz
index 2bd64351f7d1..f57b1d41a1e0 100644
--- a/games-util/Manifest.gz
+++ b/games-util/Manifest.gz
Binary files differ
diff --git a/games-util/wit/Manifest b/games-util/wit/Manifest
index c2375660e862..377e08631f09 100644
--- a/games-util/wit/Manifest
+++ b/games-util/wit/Manifest
@@ -1,6 +1,11 @@
AUX wit-3.02a-fno-common.patch 398 BLAKE2B b76eb5f5c5dcfff35006bcb5d9d2b56192600c5c443e4699e0ddbad3568ae6ac778638486bdec4cb5304cb79a279b5fd4c3b438a369210739267741082aa1e01 SHA512 e1ac2cee2a39f4f462d8399f79965daf7c08e5a24fb1821add9d1f5e8e66728df5289d16df4abc66ae8b26285b1fd1c78f13f3b3f3f86c24f12a49b58de5d158
AUX wit-3.02a-makefile.patch 7803 BLAKE2B 1912c974b8e7f6a1e06d0cc14b56470db3422433888012b7bf212f32a3cc941b882cef55c5a85e8186d60c4bde705f5cbf023eb5be2264e31f56528fc99ffa4f SHA512 66f3c09416fe0a86648aef4cf76955d525c2c15bb0eea68e1d381eb578113a77a7446ca9e3c804e1734ca28e25e816e06995d1d2628142359ac9a4be79bff39e
AUX wit-3.02a-no-exec-stack.patch 232 BLAKE2B 2af2bfe707d22b95f40f2f0e5675fef3e5a153615c327c1638e55651f1fa4cf61b2b868ff86ac899c64f1526f1093e044f32ca853ad0c11c5f505924ee8f1d4d SHA512 958f1fbeda1f29ad704d2eeb3c2a1281f71957fbbb07a7258e6e69af1552e13d135ed61864ef92b9a1334b91990f79366b5b235a8865c424414e46a9305762b0
+AUX wit-3.05a-makefile.patch 7787 BLAKE2B ddd5fb27d04e9fa7f4f1faeaad5063e3652b8701e39f7bae04582532e34b2f9f8fac541f32deb995378697e074f8d5c10a3082ea4056e983a066f04cf0017a49 SHA512 3e09a654c8bf3a15825f407c19814b2cb08bc0b4c7836c15df6af513a0ad96e58d2dfebdea2bd54be2f74a6aa5054d8ca9f69302496bb517f359700de64ef53d
+AUX wit-3.05a-no-exec-stack.patch 232 BLAKE2B 2af2bfe707d22b95f40f2f0e5675fef3e5a153615c327c1638e55651f1fa4cf61b2b868ff86ac899c64f1526f1093e044f32ca853ad0c11c5f505924ee8f1d4d SHA512 958f1fbeda1f29ad704d2eeb3c2a1281f71957fbbb07a7258e6e69af1552e13d135ed61864ef92b9a1334b91990f79366b5b235a8865c424414e46a9305762b0
DIST wiimms-iso-tools.source-3.02a.tar.bz2 1645416 BLAKE2B 3ce99b779069d7b845bcf799ee481d63764ba36576adf4c28759e8eb9db9239c158457f84c8e34169b493de94d3c5e3324dc3c2cbd9a9a171ed1b57d2863eb78 SHA512 9bc8c8e078b2932d74a785732ec786ed5b6af86fa951f606a23052c31445e0b1637065858148fb050137f6252ae4ef77676877263513ef3bda33edb42bfed632
-EBUILD wit-3.02a.ebuild 944 BLAKE2B 7db45b804b2e7a3b02598fa11258c338ad6d2e65275a0ba6aa928b187e1b744f4f949be582705c938e8119c47fcb04be77fba71af2cc4ff70984ff294218dce0 SHA512 95097ba2502879e321e92e20db812ac4996b2b8c25cbe97aa723d51335529286dcd1fa418f20cf0e1d2e4e7f3adf9a7fead691e77beeace5bb71e9183fbe4f37
+DIST wiimms-iso-tools.source-3.05a.txz 1279228 BLAKE2B af8c0fb938ad9a7f1aa784861bd155c0e2a43e5e94010130dc0e152a0cec0b67745734ab70d54307c7e6135a80bcdfe0f933878e5211c18bd13207576afa5f00 SHA512 7f964a76522e87149a44ff4c0571dafe5702d1d6fa0abb0ae08a9665cb5a3aa489ae608d098835e3da77541b58943747aba997db15f5756eb1e2909c27b12fe2
+EBUILD wit-3.02a-r1.ebuild 1187 BLAKE2B d8439007fcbb4b53a9708c533fb886a158025da3e3170ad37e855d90ee15ba0d0cd93195e4b67db96e50c5294b2f642f26bce44101b418d9c621fac1f5975b96 SHA512 9c7e206dc88c588c1e4476cac60e0f772f54ee1149c3574f5b62627c3bca1d8e2d8db1a006a649fc06453398bdfab83e0d7ec4d43c863cd5f43c096d103e7232
+EBUILD wit-3.02a.ebuild 1185 BLAKE2B 1d5cafeb422093c5aaaf15edf7b17cb2ea6ee21b0a1f61cd121eb3197063fb764dcc23d298191b1399a029fc6b4e2d1f143af6a3052bfe1307ad8d9c6b3709c4 SHA512 0e3cbe7b8430ca6dd34eee0dc6872b1ae97e8a564619d546d525fd09de8125a2fdca7a220c0a812689826a49fa428f887fed76544e5909fae010fa39b92dcd0e
+EBUILD wit-3.05a.ebuild 1166 BLAKE2B 2ef7185b8d64e8f13857ffdbaedbcfc7ef3c542145f5f2f32ee1e00c690f84b1ca656b3ac4dcc87696dd64b9ded036f7f8637db7f41964c6839f5ecaa3e8239e SHA512 0bc915180913e9cbb509204d62a50c1127c51655ebb315d6f808c185d67bed9a8653e3d46a599410ae43009927327b4dbd1e52fbd907e5bfae901f678eedcc7e
MISC metadata.xml 246 BLAKE2B 0a0020c52d3b9070556f28437c119c11bcf572ec592a6c69590d490459b4bb7d619f65896330238cf0ba9dcf7018853d01cc9eff0b358777cfe1afc87210d617 SHA512 91987e42bfa26521ec32b2e9f85f662cfa6bde336cf09e82043a8ccf315742aa3d522a38543b132b1246082995c76e8fa5671335d429f3e2cf101652f995b822
diff --git a/games-util/wit/files/wit-3.05a-makefile.patch b/games-util/wit/files/wit-3.05a-makefile.patch
new file mode 100644
index 000000000000..62b4930b1d89
--- /dev/null
+++ b/games-util/wit/files/wit-3.05a-makefile.patch
@@ -0,0 +1,266 @@
+From ecf6121592e9ffa0b2cd220a0de675b64b163000 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz93@gmail.com>
+Date: Sun, 17 Mar 2024 18:12:43 -0400
+Subject: [PATCH] reroll patch to Makefile for system integration
+
+Don't link libdl into wfuse as it's unnecessary, use system bzip2, respect user
+CFLAGS, use pkgconfig to determine ncurses libs, and use verbose build output.
+---
+ Makefile | 82 ++++++++++++++++---------------------------
+ test-libwbfs/Makefile | 13 ++-----
+ 2 files changed, 32 insertions(+), 63 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index adaa48a..433578a 100644
+--- a/Makefile
++++ b/Makefile
+@@ -111,11 +111,6 @@ VERSION := $(VERSION_NUM)$(BETA_SUFFIX)
+ #-------------------------------------------------------------------------------
+ # compiler settings
+
+-PRE ?=
+-CC = $(PRE)gcc
+-CPP = $(PRE)g++
+-STRIP = $(PRE)strip
+-
+ #-------------------------------------------------------------------------------
+ # files
+
+@@ -171,7 +166,7 @@ endif
+ TOPT_wit := $(OPT_STATIC)
+ TOPT_wwt := $(OPT_STATIC)
+ TOPT_wdf := $(OPT_STATIC)
+-TOPT_wfuse := -lfuse -lpthread -ldl
++TOPT_wfuse := -lfuse -lpthread
+
+ #TOPT_ALL := $(TOPT_wit) $(TOPT_wwt) $(TOPT_wdf) $(TOPT_wfuse)
+
+@@ -206,8 +201,8 @@ else
+ endif
+
+ # lib summary
+-LIB_LIST += libbz2 lzma
+-LIB_OBJECTS += $(LIBBZ2_OBJ) $(LZMA_OBJ)
++LIB_LIST += lzma
++LIB_OBJECTS += $(LZMA_OBJ)
+ RM_FILES += $(foreach l,$(LIB_LIST),src/$(l)/*.{d,o})
+
+
+@@ -297,10 +292,10 @@ DEFINES1 += -D_7ZIP_ST=1 # disable 7zip multi threading
+ DEFINES1 += -D_LZMA_PROB32=1 # LZMA option
+ DEFINES = $(strip $(DEFINES1) $(MODE) $(XDEF))
+
+-CFLAGS += -std=gnu99 -fomit-frame-pointer -fno-strict-aliasing -funroll-loops
++CFLAGS += -std=gnu99 -fno-strict-aliasing
+ CFLAGS += -Wall -Wno-parentheses -Wno-unused-function
+ #CFLAGS += -O3 -Isrc/libwbfs -Isrc/lzma -Isrc -I$(UI) -I. -Iwork
+-CFLAGS += -O3 -Isrc/libwbfs -Isrc -I$(UI) -I. -Iwork
++CFLAGS += -Isrc/libwbfs -Isrc -I$(UI) -I. -Iwork
+
+ ifeq ($(SYSTEM_LINUX),1)
+ LIBS += -ltinfo
+@@ -313,8 +308,6 @@ endif
+
+ ifeq ($(SYSTEM),mac)
+ CFLAGS += -I/usr/local/include
+-else
+- LDFLAGS += -static-libgcc
+ endif
+
+ ifeq ($(shell expr $(GCC_VERSION) '>=' 7.0 ),1)
+@@ -334,7 +327,7 @@ LDFLAGS := $(strip $(LDFLAGS))
+ ifeq ($(HAVE_ZLIB),1)
+ LIBS += -lz
+ endif
+-LIBS += -lm -lncurses $(XLIBS)
++LIBS += -lm $(shell $(PKG_CONFIG) --libs ncurses) -lbz2 $(XLIBS)
+
+ ifeq ($(HAVE_SHA),1)
+ ifeq ($(SYSTEM_LINUX),1)
+@@ -402,60 +395,51 @@ default_rule: all
+ # general rules
+
+ $(ALL_TOOLS_X): %: %.o $(ALL_OBJECTS) $(TOBJ_ALL) Makefile | $(HELPER_TOOLS)
+- @printf "$(LOGFORMAT_TOOL)" tool "$@" "$(MODE) $(TOPT_$@) $(TOBJ_$@)"
+- @$(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \
++ $(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \
+ $(ALL_OBJECTS) $(TOBJ_$@) $(LIBS) $(TOPT_$@) -o $@
+- @if test -f $@.exe; then $(STRIP) $@.exe; else $(STRIP) $@; fi
+
+- @mkdir -p bin/$(SYSTEM2) bin/$(SYSTEM2)/debug
+- @if test -s $(MODE_FILE) && grep -Fq -e -DDEBUG $(MODE_FILE); \
++ mkdir -p bin/$(SYSTEM2) bin/$(SYSTEM2)/debug
++ if test -s $(MODE_FILE) && grep -Fq -e -DDEBUG $(MODE_FILE); \
+ then cp -p $@ bin/$(SYSTEM2)/debug/; \
+ else cp -p $@ bin/; cp -p $@ bin/$(SYSTEM2)/; fi
+
+ #--------------------------
+
+ $(HELPER_TOOLS): %: %.o $(ALL_OBJECTS) $(UI_TABS) Makefile
+- @printf "$(LOGFORMAT_TOOL)" helper "$@ $(TOBJ_$@)" "$(MODE)"
+- @$(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \
++ $(CC) $(CFLAGS) $(DEFINES) $(LDFLAGS) $@.o \
+ $(ALL_OBJECTS) $(TOBJ_$@) $(LIBS) -o $@
+
+ #--------------------------
+
+ $(WDF_LINKS): wdf
+- @printf "$(LOGFORMAT_INST)" "link" "wdf -> $@" ""
+- @ln -f wdf "$@"
++ ln -f wdf "$@"
+
+ #--------------------------
+
+ $(UI_OBJECTS): %.o: %.c ui-%.c ui-%.h version.h Makefile
+- @printf "$(LOGFORMAT_CC)" +object "$@" "$(MODE)"
+- @$(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
++ $(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
+
+ #--------------------------
+
+ $(C_OBJECTS): %.o: %.c version.h Makefile $(TEXT_FILES)
+- @printf "$(LOGFORMAT_CC)" object "$@" "$(MODE)"
+- @$(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
++ $(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
+
+ #--------------------------
+
+ $(ASM_OBJECTS): %.o: %.S Makefile
+- @printf "$(LOGFORMAT_CC)" asm "$@" "$(MODE)"
+- @$(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
++ $(CC) $(CFLAGS) $(DEPFLAGS) $(DEFINES) -c $< -o $@
+
+ #--------------------------
+
+ $(SETUP_FILES): templates.sed $(SETUP_DIR)/$@
+- @printf "$(LOGFORMAT)" create "$@" ""
+- @chmod 775 $(GEN_TEMPLATE)
+- @$(GEN_TEMPLATE) $@
++ chmod 775 $(GEN_TEMPLATE)
++ $(GEN_TEMPLATE) $@
+
+ #--------------------------
+
+ $(TEXT_FILES): $(GEN_TEXT_FILE) $(TEXT_DIR)/$@
+- @printf "$(LOGFORMAT)" text "$@" ""
+- @chmod 775 $(GEN_TEXT_FILE)
+- @$(GEN_TEXT_FILE) $(TEXT_DIR) $@
++ chmod 775 $(GEN_TEXT_FILE)
++ $(GEN_TEXT_FILE) $(TEXT_DIR) $@
+
+ #--------------------------
+
+@@ -465,20 +449,17 @@ $(UI_FILES): gen-ui.c ui.h $(UI_TABS) | gen-ui
+
+ .PHONY : ui
+ ui : gen-ui
+- @printf "$(LOGFORMAT)" run gen-ui ""
+- @./gen-ui
++ ./gen-ui
+
+ #
+ ###############################################################################
+ # lib specific rules
+
+ $(LIBBZ2_OBJ): %.o: %.c Makefile
+- @printf "$(LOGFORMAT_CC)" object "$(subst src/libbz2/,,$@)" "$(MODE) [libbz2]"
+- @$(CC) $(CFLAGS) $(DEPFLAGS) $(BZIP2_FLAGS) $(DEFINES) -c $< -o $@
++ $(CC) $(CFLAGS) $(DEPFLAGS) $(BZIP2_FLAGS) $(DEFINES) -c $< -o $@
+
+ $(LZMA_OBJ): %.o: %.c Makefile
+- @printf "$(LOGFORMAT_CC)" object "$(subst src/lzma/,,$@)" "$(MODE) [lzma]"
+- @$(CC) $(CFLAGS) $(DEPFLAGS) $(LZMA_FLAGS) $(DEFINES) -c $< -o $@
++ $(CC) $(CFLAGS) $(DEPFLAGS) $(LZMA_FLAGS) $(DEFINES) -c $< -o $@
+
+ #
+ ###############################################################################
+@@ -670,9 +651,8 @@ doc: $(MAIN_TOOLS) templates.sed gen-doc
+
+ .PHONY : gen-doc
+ gen-doc:
+- @printf "$(LOGFORMAT)" create documentation ""
+- @chmod ug+x $(GEN_TEMPLATE)
+- @$(GEN_TEMPLATE)
++ chmod ug+x $(GEN_TEMPLATE)
++ $(GEN_TEMPLATE)
+
+ #
+ #--------------------------
+@@ -778,7 +758,7 @@ old:
+
+ .PHONY : predef
+ predef:
+- @gcc -E -dM none.c | sort
++ @$(CC) -E -dM none.c | sort
+
+ #
+ #--------------------------
+@@ -792,8 +772,7 @@ $(SUB_PROJECTS):
+ #--------------------------
+
+ templates.sed: Makefile
+- @printf "$(LOGFORMAT)" create templates.sed ""
+- @printf '%s\n' \
++ printf '%s\n' \
+ '/^~/ d;' \
+ 's|@.@@@|$(VERSION_NUM)|g;' \
+ 's|@@@@-@@-@@|$(DATE)|g;' \
+@@ -859,13 +838,12 @@ templates.sed: Makefile
+
+ .PHONY : test
+ test:
+- @printf "$(LOGFORMAT)" enable test "-> define -DTEST"
+- @rm -f *.o $(ALL_TOOLS_X)
+- @echo "-DTEST" >>$(MODE_FILE)
+- @sort $(MODE_FILE) | uniq > $(MODE_FILE).tmp
++ rm -f *.o $(ALL_TOOLS_X)
++ echo "-DTEST" >>$(MODE_FILE)
++ sort $(MODE_FILE) | uniq > $(MODE_FILE).tmp
+ # 2 steps to bypass a cygwin mv failure
+- @cp $(MODE_FILE).tmp $(MODE_FILE)
+- @rm -f $(MODE_FILE).tmp
++ cp $(MODE_FILE).tmp $(MODE_FILE)
++ rm -f $(MODE_FILE).tmp
+
+ #
+ #--------------------------
+diff --git a/test-libwbfs/Makefile b/test-libwbfs/Makefile
+index 6e937fc..9c0f0f8 100644
+--- a/test-libwbfs/Makefile
++++ b/test-libwbfs/Makefile
+@@ -7,11 +7,6 @@
+
+ SHELL = /bin/bash
+
+-PRE ?=
+-CC = $(PRE)gcc
+-CPP = $(PRE)g++
+-STRIP = $(PRE)strip
+-
+ #-------------------------------------------------------------------------------
+ # files
+
+@@ -46,18 +41,14 @@ VPATH += ../src/libwbfs
+ DEFINES = -DLARGE_FILES -D_FILE_OFFSET_BITS=64 $(XDEF)
+ DEFINES := $(strip $(DEFINES))
+
+-CFLAGS = -fomit-frame-pointer -fno-strict-aliasing
++CFLAGS += -fno-strict-aliasing
+ CFLAGS += -Wall -Wno-parentheses -Wno-unused-function
+-CFLAGS += -O3 -I../src/libwbfs -I.
++CFLAGS += -I../src/libwbfs -I.
+ CFLAGS += $(XFLAGS)
+ CFLAGS := $(strip $(CFLAGS))
+
+ DEPFLAGS += -MMD
+
+-LDFLAGS += -static-libgcc
+-#LDFLAGS += -static
+-LDFLAGS := $(strip $(LDFLAGS))
+-
+ LIBS += $(XLIBS)
+
+ #
+--
+2.43.2
+
diff --git a/games-util/wit/files/wit-3.05a-no-exec-stack.patch b/games-util/wit/files/wit-3.05a-no-exec-stack.patch
new file mode 100644
index 000000000000..db91b45cfcb1
--- /dev/null
+++ b/games-util/wit/files/wit-3.05a-no-exec-stack.patch
@@ -0,0 +1,9 @@
+--- wit-2.30a/src/crypto/ssl-asm.S
++++ wit-2.30a/src/crypto/ssl-asm.S
+@@ -37,3 +37,6 @@
+ #define WIT_INCLUDE_SSL_ASM
+ #include "ssl-asm.h"
+
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
diff --git a/games-util/wit/wit-3.02a-r1.ebuild b/games-util/wit/wit-3.02a-r1.ebuild
new file mode 100644
index 000000000000..ee7795010df5
--- /dev/null
+++ b/games-util/wit/wit-3.02a-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+MY_P="wiimms-iso-tools.source-${PV}"
+
+DESCRIPTION="command line tools to manipulate Wii/GameCube ISO images and WBFS containers"
+HOMEPAGE="https://wit.wiimm.de/"
+SRC_URI="https://download.wiimm.de/source/wiimms-iso-tools/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+fuse +zlib"
+
+RDEPEND="
+ app-arch/bzip2:0=
+ fuse? ( sys-fs/fuse:0= )
+ zlib? ( sys-libs/zlib:0= )"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-makefile.patch
+ "${FILESDIR}"/${P}-no-exec-stack.patch
+ "${FILESDIR}"/${P}-fno-common.patch
+)
+
+src_configure() {
+ # -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/859319
+ #
+ # After investigation, the build system also uses -fno-strict-aliasing
+ # so do not trust it with LTO either, even if the type-mismatch gets fixed.
+ filter-lto
+
+ export NO_FUSE=$(usex fuse 0 1)
+ export NO_ZLIB=$(usex zlib 0 1)
+
+ tc-export CC PKG_CONFIG
+}
+
+src_compile() {
+ emake INSTALL_PATH="${ED}"/usr
+ emake doc
+}
+
+src_install() {
+ default
+ dodoc doc/*.txt
+}
diff --git a/games-util/wit/wit-3.02a.ebuild b/games-util/wit/wit-3.02a.ebuild
index 95c5351036aa..aaeaa614fd02 100644
--- a/games-util/wit/wit-3.02a.ebuild
+++ b/games-util/wit/wit-3.02a.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit toolchain-funcs
+inherit flag-o-matic toolchain-funcs
MY_P="wiimms-iso-tools.source-${PV}"
@@ -32,6 +32,13 @@ PATCHES=(
)
src_configure() {
+ # -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/859319
+ #
+ # After investigation, the build system also uses -fno-strict-aliasing
+ # so do not trust it with LTO either, even if the type-mismatch gets fixed.
+ filter-lto
+
export NO_FUSE=$(usex fuse 0 1)
export NO_ZLIB=$(usex zlib 0 1)
diff --git a/games-util/wit/wit-3.05a.ebuild b/games-util/wit/wit-3.05a.ebuild
new file mode 100644
index 000000000000..c0d71daeedc9
--- /dev/null
+++ b/games-util/wit/wit-3.05a.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+MY_P="wiimms-iso-tools.source-${PV}"
+
+DESCRIPTION="command line tools to manipulate Wii/GameCube ISO images and WBFS containers"
+HOMEPAGE="https://wit.wiimm.de/"
+SRC_URI="https://download.wiimm.de/source/wiimms-iso-tools/${MY_P}.txz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+fuse +zlib"
+
+RDEPEND="
+ app-arch/bzip2:0=
+ dev-libs/openssl:=
+ fuse? ( sys-fs/fuse:0= )
+ zlib? ( sys-libs/zlib:0= )"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-makefile.patch
+ "${FILESDIR}"/${P}-no-exec-stack.patch
+)
+
+src_configure() {
+ # -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/859319
+ #
+ # After investigation, the build system also uses -fno-strict-aliasing
+ # so do not trust it with LTO either, even if the type-mismatch gets fixed.
+ filter-lto
+
+ export NO_FUSE=$(usex fuse 0 1)
+ export NO_ZLIB=$(usex zlib 0 1)
+
+ tc-export CC PKG_CONFIG
+}
+
+src_compile() {
+ emake INSTALL_PATH="${ED}"/usr
+ emake doc
+}
+
+src_install() {
+ default
+ dodoc doc/*.txt
+}