Skip to content

Commit 2029d0c

Browse files
committed
Add support for building Android x86 and x86_64
1 parent 97e1937 commit 2029d0c

File tree

3 files changed

+25
-4
lines changed

3 files changed

+25
-4
lines changed

Makefile

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ BUILT_OBJS = $(addprefix build/%/,$(OBJS))
2424
MAKE_LUAJIT_OUTPUT = build/%/luajit/src/luajit build/%/luajit/src/lua51.dll build/%/luajit/src/libluajit.a
2525

2626
GDNLIB_ENTRY_PREFIX = addons/godot-lua-pluginscript
27-
BUILD_FOLDERS = build build/windows_x86 build/windows_x86_64 build/linux_x86 build/linux_x86_64 build/osx_x86_64 build/osx_arm64 build/osx_universal64 build/android_armv7a build/android_aarch64 build/$(GDNLIB_ENTRY_PREFIX)
27+
BUILD_FOLDERS = build build/windows_x86 build/windows_x86_64 build/linux_x86 build/linux_x86_64 build/osx_x86_64 build/osx_arm64 build/osx_universal64 build/android_armv7a build/android_aarch64 build/android_x86 build/android_x86_64 build/$(GDNLIB_ENTRY_PREFIX)
2828

2929
DIST_SRC = LICENSE
3030
DIST_ADDONS_SRC = LICENSE lps_coroutine.lua lua_pluginscript.gdnlib $(wildcard build/*/lua*.*) $(wildcard plugin/*)
@@ -180,3 +180,13 @@ android-aarch64: _CC = "$(NDK_TOOLCHAIN_BIN)/aarch64-linux-android$(NDK_TARGET_A
180180
android-aarch64: MAKE_LUAJIT_ARGS += HOST_CC="$(CC) -fPIC" CROSS="$(NDK_TOOLCHAIN_BIN)/aarch64-linux-android-" STATIC_CC="$(_CC)" DYNAMIC_CC="$(_CC)" TARGET_LD="$(_CC)"
181181
android-aarch64: build/android_aarch64/liblua_pluginscript.so
182182

183+
android-x86: NDK_TARGET_API ?= 16
184+
android-x86: _CC = "$(NDK_TOOLCHAIN_BIN)/i686-linux-android$(NDK_TARGET_API)-clang" -fPIC
185+
android-x86: MAKE_LUAJIT_ARGS += HOST_CC="$(CC) -m32 -fPIC" CROSS="$(NDK_TOOLCHAIN_BIN)/i686-linux-android-" STATIC_CC="$(_CC)" DYNAMIC_CC="$(_CC)" TARGET_LD="$(_CC)"
186+
android-x86: build/android_x86/liblua_pluginscript.so
187+
188+
android-x86_64: NDK_TARGET_API ?= 21
189+
android-x86_64: _CC = "$(NDK_TOOLCHAIN_BIN)/x86_64-linux-android$(NDK_TARGET_API)-clang" -fPIC
190+
android-x86_64: MAKE_LUAJIT_ARGS += HOST_CC="$(CC) -fPIC" CROSS="$(NDK_TOOLCHAIN_BIN)/x86_64-linux-android-" STATIC_CC="$(_CC)" DYNAMIC_CC="$(_CC)" TARGET_LD="$(_CC)"
191+
android-x86_64: build/android_x86_64/liblua_pluginscript.so
192+

README.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -196,9 +196,16 @@ make windows64 # x86_64
196196
make windows32 # x86
197197
make linux64 # x86_64
198198
make linux32 # x86
199-
make osx64 MACOSX_DEPLOYMENT_TARGET=XX.YY # "universal" multiarch x86_64 + amd64 dylib
200-
make android-armv7a NDK_TOOLCHAIN_BIN=/path/to/ndk/toolchains/llvm/prebuild/host_os-arch/bin # Android ARMv7
201-
make android-aarch64 NDK_TOOLCHAIN_BIN=/path/to/ndk/toolchains/llvm/prebuild/host_os-arch/bin # Android ARM64
199+
make osx64 \ # "universal" multiarch x86_64 + amd64 dylib
200+
MACOSX_DEPLOYMENT_TARGET=XX.YY
201+
make android-armv7a \ # Android ARMv7
202+
NDK_TOOLCHAIN_BIN=/path/to/ndk/toolchains/llvm/prebuild/host_os-arch/bin
203+
make android-aarch64 \ # Android ARM64
204+
NDK_TOOLCHAIN_BIN=/path/to/ndk/toolchains/llvm/prebuild/host_os-arch/bin
205+
make android-x86 \ # Android x86
206+
NDK_TOOLCHAIN_BIN=/path/to/ndk/toolchains/llvm/prebuild/host_os-arch/bin
207+
make android-x86_64 \ # Android x86_64
208+
NDK_TOOLCHAIN_BIN=/path/to/ndk/toolchains/llvm/prebuild/host_os-arch/bin
202209
```
203210

204211
The GDNativeLibrary file `lua_pluginscript.gdnlib` is already configured to use

lua_pluginscript.gdnlib

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ reloadable=false
99

1010
Android.armeabi-v7a="res://addons/godot-lua-pluginscript/build/android_armv7a/liblua_pluginscript.so"
1111
Android.arm64-v8a="res://addons/godot-lua-pluginscript/build/android_aarch64/liblua_pluginscript.so"
12+
Android.x86="res://addons/godot-lua-pluginscript/build/android_x86/liblua_pluginscript.so"
13+
Android.x86_64="res://addons/godot-lua-pluginscript/build/android_x86_64/liblua_pluginscript.so"
1214
OSX.64="res://addons/godot-lua-pluginscript/build/osx_universal64/lua_pluginscript.dylib"
1315
Windows.64="res://addons/godot-lua-pluginscript/build/windows_x86_64/lua_pluginscript.dll"
1416
Windows.32="res://addons/godot-lua-pluginscript/build/windows_x86/lua_pluginscript.dll"
@@ -19,6 +21,8 @@ X11.32="res://addons/godot-lua-pluginscript/build/linux_x86/liblua_pluginscript.
1921

2022
Android.armeabi-v7a=[ ]
2123
Android.arm64-v8a=[ ]
24+
Android.x86=[ ]
25+
Android.x86_64=[ ]
2226
OSX.64=[ ]
2327
Windows.64=[ "res://addons/godot-lua-pluginscript/build/windows_x86_64/lua51.dll" ]
2428
Windows.32=[ "res://addons/godot-lua-pluginscript/build/windows_x86/lua51.dll" ]

0 commit comments

Comments
 (0)