Skip to content

Conversation

@nickclark2016
Copy link
Member

What does this PR do?

  1. Uses AARCH64 for all 64 bit ARM architectures
  2. Makes ARM64 an alias of AARCH64
  3. Deprecates i386 and x32
  • i386 - This should strictly be the original x86 architecture and mean -m32 -march=i386 instead of an alias to -m32. This can be reintroduced as its own architecture in the future after deprecation period.
  • x32 - This should be -mx32 for the x32 ABI. Currently, this maps to -m32 which is the x86 ABI, and thus is incorrect.

How does this PR change Premake's behavior?

No breaking changes to core. Third party libraries relying on ARM64 rather than AARCH64 will break.

Anything else we should know?

Preparation for 5.0

Did you check all the boxes?

  • Focus on a single fix or feature; remove any unrelated formatting or code changes
  • Add unit tests showing fix or feature works; all tests pass
  • Mention any related issues (put closes #XXXX in comment to auto-close issue when PR is merged)
  • Follow our coding conventions
  • Minimize the number of commits
  • Align documentation to your changes

You can now support Premake on our OpenCollective. Your contributions help us spend more time responding to requests like these!

@nickclark2016 nickclark2016 requested a review from a team January 5, 2026 00:09
@nickclark2016 nickclark2016 force-pushed the architecture-valid-values-unificiation branch from e4fba55 to 5638ce4 Compare January 5, 2026 00:11
@samsinsane samsinsane merged commit 0fb6ba2 into premake:master Jan 5, 2026
55 checks passed
platforms { "ARM" }

filter { "system:windows", "options:arch=ARM64" }
filter { "system:windows", "options:arch=AARCH64" }
Copy link
Contributor

Choose a reason for hiding this comment

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

Shouldn't those filters check both ARM64 or AARCH64?(as there are the "same").

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.

3 participants