Skip to content

NT_MAKEFILE: support targeting ARM64 with MSVC#3

Closed
sebgod wants to merge 1 commit into
Mercury-Language:release-8_2-mercuryfrom
sebgod:support-cl-arm64
Closed

NT_MAKEFILE: support targeting ARM64 with MSVC#3
sebgod wants to merge 1 commit into
Mercury-Language:release-8_2-mercuryfrom
sebgod:support-cl-arm64

Conversation

@sebgod

@sebgod sebgod commented Apr 24, 2026

Copy link
Copy Markdown

Extend NT_MAKEFILE with a third CPU branch so that building gc.lib with
MSVC can target Windows on ARM64, alongside the existing i386 and AMD64
branches. Accept CPU values of ARM64, arm64, AARCH64, aarch64; define
ARM64=1 and the Win64/Win32 convention macros; set CVTRES_CPU=ARM64.

This is needed for Mercury's MSVC port to support Windows ARM64. It is
also a generally useful improvement to Boehm's Windows build.

NT_MAKEFILE:
    Accept CPU=ARM64 (or arm64/AARCH64/aarch64) in addition to the existing
    i386 and AMD64 cases. Define _ARM64_=1 and the Win64/Win32 convention
    macros for ARM64 builds, and set CVTRES_CPU=ARM64 so resource handling
    mirrors the other 64-bit target.
@wangp

wangp commented Apr 29, 2026

Copy link
Copy Markdown
Member

I'm not familiar with NT_MAKEFILE but it looks to be fine. I wouldn't have an objection to merging it to our branch, but it should be submitted upstream as well.

@sebgod

sebgod commented Apr 29, 2026

Copy link
Copy Markdown
Author

I'm not familiar with NT_MAKEFILE but it looks to be fine. I wouldn't have an objection to merging it to our branch, but it should be submitted upstream as well.

yes about upstream, but we are thousands of commits behind upstream, they have a completely new build system (cmake I believe), which well will take a bit more to integrate with.

@wangp

wangp commented Apr 29, 2026

Copy link
Copy Markdown
Member

They still have a NT_MAKEFILE, you should just be able to apply the changes and test it.

@sebgod

sebgod commented Apr 29, 2026

Copy link
Copy Markdown
Author

They still have a NT_MAKEFILE, you should just be able to apply the changes and test it.

fair enough, PR is out: bdwgc#920. changes are 1:1 so should not block this from getting merged

@sebgod

sebgod commented Apr 29, 2026

Copy link
Copy Markdown
Author

Apparently, it is "okay" upstream too: bdwgc#920 (comment) @wangp

@sebgod

sebgod commented Apr 29, 2026

Copy link
Copy Markdown
Author

now part of this: bdwgc#921

@wangp

wangp commented Apr 30, 2026

Copy link
Copy Markdown
Member

Thanks, I've added the patch to the release-8_2-mercury branch. I have not created the tag release-8_2-mercury-2026mmdd; that can be done by whoever takes care of Mercury-Language/mercury#143

@wangp wangp closed this Apr 30, 2026
@sebgod

sebgod commented May 1, 2026

Copy link
Copy Markdown
Author

oops sorry forgot about the tagging mechanism!

@sebgod sebgod deleted the support-cl-arm64 branch May 1, 2026 04:29
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.

2 participants