Skip to content

Build from paths containing spaces on Windows - #44

Merged
rixnobis merged 1 commit into
mainfrom
fix-spaces-in-path
Oct 1, 2026
Merged

rixnobis merged 1 commit into
mainfrom
fix-spaces-in-path

Conversation

@rixnobis

Copy link
Copy Markdown
Contributor

Native and Lua compiler builds use GNU make, and psyqo's makefiles derive their own root via $(abspath $(lastword $(MAKEFILE_LIST))) resolved against make's working directory, which breaks when that path contains a space. This adds a small ShortPath helper: on Windows it resolves the native/luac working directories to their 8.3 short path via GetShortPathNameW before invoking make, and on any platform (including Windows when 8.3 names are disabled) it aborts the build with a clear error before running make. The two make invocations in SplashControlPanel.cs (native build and luac_psx build) are updated to use the resolved path. Other places that shell out (git, mkpsxiso, tar, meson, toolchain installers) were audited and don't go through make, so they were left unchanged.

Fixes #29.

Fixes native and Lua compiler builds on Windows/macOS/Linux when the
project lives under a path containing spaces, which GNU make and the
psyqo makefiles cannot resolve correctly. On Windows the build now
falls back to the 8.3 short path; elsewhere (and when 8.3 names are
unavailable) the build aborts with a clear error before invoking make.

@CloudMracek CloudMracek left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm so happy this got finally fixed

@rixnobis
rixnobis merged commit c123ee2 into main Oct 1, 2026
3 checks passed
@rixnobis
rixnobis deleted the fix-spaces-in-path branch October 1, 2026 17:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Psyqo Makefile fails if build path has "Space" characters

2 participants