From 40c07f32ea39cd160fa4aeea9e7eaaf5fe0b69c6 Mon Sep 17 00:00:00 2001 From: Magi Date: Fri, 4 Sep 2026 14:54:42 +0200 Subject: [PATCH 1/3] docs: update macOS build instructions --- README.md | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index ee420dbf2..bc27dffe6 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ Super Mario Sunshine [![Build Status]][actions] [![Code Progress]][progress] [![Discord Badge]][discord] ============= + [][Progress] ============= @@ -43,16 +44,12 @@ macOS brew install ninja ``` -- Install [wine-crossover](https://github.com/Gcenx/homebrew-wine): - - ```sh - brew install --cask --no-quarantine gcenx/wine/wine-crossover - ``` +- Install [wibo-macos](https://github.com/decompals/wibo) from their latest releases. -After OS upgrades, if macOS complains about `Wine Crossover.app` being unverified, you can unquarantine it using: +After OS upgrades, if macOS complains about `wibo` being unverified, you can unquarantine it using: ```sh -sudo xattr -rd com.apple.quarantine '/Applications/Wine Crossover.app' +xattr -d com.apple.quarantine path/to/wibo ``` Linux From 98fa890d4fad6b0e176d32390d1e63bc98651488 Mon Sep 17 00:00:00 2001 From: Magi Date: Wed, 9 Sep 2026 14:17:03 +0200 Subject: [PATCH 2/3] fix: adjusted wording based of dtk-template instructions --- README.md | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/README.md b/README.md index bc27dffe6..c6760f21b 100644 --- a/README.md +++ b/README.md @@ -44,13 +44,7 @@ macOS brew install ninja ``` -- Install [wibo-macos](https://github.com/decompals/wibo) from their latest releases. - -After OS upgrades, if macOS complains about `wibo` being unverified, you can unquarantine it using: - -```sh -xattr -d com.apple.quarantine path/to/wibo -``` +[wibo](https://github.com/decompals/wibo), a minimal 32-bit Windows binary wrapper, will be automatically downloaded and used. Linux ------ From 17360ba149863d0c3aea69d154f5d2114c5552fd Mon Sep 17 00:00:00 2001 From: Magi Date: Thu, 10 Sep 2026 12:19:09 +0200 Subject: [PATCH 3/3] fix: bump wibo to 1.2.0... and enable darwin platforms to get the right version of wibo also disable sjiwrap in configure.py since it does not currently implement FormatMessageA, so GetProcAddress returns NULL. sjiswrap treats any NULL as fatal and panics. --- .DS_Store | Bin 0 -> 6148 bytes configure.py | 3 ++- tools/download_tool.py | 15 ++++++++++++++- tools/project.py | 12 +++++++++--- 4 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..fcd965fd58cddbb0c2a277fb06f86a5bb67d2c84 GIT binary patch literal 6148 zcmeHK%SyyR5Ukb+3tslALyR*MR(&oC>)|36Qdk+ g;pO-tk}|LPocn#@oEUV*gHF`Xfa@ZY0>7=mH|SXzwg3PC literal 0 HcmV?d00001 diff --git a/configure.py b/configure.py index dbccba99e..bdd1bc72b 100644 --- a/configure.py +++ b/configure.py @@ -148,7 +148,8 @@ config.dtk_tag = "v1.3.0" config.objdiff_tag = "v3.7.1" config.sjiswrap_tag = "v1.2.0" -config.wibo_tag = "0.6.11" +config.wibo_tag = "1.2.0" +config.shift_jis = False # Project config.config_path = Path("config") / config.version / "config.yml" diff --git a/tools/download_tool.py b/tools/download_tool.py index 381b170a6..72d680e84 100644 --- a/tools/download_tool.py +++ b/tools/download_tool.py @@ -78,8 +78,21 @@ def sjiswrap_url(tag: str) -> str: def wibo_url(tag: str) -> str: + uname = platform.uname() + system = uname.system.lower() + arch = uname.machine.lower() + if arch == "amd64": + arch = "x86_64" + + if system == "darwin": + wibo_type = "wibo-macos" + elif system == "linux" and arch in ("i386", "i686"): + wibo_type = "wibo-i686" + else: + wibo_type = "wibo-x86_64" + repo = "https://github.com/decompals/wibo" - return f"{repo}/releases/download/{tag}/wibo" + return f"{repo}/releases/download/{tag}/{wibo_type}" TOOLS: Dict[str, Callable[[str], str]] = { diff --git a/tools/project.py b/tools/project.py index c36a335f6..b928bb20b 100644 --- a/tools/project.py +++ b/tools/project.py @@ -277,8 +277,8 @@ def compiler_wrapper(self) -> Optional[Path]: def use_wibo(self) -> bool: return ( self.wibo_tag is not None - and sys.platform == "linux" - and platform.machine() in ("i386", "x86_64") + and sys.platform in ("linux", "darwin") + and platform.machine() in ("i386", "x86_64", "arm64") and self.wrapper is None ) @@ -975,7 +975,13 @@ def write(self, n: ninja_syntax.Writer) -> None: "basefile": pch_out_abs_path.with_suffix(""), "basefilestem": pch_out_abs_path.stem, }, - implicit=[*mwcc_implicit], + implicit=[ + *( + mwcc_sjis_implicit + if pch.get("shift_jis", config.shift_jis) + else mwcc_implicit + ) + ], ) n.newline()