From 21aae3907f426b4abef06e01b9c598acb30bb4bb Mon Sep 17 00:00:00 2001 From: ViscousPotential <167028444+ViscousPot@users.noreply.github.com> Date: Tue, 19 May 2026 21:44:39 +0100 Subject: [PATCH] feat: Support android 16kb page size --- build_tool/lib/src/android_environment.dart | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/build_tool/lib/src/android_environment.dart b/build_tool/lib/src/android_environment.dart index 9342964..c771c2d 100644 --- a/build_tool/lib/src/android_environment.dart +++ b/build_tool/lib/src/android_environment.dart @@ -186,7 +186,16 @@ class AndroidEnvironment { if (rustFlags.isNotEmpty) { rustFlags = '$rustFlags\x1f'; } - rustFlags = '$rustFlags-L\x1f$workaroundDir'; + if (["arm64-v8a", "x86_64"].contains(target.android)) { + rustFlags = '$rustFlags-L\x1f$workaroundDir\x1f'; + + const pageSizeArgs = ["-C", "link-arg=-Wl,--hash-style=both", "-C", "link-arg=-Wl,-z,max-page-size=16384"]; + final pageSizeArgsString = pageSizeArgs.join("\x1f"); + + rustFlags = '$rustFlags$pageSizeArgsString'; + } else { + rustFlags = '$rustFlags-L\x1f$workaroundDir'; + } return rustFlags; } }