summaryrefslogtreecommitdiffhomepage
path: root/templates/simple_game/Makefile.Android.linux
diff options
context:
space:
mode:
authorDavidson Francis <[email protected]>2021-01-13 19:07:34 -0300
committerGitHub <[email protected]>2021-01-13 23:07:34 +0100
commit3d22709808fd9ba2843e6cad5e106bcd90eecaca (patch)
tree0a9f050073d7ff99a7974ae2d807c8d9be1519dc /templates/simple_game/Makefile.Android.linux
parenta0a840101c499d19f9b455916a231123a0cd8e45 (diff)
downloadraylib-3d22709808fd9ba2843e6cad5e106bcd90eecaca.tar.gz
raylib-3d22709808fd9ba2843e6cad5e106bcd90eecaca.zip
Fixes Android builds on Linux environments (#1530)
* simple_game: Configure Make and makefile for Linux environments * simple_game: Fix build issues on Android plaform with Linux HOST The Makefile.Android.linux file was out of date with the rest of the project, so this commit updates the paths, as well as leaving some as optional, if it is already configured as an environment variable. In addition, it corrects the build error related to static raylib: the makefile was trying to generate libmain.so using the path of the NDK libraries, instead of using those of the Android system, which resulted in crashes in the generated apk.
Diffstat (limited to 'templates/simple_game/Makefile.Android.linux')
-rw-r--r--templates/simple_game/Makefile.Android.linux13
1 files changed, 6 insertions, 7 deletions
diff --git a/templates/simple_game/Makefile.Android.linux b/templates/simple_game/Makefile.Android.linux
index fd4dfacd..1fbdc314 100644
--- a/templates/simple_game/Makefile.Android.linux
+++ b/templates/simple_game/Makefile.Android.linux
@@ -28,7 +28,7 @@
# Define required raylib variables
PLATFORM ?= PLATFORM_ANDROID
-RAYLIB_PATH ?= $(HOME)/raylib_sources.ln
+RAYLIB_PATH ?= ../../
# Define Android architecture (armeabi-v7a, arm64-v8a, x86, x86-64) and API version
ANDROID_ARCH ?= ARM64
@@ -48,9 +48,9 @@ endif
# no need to define JAVA_HOME , JAVA_BIN in linux environment (binaries are in $PATH)
#JAVA_HOME ?= C:/JavaJDK/
#JAVA_BIN ?= $(JAVA_HOME)/bin/
-ANDROID_HOME = /opt/android-sdk
+ANDROID_HOME ?= /opt/android-sdk
#ANDROID_TOOLCHAIN = C:/android_toolchain_$(ANDROID_ARCH)_API$(ANDROID_API_VERSION)
-ANDROID_TOOLCHAIN = /opt/android-ndk/toolchains/llvm/prebuilt/linux-x86_64/
+ANDROID_TOOLCHAIN ?= /opt/android-ndk/toolchains/llvm/prebuilt/linux-x86_64/
# find the highest version available of build tools
ANDROID_BUILD_TOOLS = $(shell ls -1d $(ANDROID_HOME)/build-tools/* | tail -n 1)/
@@ -94,11 +94,10 @@ APP_SCREEN_ORIENTATION ?= landscape
APP_KEYSTORE_PASS ?= raylib
# Library type used for raylib: STATIC (.a) or SHARED (.so/.dll)
-# attention, ne fonctionne pas avec STATIC (manque la libm quelque part)
-RAYLIB_LIBTYPE ?= SHARED
+RAYLIB_LIBTYPE ?= STATIC
# Library path for libraylib.a/libraylib.so
-RAYLIB_LIB_PATH = $(RAYLIB_PATH)/src/android/
+RAYLIB_LIB_PATH = $(RAYLIB_PATH)/src/
# Shared libs must be added to APK if required
# NOTE: Generated NativeLoader.java automatically load those libraries
@@ -141,7 +140,7 @@ LDFLAGS += -Wl,--build-id -Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl
# Force linking of library module to define symbol
LDFLAGS += -u ANativeActivity_onCreate
# Library paths containing required libs
-LDFLAGS += -L. -L$(PROJECT_BUILD_PATH)/obj -L$(PROJECT_BUILD_PATH)/lib/$(ANDROID_ARCH_NAME) -L$(ANDROID_TOOLCHAIN)/sysroot/usr/lib/$(ANDROID_TOOLCHAIN_LIBS)
+LDFLAGS += -L. -L$(PROJECT_BUILD_PATH)/obj -L$(PROJECT_BUILD_PATH)/lib/$(ANDROID_ARCH_NAME)
# Define any libraries to link into executable
# if you want to link libraries (libname.so or libname.a), use the -lname