Skip to content

Commit

Permalink
Check HXCPP_ARCH before defaulting to host arch
Browse files Browse the repository at this point in the history
Right now HXCPP_ARCH is ignored, which means you can get situations
where `HXCPP_ARM64` is set but the architecture is x86_64 so you may end
up with a broken build.
  • Loading branch information
tobil4sk committed Jun 25, 2024
1 parent f376d04 commit 5562d22
Showing 1 changed file with 13 additions and 5 deletions.
18 changes: 13 additions & 5 deletions tools/hxcpp/BuildTool.hx
Original file line number Diff line number Diff line change
Expand Up @@ -136,12 +136,20 @@ class BuildTool
arm64 = mDefines.exists("HXCPP_ARM64");
if (m64==m32 && !arm64)
{
var arch = getArch();
var arch = mDefines.get("HXCPP_ARCH");
if (arch != null) {
m64 = arch == "x86_64";
m32 = arch == "x86";
arm64 = arch == "arm64";
} else {
var hostArch = getArch();

// Default to the current OS version. windowsArm runs m32 code too
m64 = hostArch == "m64";
m32 = hostArch == "m32";
arm64 = hostArch == "arm64";
}

// Default to the current OS version. windowsArm runs m32 code too
m64 = arch=="m64";
m32 = arch=="m32";
arm64 = arch=="arm64";
mDefines.remove(m32 ? "HXCPP_M64" : "HXCPP_M32");
set64(mDefines,m64,arm64);
}
Expand Down

0 comments on commit 5562d22

Please sign in to comment.