@@ -26,6 +26,9 @@ IPHONEOS_DEPLOYMENT_TARGET ?= 15.0
26
26
# This clears RUSTFLAGS to prevent -D warnings from failing the cross installation
27
27
CROSS_INSTALL_RUSTFLAGS = RUSTFLAGS=""
28
28
29
+ # Android 16KB page size alignment requirement
30
+ ANDROID_LINKER_FLAGS = -C link-arg=-Wl,-z,max-page-size=16384
31
+
29
32
# Helper function to create a zip file
30
33
define make_zip
31
34
set -e; \
@@ -142,25 +145,25 @@ release-ios-arm64-sim:
142
145
# 64-bit Android devices
143
146
release-android-arm64 :
144
147
$(CROSS_INSTALL_RUSTFLAGS ) cargo install cross --git https://github.com/cross-rs/cross
145
- cross build --target=aarch64-linux-android $(CARGO_BUILD_FLAGS )
148
+ RUSTFLAGS= " $$ {RUSTFLAGS} $( ANDROID_LINKER_FLAGS ) " cross build --target=aarch64-linux-android $(CARGO_BUILD_FLAGS )
146
149
@$(call make_zip,$(TARGET_DIR ) /aarch64-linux-android/release,aarch64-linux-android)
147
150
148
151
# 32-bit Android devices
149
152
release-android-armv7 :
150
153
$(CROSS_INSTALL_RUSTFLAGS ) cargo install cross --git https://github.com/cross-rs/cross
151
- cross build --target=armv7-linux-androideabi $(CARGO_BUILD_FLAGS )
154
+ RUSTFLAGS= " $$ {RUSTFLAGS} $( ANDROID_LINKER_FLAGS ) " cross build --target=armv7-linux-androideabi $(CARGO_BUILD_FLAGS )
152
155
@$(call make_zip,$(TARGET_DIR ) /armv7-linux-androideabi/release,armv7-linux-androideabi)
153
156
154
157
# 32-bit x86 Android emulators
155
158
release-android-x86 :
156
159
$(CROSS_INSTALL_RUSTFLAGS ) cargo install cross --git https://github.com/cross-rs/cross
157
- cross build --target=i686-linux-android $(CARGO_BUILD_FLAGS )
160
+ RUSTFLAGS= " $$ {RUSTFLAGS} $( ANDROID_LINKER_FLAGS ) " cross build --target=i686-linux-android $(CARGO_BUILD_FLAGS )
158
161
@$(call make_zip,$(TARGET_DIR ) /i686-linux-android/release,i686-linux-android)
159
162
160
163
# 64-bit x86 Android emulators
161
164
release-android-x86_64 :
162
165
$(CROSS_INSTALL_RUSTFLAGS ) cargo install cross --git https://github.com/cross-rs/cross
163
- cross build --target=x86_64-linux-android $(CARGO_BUILD_FLAGS )
166
+ RUSTFLAGS= " $$ {RUSTFLAGS} $( ANDROID_LINKER_FLAGS ) " cross build --target=x86_64-linux-android $(CARGO_BUILD_FLAGS )
164
167
@$(call make_zip,$(TARGET_DIR ) /x86_64-linux-android/release,x86_64-linux-android)
165
168
166
169
0 commit comments