summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--games-util/wit/Manifest1
-rw-r--r--games-util/wit/files/wit-2.40a-sizeof-pointer-memaccess.patch20
-rw-r--r--games-util/wit/wit-2.40a.ebuild38
3 files changed, 59 insertions, 0 deletions
diff --git a/games-util/wit/Manifest b/games-util/wit/Manifest
index ef5e17032900..7ccc45abed09 100644
--- a/games-util/wit/Manifest
+++ b/games-util/wit/Manifest
@@ -1,2 +1,3 @@
DIST wit-2.30a.tar.xz 716252 SHA256 5a63e554f69462474825c056abbd1411dcd0d6a24e9232a97a6c0d118eebe970 SHA512 177ae16a39b474116925a8b6cdae465ceb3e0a3cac2d3b704703ab59eed0cf380d63ad6617b56248c9030aa5250befebc31f06de1c97b8c1801c90922e8bdc69 WHIRLPOOL c5cd75213c7e25a887593d34a5812f68c9e5d8e5806d76e05201f4a1f6e74e797740c384fd06c6fe225556729a073e00259b44ed1d623313beea51b8bde3661e
DIST wit-2.31a.tar.xz 717292 SHA256 73c6496f8c7477f5c25aa3bba981b5e98fb58eeb668d3a877a019a1c29c98cad SHA512 69ec679082e6fac2545d0af0ec3899a5d4a68fd10e26d8678bdd6facf3f80b83ea89347f54e2e2f553c91ecc4fa969a64021b003f29c18a4acea4cc1febebfe0 WHIRLPOOL f70c3e429fdc7ee91015f34b43df8328c7134be1f2309c9239d99cbce983022a33cf9e140311fcd7112a540899cdb8ddea97747c6b165c69da713283705824dd
+DIST wit-2.40a.tar.xz 723448 SHA256 75b03490e8f72497bebd584a5c1e5d0813828e14413df89c97857072f860319a SHA512 f119ed9dffbb42ba9037444aaa992adaa812c176d1e412f9df6c5b59efff51a24cca0141700939efec7845ac1d42cc9a30100e19ef39adee0306872181b28b5b WHIRLPOOL 16ef0fad03f82228c776deeba8920f1b193d958ec1583623eeb78296323b19e8478e057ae95bf82452e685c7690c5c9ce8883a24f3a45d4770aa044c1ac85248
diff --git a/games-util/wit/files/wit-2.40a-sizeof-pointer-memaccess.patch b/games-util/wit/files/wit-2.40a-sizeof-pointer-memaccess.patch
new file mode 100644
index 000000000000..a6083103b857
--- /dev/null
+++ b/games-util/wit/files/wit-2.40a-sizeof-pointer-memaccess.patch
@@ -0,0 +1,20 @@
+--- wit-2.40a/src/wfuse.c
++++ wit-2.40a/src/wfuse.c
+@@ -340,7 +340,7 @@
+ }
+ ResetWBFS(df->wbfs);
+ FREE(df->wbfs);
+- memset(df,0,sizeof(df));
++ memset(df,0,sizeof(*df));
+ n_dfile--;
+ }
+
+@@ -352,7 +352,7 @@
+
+ if (found_df)
+ {
+- memset(found_df,0,sizeof(found_df));
++ memset(found_df,0,sizeof(*found_df));
+ WBFS_t * wbfs = MALLOC(sizeof(*wbfs));
+ InitializeWBFS(wbfs);
+ enumError err = OpenWBFS(wbfs,source_file,false,true,0);
diff --git a/games-util/wit/wit-2.40a.ebuild b/games-util/wit/wit-2.40a.ebuild
new file mode 100644
index 000000000000..9a34590663e8
--- /dev/null
+++ b/games-util/wit/wit-2.40a.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A set of command line tools to manipulate Wii/GameCube ISO images and WBFS containers"
+HOMEPAGE="http://wit.wiimm.de/"
+SRC_URI="https://dev.gentoo.org/~radhermit/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+fuse +zlib"
+
+RDEPEND="
+ app-arch/bzip2
+ fuse? ( sys-fs/fuse )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+DOCS="doc/*.txt"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.30a-makefile.patch
+ "${FILESDIR}"/${PN}-2.30a-no-exec-stack.patch
+ "${FILESDIR}"/${P}-sizeof-pointer-memaccess.patch
+)
+
+src_compile() {
+ export NO_FUSE=$(usex fuse 0 1)
+ export NO_ZLIB=$(usex zlib 0 1)
+
+ emake INSTALL_PATH="${D}"/usr CC="$(tc-getCC)"
+ emake doc
+}