History log of /trunk/main/bridges/source/cpp_uno/s5abi_macosx_aarch64/makefile.mk (Results 1 – 1 of 1)
Revision Date Author Comments
# 5e139d9f 05-Jun-2026 Jim Jagielski <jimjag@gmail.com>

Native Apple Silicon (arm64) support and bundled Python 3.10 baseline

Squashed combination of two efforts, applied onto trunk as a single
commit. (trunk is not intended to be buildable; this lands t

Native Apple Silicon (arm64) support and bundled Python 3.10 baseline

Squashed combination of two efforts, applied onto trunk as a single
commit. (trunk is not intended to be buildable; this lands the work for
reference/integration.)

=== Apple Silicon (macOS arm64 / AAPCS64) ===
Build plumbing: set_soenv.in + source_soenv.sh arm64 Darwin branch
(CPU=R, CPUNAME=AARCH64, OUTPATH=unxmaccr); new solenv/inc/unxmaccr.mk
and unx.mk dispatch; macro.hxx AARCH64 arch string; osarch.pm +
gbuild/platform/macosx.mk arch entries; configure.ac arm64 host
detection, Big Sur+ version math, and 11.0 deployment target.

C++/UNO bridge (new s5abi_macosx_aarch64): abi.cxx/hxx AAPCS64 classifier
(HFA + <=16B/>16B size rules), uno2cpp + call.s AArch64 trampoline,
cpp2uno incoming path + privateSnippetExecutor + AArch64 codeSnippet
codegen (x8 indirect-result handled, not displacing this/x0), share.hxx
__cxa_exception reserved-member alignment fix; Library_cpp_uno.mk +
makefile.mk wiring. sal/osl/unx/interlck.c arm64 atomics (__sync_* ->
LSE).

Externals: openssl darwin64-arm64-cc; icu arm64 little-endian. (NSS 3.39
deferred -- too old for arm64.)

Packaging/JVM: Info.plist LSMinimumSystemVersion 11.0; installer
download.pm/worker.pm/update_module_ignore_lists.pl recognize unxmaccr;
jvmfwk modern macOS JDK discovery (/Library/Java/JavaVirtualMachines +
Contents/Home probe).

The ABI/atomics/trampoline/JDK-discovery code was unit-tested natively
on an arm64 macOS host; a full AOO build (and bridgetest) was not run.
Code-signing infra (mandatory for arm64 distribution) is NOT included.

=== Bundled Python 2.7.18 -> 3.10 baseline (Unix/macOS first) ===
pyversion.mk/_dmake.mk -> 3.10.18 (single version knob). Shipped .py
fixes: imp -> types.ModuleType (pythonscript.py, pythonloader.py) and
file() -> open(); mailmerge.py Py3 email module imports + encoders.
Windows Python 3 build and the makefile.mk/d.lst/configure.ac Py3 work
are NOT included (separate, larger effort).

NOTE: macOS 11 becomes the minimum supported version. Python 3.10 is
EOL 2026-10; the version knob allows a later bump.

show more ...