Merge branch 'sdl_android' of github.com:pelya/commandergenius into sdl_android
This commit is contained in:
@@ -5,4 +5,4 @@ include jni/Settings.mk
|
||||
APP_STL := gnustl_static
|
||||
APP_CFLAGS := -O3 -DNDEBUG -g # arm-linux-androideabi-4.4.3 crashes in -O0 mode on SDL sources
|
||||
APP_PLATFORM := android-14 # Android 4.0, it should be backward compatible to previous versions
|
||||
APP_PIE := false # This feature makes executables incompatible to Android API 15 or lower
|
||||
APP_PIE := true # This feature makes executables incompatible to Android API 15 or lower, but executables without PIE will not run on Android 5.0 and newer
|
||||
|
||||
@@ -2,14 +2,14 @@
|
||||
# TODO: libboost, libffmpeg, libpython (used only in GemRB)
|
||||
|
||||
ARCHES32 := armeabi armeabi-v7a x86 mips
|
||||
ARCHES64 := arm64-v8a x86_64
|
||||
ARCHES64 := arm64-v8a
|
||||
|
||||
ICONV := $(foreach ARCH, $(ARCHES32), iconv/lib/$(ARCH)/libiconv.so iconv/lib/$(ARCH)/libcharset.so)
|
||||
|
||||
ICU_LIBS := data i18n io le lx test tu uc
|
||||
ICU := $(foreach ARCH, $(ARCHES32), $(foreach NAME, $(ICU_LIBS), icuuc/lib/$(ARCH)/libicu$(NAME).a))
|
||||
|
||||
OPENSSL := $(foreach ARCH, $(ARCHES32), openssl/lib-$(ARCH)/libcrypto.so.sdl.0.so openssl/lib-$(ARCH)/libssl.so.sdl.0.so)
|
||||
OPENSSL := $(foreach ARCH, $(ARCHES32) $(ARCHES64), openssl/lib-$(ARCH)/libcrypto.so.sdl.0.so openssl/lib-$(ARCH)/libssl.so.sdl.0.so)
|
||||
|
||||
LIBS := $(ICONV) $(ICU) $(OPENSSL)
|
||||
|
||||
|
||||
@@ -170,7 +170,7 @@ AppUsesMultitouch=y
|
||||
AppRecordsAudio=n
|
||||
|
||||
# Application needs to access SD card. If your data files are bigger than 5 Mb, enable it. (y) / (n)
|
||||
AccessSdCard=
|
||||
AccessSdCard=y
|
||||
|
||||
# Application needs Internet access. If you disable it, you'll have to bundle all your data files inside .apk (y) / (n)
|
||||
AccessInternet=
|
||||
@@ -229,11 +229,11 @@ FirstStartMenuOptions='SettingsMenu.DummyMenu'
|
||||
AppMinimumRAM=0
|
||||
|
||||
# GCC version, 4.6 (default) or 4.8, CLANG is not supported yet
|
||||
NDK_TOOLCHAIN_VERSION=
|
||||
NDK_TOOLCHAIN_VERSION=clang
|
||||
|
||||
# Specify architectures to compile, 'all' or 'y' to compile for all architectures.
|
||||
# Available architectures: armeabi armeabi-v7a armeabi-v7a-hard x86 mips
|
||||
MultiABI='armeabi-v7a x86'
|
||||
MultiABI='all'
|
||||
|
||||
# Optional shared libraries to compile - removing some of them will save space
|
||||
# MP3 support by libMAD is encumbered by patents and libMAD is GPL-ed
|
||||
@@ -247,7 +247,7 @@ CustomBuildScript=n
|
||||
AppCflags='-O2 -finline-functions'
|
||||
|
||||
# Additional LDFLAGS for application
|
||||
AppLdflags='-fuse-ld=bfd'
|
||||
AppLdflags=''
|
||||
|
||||
# If application has headers with the same name as system headers, this option tries to fix compiler flags to make it compilable
|
||||
AppOverlapsSystemHeaders=
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
#include <SDL/SDL.h>
|
||||
#include <SDL/SDL_image.h>
|
||||
#include <SDL/SDL_screenkeyboard.h>
|
||||
#include <SDL/SDL_android.h>
|
||||
|
||||
#define fprintf(X, ...) __android_log_print(ANDROID_LOG_INFO, "Ballfield", __VA_ARGS__)
|
||||
#define printf(...) __android_log_print(ANDROID_LOG_INFO, "Ballfield", __VA_ARGS__)
|
||||
@@ -686,7 +687,10 @@ int main(int argc, char* argv[])
|
||||
if(evt.key.keysym.sym == SDLK_0)
|
||||
SDL_ANDROID_SetScreenKeyboardButtonShown(SDL_ANDROID_SCREENKEYBOARD_BUTTON_2, 1);
|
||||
if(evt.key.keysym.sym == SDLK_1)
|
||||
{
|
||||
SDL_ANDROID_SetScreenKeyboardButtonShown(SDL_ANDROID_SCREENKEYBOARD_BUTTON_2, 0);
|
||||
SDL_ANDROID_RequestExternalStorageRuntimePermission();
|
||||
}
|
||||
if(evt.key.keysym.sym == SDLK_2)
|
||||
{
|
||||
SDL_ANDROID_SetScreenKeyboardButtonShown(SDL_ANDROID_SCREENKEYBOARD_BUTTON_DPAD, 1);
|
||||
|
||||
@@ -64,7 +64,7 @@ SdlVideoResize=y
|
||||
SdlVideoResizeKeepAspect=n
|
||||
|
||||
# Do not allow device to sleep when the application is in foreground, set this for video players or apps which use accelerometer
|
||||
InhibitSuspend=n
|
||||
InhibitSuspend=y
|
||||
|
||||
# Create Android service, so the app is less likely to be killed while in background
|
||||
CreateService=
|
||||
@@ -238,7 +238,7 @@ FirstStartMenuOptions=''
|
||||
AppMinimumRAM=300
|
||||
|
||||
# GCC version, 4.6 (default) or 4.8, CLANG is not supported yet
|
||||
NDK_TOOLCHAIN_VERSION=
|
||||
NDK_TOOLCHAIN_VERSION=clang
|
||||
|
||||
# Specify architectures to compile, 'all' or 'y' to compile for all architectures.
|
||||
# Available architectures: armeabi armeabi-v7a armeabi-v7a-hard x86 mips
|
||||
|
||||
@@ -16,11 +16,12 @@ if [ "$1" = "armeabi-v7a" ]; then (
|
||||
) || exit 1
|
||||
fi
|
||||
|
||||
env NO_SHARED_LIBS=1 V=1 ../setEnvironment-$1.sh make -C vm -j8 PLATFORM=android ARCH=$1 USE_LOCAL_HEADERS=0 BUILD_MISSIONPACK=0 || exit 1
|
||||
#env NO_SHARED_LIBS=1 V=1 ../setEnvironment-$1.sh make -C vm -j8 PLATFORM=android ARCH=$1 USE_LOCAL_HEADERS=0 BUILD_MISSIONPACK=0 || exit 1
|
||||
|
||||
# Do not generate shared game logic libs - QVM files are used instead
|
||||
# ../setEnvironment-armeabi.sh sh -c "cd vm/build/release-android-$1/baseq3 && \$STRIP --strip-unneeded *.so && zip ../../../../AndroidData/binaries.zip *.so"
|
||||
|
||||
env PATH=`pwd`/..:$PATH \
|
||||
../setEnvironment-$1.sh make -j8 -C engine release \
|
||||
PLATFORM=android ARCH=$1 USE_GLES=1 USE_LOCAL_HEADERS=0 BUILD_CLIENT_SMP=0 \
|
||||
USE_OPENAL=1 USE_OPENAL_DLOPEN=0 USE_VOIP=1 USE_CURL=1 USE_CURL_DLOPEN=0 USE_CODEC_VORBIS=1 USE_MUMBLE=0 USE_FREETYPE=1 \
|
||||
|
||||
Submodule project/jni/application/openarena/engine updated: acd190733e...3c94b5df06
@@ -1,3 +1,4 @@
|
||||
#!/bin/sh
|
||||
adb shell rm /sdcard/Android/data/ws.openarena.sdl/files/libsdl-DownloadFinished-1.flag
|
||||
adb shell rm /mnt/extSdCard/Android/data/ws.openarena.sdl/files/libsdl-DownloadFinished-1.flag
|
||||
[ -n "$1" ] && adb shell rm -r /sdcard/Android/data/ws.openarena.sdl/files/.openarena
|
||||
|
||||
Submodule project/jni/application/openarena/vm updated: 3c58263af7...84ebfb59e3
@@ -50,6 +50,9 @@ NeedStencilBuffer=n
|
||||
# you need this option only if you're developing 3-d app (y) or (n)
|
||||
NeedGles2=n
|
||||
|
||||
# Use glshim library for provide OpenGL 1.x functionality to OpenGL ES accelerated cards (y) or (n)
|
||||
UseGlshim=
|
||||
|
||||
# Application uses software video buffer - you're calling SDL_SetVideoMode() without SDL_HWSURFACE and without SDL_OPENGL,
|
||||
# this will allow small speed optimization. Enable this even when you're using SDL_HWSURFACE. (y) or (n)
|
||||
SwVideoMode=y
|
||||
@@ -80,6 +83,14 @@ CompatibilityHacksStaticInit=y
|
||||
# On-screen Android soft text input emulates hardware keyboard, this will only work with Hackers Keyboard app (y)/(n)
|
||||
CompatibilityHacksTextInputEmulatesHwKeyboard=n
|
||||
|
||||
# Built-in text input keyboards with custom layouts for emulators, requires CompatibilityHacksTextInputEmulatesHwKeyboard=y
|
||||
# 0 or empty - standard Android keyboard
|
||||
# 1 - Simple QWERTY keyboard, no function keys, no arrow keys
|
||||
# 2 - Commodore 64 keyboard
|
||||
# 3 - Amiga keyboard
|
||||
# 4 - Atari800 keyboard
|
||||
TextInputKeyboard=
|
||||
|
||||
# Hack for broken devices: prevent audio chopping, by sleeping a bit after pushing each audio chunk (y)/(n)
|
||||
CompatibilityHacksPreventAudioChopping=n
|
||||
|
||||
@@ -148,6 +159,9 @@ AppUsesAccelerometer=n
|
||||
# Application uses gyroscope (y) or (n), the gyroscope will be used as joystick 1 axes 2-4
|
||||
AppUsesGyroscope=n
|
||||
|
||||
# Application uses orientation sensor (y) or (n), reported as joystick 1 axes 8-10
|
||||
AppUsesOrientationSensor=
|
||||
|
||||
# Use gyroscope to move mouse cursor (y) or (n), it eats battery, and can be disabled in settings, do not use with AppUsesGyroscope setting
|
||||
MoveMouseWithGyroscope=
|
||||
|
||||
@@ -159,7 +173,7 @@ AppUsesMultitouch=n
|
||||
# This option will add additional permission to Android manifest (y)/(n)
|
||||
AppRecordsAudio=n
|
||||
|
||||
# Application needs to access SD card. If your data files are bigger than 5 Mb, enable it. (y) / (n)
|
||||
# Application needs to access SD card. Always disable it, unless you want to access user photos and downloads. (y) / (n)
|
||||
AccessSdCard=n
|
||||
|
||||
# Application needs Internet access. If you disable it, you'll have to bundle all your data files inside .apk (y) / (n)
|
||||
@@ -196,6 +210,11 @@ RedefinedKeysScreenKbNames="LALT RETURN KP_PLUS KP_MINUS SPACE DELETE KP_PLUS KP
|
||||
# 2 = Sun by Sirea (yellow, with round joystick)
|
||||
# 3 = Keen by Gerstrong (multicolor, with round joystick)
|
||||
# 4 = Retro by Santiago Radeff (red/white, with cross joystick)
|
||||
# 5 = GameBoy from RetroArch
|
||||
# 6 = PlayStation from RetroArch
|
||||
# 7 = SuperNintendo from RetroArch
|
||||
# 8 = DualShock from RetroArch
|
||||
# 9 = Nintendo64 from RetroArch
|
||||
TouchscreenKeysTheme=2
|
||||
|
||||
# Redefine gamepad keys to SDL keysyms, button order is:
|
||||
@@ -206,24 +225,24 @@ RedefinedKeysGamepad="LALT RETURN KP_PLUS KP_MINUS MOUSE_RIGHT MOUSE_LEFT SPACE
|
||||
StartupMenuButtonTimeout=3000
|
||||
|
||||
# Menu items to hide from startup menu, available menu items:
|
||||
# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced
|
||||
# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.CommandlineConfig SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced
|
||||
HiddenMenuOptions='SettingsMenuMouse.DisplaySizeConfig'
|
||||
|
||||
# Menu items to show at startup - this is Java code snippet, leave empty for default
|
||||
# new SettingsMenuMisc.ShowReadme(), (AppUsesMouse \&\& \! ForceRelativeMouseMode \? new SettingsMenuMouse.DisplaySizeConfig(true) : new SettingsMenu.DummyMenu()), new SettingsMenuMisc.OptionalDownloadConfig(true), new SettingsMenuMisc.GyroscopeCalibration()
|
||||
# Available menu items:
|
||||
# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced
|
||||
# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.CommandlineConfig SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced
|
||||
FirstStartMenuOptions='SettingsMenuMisc.OptionalDownloadConfig'
|
||||
|
||||
# Minimum amount of RAM application requires, in Mb, SDL will print warning to user if it's lower
|
||||
AppMinimumRAM=0
|
||||
|
||||
# GCC version, 4.6 (default) or 4.8, CLANG is not supported yet
|
||||
NDK_TOOLCHAIN_VERSION=
|
||||
# GCC version, or 'clang' for CLANG
|
||||
NDK_TOOLCHAIN_VERSION=clang
|
||||
|
||||
# Specify architectures to compile, 'all' or 'y' to compile for all architectures.
|
||||
# Available architectures: armeabi armeabi-v7a armeabi-v7a-hard x86 mips
|
||||
MultiABI='armeabi-v7a x86'
|
||||
# Available architectures: armeabi armeabi-v7a x86 mips arm64-v8a x86_64
|
||||
MultiABI='armeabi armeabi-v7a x86 mips'
|
||||
|
||||
# Optional shared libraries to compile - removing some of them will save space
|
||||
# MP3 support by libMAD is encumbered by patents and libMAD is GPL-ed
|
||||
|
||||
@@ -15,10 +15,14 @@ export ARCH=$1
|
||||
[ -e openttd-$VER-$1/Makefile ] || {
|
||||
rm -f src/src/rev.cpp
|
||||
env PATH=$LOCAL_PATH/..:$PATH \
|
||||
../setEnvironment-$1.sh sh -c "cd openttd-$VER-$1 && env ../src/configure --host=$2 --with-sdl --with-freetype --with-png --with-zlib --with-icu --with-libtimidity --with-lzo2=$LOCAL_PATH/../../../obj/local/$ARCH/liblzo2.so --prefix-dir='.' --data-dir='' --without-allegro --with-fontconfig --with-lzma --endian=LE"
|
||||
env CLANG=1 ../setEnvironment-$1.sh sh -c "cd openttd-$VER-$1 && env ../src/configure --with-sdl --with-freetype --with-png --with-zlib --with-icu --with-libtimidity --with-lzo2=$LOCAL_PATH/../../../obj/local/$ARCH/liblzo2.so --prefix-dir='.' --data-dir='' --without-allegro --with-fontconfig --with-lzma --endian=LE"
|
||||
} || exit 1
|
||||
|
||||
NCPU=4
|
||||
uname -s | grep -i "linux" > /dev/null && NCPU=`cat /proc/cpuinfo | grep -c -i processor`
|
||||
|
||||
../setEnvironment-$1.sh sh -c "cd openttd-$VER-$1 && make -j$NCPU VERBOSE=1 STRIP='' LIBS='-lsdl-1.2 -llzo2 -lpng -ltimidity -lfreetype -lfontconfig -lexpat -licui18n -liculx -licule -licuuc -licudata -lgcc -lz -lc -lgnustl_static -lsupc++'" && cp -f openttd-$VER-$1/objs/release/openttd libapplication-$1.so || exit 1
|
||||
# clang arm hack
|
||||
LIBATOMIC=
|
||||
echo $1 | grep 'arm' && LIBATOMIC=-latomic
|
||||
|
||||
env CLANG=1 LIBATOMIC=$LIBATOMIC ../setEnvironment-$1.sh sh -c "cd openttd-$VER-$1 && make -j$NCPU VERBOSE=1 STRIP='' LIBS='-lsdl-1.2 -llzo2 -lpng -ltimidity -lfreetype -lfontconfig -lexpat -licui18n -liculx -licule -licuuc -licudata -lgcc -lz -lc -lgnustl_static -lsupc++ $LIBATOMIC'" && cp -f openttd-$VER-$1/objs/release/openttd libapplication-$1.so || exit 1
|
||||
|
||||
@@ -7,10 +7,10 @@ AppName="Pachi el marciano"
|
||||
AppFullName=net.sourceforge.dragontech.pachi
|
||||
|
||||
# Application version code (integer)
|
||||
AppVersionCode=1071
|
||||
AppVersionCode=1078
|
||||
|
||||
# Application user-visible version name (string)
|
||||
AppVersionName="1.07-mips"
|
||||
AppVersionName="1.07-x86"
|
||||
|
||||
# Specify path to download application data in zip archive in the form 'Description|URL|MirrorURL^Description2|URL2|MirrorURL2^...'
|
||||
# If you'll start Description with '!' symbol it will be enabled by default, other downloads should be selected by user from startup config menu
|
||||
@@ -242,7 +242,7 @@ NDK_TOOLCHAIN_VERSION=
|
||||
|
||||
# Specify architectures to compile, 'all' or 'y' to compile for all architectures.
|
||||
# Available architectures: armeabi armeabi-v7a armeabi-v7a-hard x86 mips
|
||||
MultiABI='mips'
|
||||
MultiABI='armeabi-v7a'
|
||||
|
||||
# Optional shared libraries to compile - removing some of them will save space
|
||||
# MP3 support by libMAD is encumbered by patents and libMAD is GPL-ed
|
||||
@@ -272,7 +272,7 @@ AppCmdline=''
|
||||
|
||||
# Screen size is used by Google Play to prevent an app to be installed on devices with smaller screens
|
||||
# Minimum screen size that application supports: (s)mall / (m)edium / (l)arge
|
||||
MinimumScreenSize=n
|
||||
MinimumScreenSize=s
|
||||
|
||||
# Your AdMob Publisher ID, (n) if you don't want advertisements
|
||||
AdmobPublisherId=n
|
||||
|
||||
@@ -88,11 +88,21 @@ while test $# -gt 0; do
|
||||
--cflags)
|
||||
echo -I${prefix}/include
|
||||
;;
|
||||
--libs)
|
||||
echo -l$PKG
|
||||
;;
|
||||
--static-libs)
|
||||
echo -l$PKG
|
||||
--libs|--static-libs)
|
||||
case $PKG in
|
||||
curl|libcurl)
|
||||
echo -lcurl-sdl -l:libssl.so.sdl.0.so -l:libcrypto.so.sdl.0.so
|
||||
;;
|
||||
crypto|libcrypto)
|
||||
echo -l:libcrypto.so.sdl.0.so
|
||||
;;
|
||||
openssl|ssl|libssl)
|
||||
echo -l:libssl.so.sdl.0.so -l:libcrypto.so.sdl.0.so
|
||||
;;
|
||||
*)
|
||||
echo -l$PKG
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
|
||||
@@ -21,7 +21,7 @@ NDK=`readlink -f $NDK`
|
||||
#echo NDK $NDK
|
||||
GCCPREFIX=aarch64-linux-android
|
||||
[ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9
|
||||
[ -z "$PLATFORMVER" ] && PLATFORMVER=android-21
|
||||
[ -z "$PLATFORMVER" ] && PLATFORMVER=android-24
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
@@ -90,21 +90,43 @@ $SHARED \
|
||||
-L$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/libs/$ARCH \
|
||||
-lgnustl_static \
|
||||
-no-canonical-prefixes $UNRESOLVED -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now \
|
||||
-Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings \
|
||||
-lsupc++ \
|
||||
$MISSING_LIB $LDFLAGS"
|
||||
|
||||
#echo env CFLAGS=\""$CFLAGS"\" LDFLAGS=\""$LDFLAGS"\" "$@"
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc"
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++"
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS"
|
||||
|
||||
if [ -n "$CLANG" ]; then
|
||||
|
||||
CFLAGS="\
|
||||
-gcc-toolchain $NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-target aarch64-none-linux-android -Wno-invalid-command-line-argument -Wno-unused-command-line-argument \
|
||||
$CFLAGS"
|
||||
|
||||
LDFLAGS="$LDFLAGS \
|
||||
-lgcc \
|
||||
-latomic \
|
||||
-gcc-toolchain $NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-target aarch64-none-linux-android"
|
||||
|
||||
CC="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang"
|
||||
CXX="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang++"
|
||||
CPP="$CC -E $CFLAGS"
|
||||
|
||||
fi
|
||||
|
||||
env PATH=$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS -frtti -fexceptions" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
CC="$CC" \
|
||||
CXX="$CXX" \
|
||||
RANLIB="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ranlib" \
|
||||
LD="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
LD="$CXX" \
|
||||
AR="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ar" \
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS" \
|
||||
CPP="$CPP" \
|
||||
NM="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-nm" \
|
||||
AS="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-as" \
|
||||
STRIP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-strip" \
|
||||
|
||||
@@ -1,112 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
IFS='
|
||||
'
|
||||
|
||||
MYARCH=linux-x86_64
|
||||
if uname -s | grep -i "linux" > /dev/null ; then
|
||||
MYARCH=linux-x86_64
|
||||
fi
|
||||
if uname -s | grep -i "darwin" > /dev/null ; then
|
||||
MYARCH=darwin-x86_64
|
||||
fi
|
||||
if uname -s | grep -i "windows" > /dev/null ; then
|
||||
MYARCH=windows-x86_64
|
||||
fi
|
||||
|
||||
NDK=`which ndk-build`
|
||||
NDK=`dirname $NDK`
|
||||
NDK=`readlink -f $NDK`
|
||||
|
||||
#echo NDK $NDK
|
||||
GCCPREFIX=arm-linux-androideabi
|
||||
[ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9
|
||||
[ -z "$PLATFORMVER" ] && PLATFORMVER=android-14
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
else
|
||||
LOCAL_PATH=`cd $LOCAL_PATH && pwd`
|
||||
fi
|
||||
ARCH=armeabi-v7a-hard
|
||||
|
||||
APP_MODULES=`grep 'APP_MODULES [:][=]' $LOCAL_PATH/../Settings.mk | sed 's@.*[=]\(.*\)@\1@'`
|
||||
APP_AVAILABLE_STATIC_LIBS=`grep 'APP_AVAILABLE_STATIC_LIBS [:][=]' $LOCAL_PATH/../Settings.mk | sed 's@.*[=]\(.*\)@\1@'`
|
||||
APP_SHARED_LIBS=$(
|
||||
echo $APP_MODULES | xargs -n 1 echo | while read LIB ; do
|
||||
STATIC=`echo $APP_AVAILABLE_STATIC_LIBS application sdl_main stlport stdout-test | grep "\\\\b$LIB\\\\b"`
|
||||
if [ -n "$STATIC" ] ; then true
|
||||
else
|
||||
case $LIB in
|
||||
crypto) echo crypto.so.sdl.0;;
|
||||
ssl) echo ssl.so.sdl.0;;
|
||||
curl) echo curl-sdl;;
|
||||
*) echo $LIB;;
|
||||
esac
|
||||
fi
|
||||
done
|
||||
)
|
||||
|
||||
|
||||
MISSING_INCLUDE=
|
||||
MISSING_LIB=
|
||||
|
||||
CFLAGS="\
|
||||
-fpic -ffunction-sections -funwind-tables -fstack-protector \
|
||||
-no-canonical-prefixes -march=armv7-a -mhard-float -D_NDK_MATH_NO_SOFTFP=1 \
|
||||
-mfpu=vfpv3-d16 -mthumb -O2 -g -DNDEBUG \
|
||||
-fomit-frame-pointer -fno-strict-aliasing -finline-limit=300 \
|
||||
-DANDROID -Wall -Wno-unused -Wa,--noexecstack -Wformat -Werror=format-security \
|
||||
-isystem$NDK/platforms/$PLATFORMVER/arch-arm/usr/include \
|
||||
-isystem$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/include \
|
||||
-isystem$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/libs/$ARCH/include \
|
||||
-isystem$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/include/backward \
|
||||
-isystem$LOCAL_PATH/../sdl-1.2/include \
|
||||
`echo $APP_MODULES | sed \"s@\([-a-zA-Z0-9_.]\+\)@-isystem$LOCAL_PATH/../\1/include@g\"` \
|
||||
$MISSING_INCLUDE $CFLAGS"
|
||||
|
||||
if [ -z "$SHARED_LIBRARY_NAME" ]; then
|
||||
SHARED_LIBRARY_NAME=libapplication.so
|
||||
fi
|
||||
UNRESOLVED="-Wl,--no-undefined"
|
||||
SHARED="-shared -Wl,-soname,$SHARED_LIBRARY_NAME"
|
||||
if [ -n "$BUILD_EXECUTABLE" ]; then
|
||||
SHARED="-Wl,--gc-sections -Wl,-z,nocopyreloc -pie"
|
||||
fi
|
||||
if [ -n "$NO_SHARED_LIBS" ]; then
|
||||
APP_SHARED_LIBS=
|
||||
fi
|
||||
if [ -n "$ALLOW_UNRESOLVED_SYMBOLS" ]; then
|
||||
UNRESOLVED=
|
||||
fi
|
||||
|
||||
LDFLAGS="\
|
||||
$SHARED \
|
||||
--sysroot=$NDK/platforms/$PLATFORMVER/arch-arm \
|
||||
-L$LOCAL_PATH/../../obj/local/$ARCH \
|
||||
`echo $APP_SHARED_LIBS | sed \"s@\([-a-zA-Z0-9_.]\+\)@$LOCAL_PATH/../../obj/local/$ARCH/lib\1.so@g\"` \
|
||||
-L$NDK/platforms/$PLATFORMVER/arch-arm/usr/lib \
|
||||
-lc -lGLESv1_CM -ldl -llog -lz \
|
||||
-Wl,--no-warn-mismatch -lm_hard \
|
||||
-L$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/libs/$ARCH \
|
||||
-lgnustl_static \
|
||||
-no-canonical-prefixes -march=armv7-a -Wl,--fix-cortex-a8 $UNRESOLVED -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now \
|
||||
-lsupc++ \
|
||||
$MISSING_LIB $LDFLAGS"
|
||||
|
||||
#echo env CFLAGS=\""$CFLAGS"\" LDFLAGS=\""$LDFLAGS"\" "$@"
|
||||
|
||||
env PATH=$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS -frtti -fexceptions" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
RANLIB="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ranlib" \
|
||||
LD="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
AR="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ar" \
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS" \
|
||||
NM="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-nm" \
|
||||
AS="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-as" \
|
||||
STRIP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-strip" \
|
||||
"$@"
|
||||
@@ -21,7 +21,7 @@ NDK=`readlink -f $NDK`
|
||||
#echo NDK $NDK
|
||||
GCCPREFIX=arm-linux-androideabi
|
||||
[ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9
|
||||
[ -z "$PLATFORMVER" ] && PLATFORMVER=android-14
|
||||
[ -z "$PLATFORMVER" ] && PLATFORMVER=android-24
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
@@ -52,7 +52,7 @@ MISSING_INCLUDE=
|
||||
MISSING_LIB=
|
||||
|
||||
CFLAGS="\
|
||||
-fpic -ffunction-sections -funwind-tables -fstack-protector \
|
||||
-fpic -ffunction-sections -funwind-tables -fstack-protector-strong \
|
||||
-no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp \
|
||||
-mfpu=vfpv3-d16 -mthumb -O2 -g -DNDEBUG \
|
||||
-fomit-frame-pointer -fno-strict-aliasing -finline-limit=300 \
|
||||
@@ -90,21 +90,43 @@ $SHARED \
|
||||
-L$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/libs/$ARCH \
|
||||
-lgnustl_static \
|
||||
-no-canonical-prefixes -march=armv7-a -Wl,--fix-cortex-a8 $UNRESOLVED -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now \
|
||||
-Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings \
|
||||
-lsupc++ \
|
||||
$MISSING_LIB $LDFLAGS"
|
||||
|
||||
#echo env CFLAGS=\""$CFLAGS"\" LDFLAGS=\""$LDFLAGS"\" "$@"
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc"
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++"
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS"
|
||||
|
||||
if [ -n "$CLANG" ]; then
|
||||
|
||||
CFLAGS="\
|
||||
-gcc-toolchain $NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-fno-integrated-as -target armv7-none-linux-androideabi -Wno-invalid-command-line-argument -Wno-unused-command-line-argument \
|
||||
$CFLAGS"
|
||||
|
||||
LDFLAGS="$LDFLAGS \
|
||||
-lgcc \
|
||||
-latomic \
|
||||
-gcc-toolchain $NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-target armv7-none-linux-androideabi"
|
||||
|
||||
CC="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang"
|
||||
CXX="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang++"
|
||||
CPP="$CC -E $CFLAGS"
|
||||
|
||||
fi
|
||||
|
||||
env PATH=$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS -frtti -fexceptions" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
CC="$CC" \
|
||||
CXX="$CXX" \
|
||||
RANLIB="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ranlib" \
|
||||
LD="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
LD="$CXX" \
|
||||
AR="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ar" \
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS" \
|
||||
CPP="$CPP" \
|
||||
NM="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-nm" \
|
||||
AS="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-as" \
|
||||
STRIP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-strip" \
|
||||
|
||||
@@ -21,7 +21,7 @@ NDK=`readlink -f $NDK`
|
||||
#echo NDK $NDK
|
||||
GCCPREFIX=mipsel-linux-android
|
||||
[ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9
|
||||
[ -z "$PLATFORMVER" ] && PLATFORMVER=android-14
|
||||
[ -z "$PLATFORMVER" ] && PLATFORMVER=android-24
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
@@ -53,10 +53,9 @@ MISSING_LIB=
|
||||
|
||||
CFLAGS="\
|
||||
-fpic -fno-strict-aliasing -finline-functions -ffunction-sections \
|
||||
-funwind-tables -fmessage-length=0 -fno-inline-functions-called-once \
|
||||
-fgcse-after-reload -frerun-cse-after-loop -frename-registers \
|
||||
-funwind-tables -fstack-protector-strong -fmessage-length=0 \
|
||||
-no-canonical-prefixes -O2 -g -DNDEBUG -fomit-frame-pointer \
|
||||
-funswitch-loops -finline-limit=300 \
|
||||
-funswitch-loops -finline-limit=300 -mips32 \
|
||||
-DANDROID -Wall -Wno-unused -Wa,--noexecstack -Wformat -Werror=format-security \
|
||||
-isystem$NDK/platforms/$PLATFORMVER/arch-mips/usr/include \
|
||||
-isystem$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/include \
|
||||
@@ -89,23 +88,44 @@ $SHARED \
|
||||
-L$NDK/platforms/$PLATFORMVER/arch-mips/usr/lib \
|
||||
-lc -lm -lGLESv1_CM -ldl -llog -lz \
|
||||
-L$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/libs/$ARCH \
|
||||
-lgnustl_static \
|
||||
-lgnustl_static -mips32 \
|
||||
-no-canonical-prefixes $UNRESOLVED -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now \
|
||||
-Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings \
|
||||
-lsupc++ \
|
||||
$MISSING_LIB $LDFLAGS"
|
||||
|
||||
#echo env CFLAGS=\""$CFLAGS"\" LDFLAGS=\""$LDFLAGS"\" "$@"
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc"
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++"
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS"
|
||||
|
||||
if [ -n "$CLANG" ]; then
|
||||
|
||||
CFLAGS="\
|
||||
-gcc-toolchain $NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-target mipsel-none-linux-android -Wno-invalid-command-line-argument -Wno-unused-command-line-argument \
|
||||
$CFLAGS"
|
||||
|
||||
LDFLAGS="$LDFLAGS \
|
||||
-lgcc \
|
||||
-gcc-toolchain $NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-target mipsel-none-linux-android"
|
||||
|
||||
CC="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang"
|
||||
CXX="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang++"
|
||||
CPP="$CC -E $CFLAGS"
|
||||
|
||||
fi
|
||||
|
||||
env PATH=$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS -frtti -fexceptions" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
CC="$CC" \
|
||||
CXX="$CXX" \
|
||||
RANLIB="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ranlib" \
|
||||
LD="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
LD="$CXX" \
|
||||
AR="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ar" \
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS" \
|
||||
CPP="$CPP" \
|
||||
NM="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-nm" \
|
||||
AS="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-as" \
|
||||
STRIP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-strip" \
|
||||
|
||||
@@ -21,7 +21,7 @@ NDK=`readlink -f $NDK`
|
||||
#echo NDK $NDK
|
||||
GCCPREFIX=i686-linux-android
|
||||
[ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9
|
||||
[ -z "$PLATFORMVER" ] && PLATFORMVER=android-14
|
||||
[ -z "$PLATFORMVER" ] && PLATFORMVER=android-24
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
@@ -53,7 +53,7 @@ MISSING_LIB=
|
||||
|
||||
CFLAGS="\
|
||||
-fpic -ffunction-sections -funwind-tables -no-canonical-prefixes \
|
||||
-fstack-protector -O2 -g -DNDEBUG \
|
||||
-fstack-protector-strong -O2 -g -DNDEBUG \
|
||||
-fomit-frame-pointer -fstrict-aliasing -funswitch-loops \
|
||||
-finline-limit=300 \
|
||||
-DANDROID -Wall -Wno-unused -Wa,--noexecstack -Wformat -Werror=format-security \
|
||||
@@ -90,21 +90,42 @@ $SHARED \
|
||||
-L$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/libs/$ARCH \
|
||||
-lgnustl_static \
|
||||
-no-canonical-prefixes $UNRESOLVED -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now \
|
||||
-Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings \
|
||||
-lsupc++ \
|
||||
$MISSING_LIB $LDFLAGS"
|
||||
|
||||
#echo env CFLAGS=\""$CFLAGS"\" LDFLAGS=\""$LDFLAGS"\" "$@"
|
||||
CC="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc"
|
||||
CXX="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++"
|
||||
CPP="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS"
|
||||
|
||||
if [ -n "$CLANG" ]; then
|
||||
|
||||
CFLAGS="\
|
||||
-gcc-toolchain $NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-target i686-none-linux-android -Wno-invalid-command-line-argument -Wno-unused-command-line-argument \
|
||||
$CFLAGS"
|
||||
|
||||
LDFLAGS="$LDFLAGS \
|
||||
-lgcc \
|
||||
-gcc-toolchain $NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-target i686-none-linux-android"
|
||||
|
||||
CC="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang"
|
||||
CXX="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang++"
|
||||
CPP="$CC -E $CFLAGS"
|
||||
|
||||
fi
|
||||
|
||||
env PATH=$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS -frtti -fexceptions" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
CC="$CC" \
|
||||
CXX="$CXX" \
|
||||
RANLIB="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ranlib" \
|
||||
LD="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
LD="$CXX" \
|
||||
AR="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ar" \
|
||||
CPP="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS" \
|
||||
CPP="$CPP" \
|
||||
NM="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-nm" \
|
||||
AS="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-as" \
|
||||
STRIP="$NDK/toolchains/$ARCH-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-strip" \
|
||||
|
||||
@@ -21,7 +21,7 @@ NDK=`readlink -f $NDK`
|
||||
#echo NDK $NDK
|
||||
GCCPREFIX=arm-linux-androideabi
|
||||
[ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9
|
||||
PLATFORMVER=android-14
|
||||
PLATFORMVER=android-24
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
@@ -52,7 +52,7 @@ MISSING_INCLUDE=
|
||||
MISSING_LIB=
|
||||
|
||||
CFLAGS="\
|
||||
-fpic -ffunction-sections -funwind-tables -fstack-protector \
|
||||
-fpic -ffunction-sections -funwind-tables -fstack-protector-strong \
|
||||
-no-canonical-prefixes -march=armv5te -mtune=xscale -msoft-float \
|
||||
-mthumb -O2 -g -DNDEBUG \
|
||||
-fomit-frame-pointer -fno-strict-aliasing -finline-limit=300 \
|
||||
@@ -90,21 +90,43 @@ $SHARED \
|
||||
-L$NDK/sources/cxx-stl/gnu-libstdc++/$NDK_TOOLCHAIN_VERSION/libs/$ARCH \
|
||||
-lgnustl_static \
|
||||
-no-canonical-prefixes $UNRESOLVED -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now \
|
||||
-Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings \
|
||||
-lsupc++ \
|
||||
$MISSING_LIB $LDFLAGS"
|
||||
|
||||
#echo env CFLAGS=\""$CFLAGS"\" LDFLAGS=\""$LDFLAGS"\" "$@"
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc"
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++"
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS"
|
||||
|
||||
if [ -n "$CLANG" ]; then
|
||||
|
||||
CFLAGS="\
|
||||
-gcc-toolchain $NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-target armv5te-none-linux-androideabi -Wno-invalid-command-line-argument -Wno-unused-command-line-argument \
|
||||
$CFLAGS"
|
||||
|
||||
LDFLAGS="$LDFLAGS \
|
||||
-lgcc \
|
||||
-latomic \
|
||||
-gcc-toolchain $NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH \
|
||||
-target armv5te-none-linux-androideabi"
|
||||
|
||||
CC="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang"
|
||||
CXX="$NDK/toolchains/llvm/prebuilt/$MYARCH/bin/clang++"
|
||||
CPP="$CC -E $CFLAGS"
|
||||
|
||||
fi
|
||||
|
||||
env PATH=$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS -frtti -fexceptions" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
CC="$CC" \
|
||||
CXX="$CXX" \
|
||||
RANLIB="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ranlib" \
|
||||
LD="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
LD="$CXX" \
|
||||
AR="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-ar" \
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS" \
|
||||
CPP="$CPP" \
|
||||
NM="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-nm" \
|
||||
AS="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-as" \
|
||||
STRIP="$NDK/toolchains/$GCCPREFIX-$NDK_TOOLCHAIN_VERSION/prebuilt/$MYARCH/bin/$GCCPREFIX-strip" \
|
||||
|
||||
@@ -4,13 +4,13 @@ CURDIR=`pwd`
|
||||
|
||||
PACKAGE_NAME=`grep AppFullName AndroidAppSettings.cfg | sed 's/.*=//'`
|
||||
|
||||
[ -e pulseaudio/android-build.sh ] && {
|
||||
if [ -e pulseaudio/android-build.sh ]; then
|
||||
[ -e pulseaudio/$1/install/bin/pulseaudio ] || {
|
||||
cd pulseaudio
|
||||
./android-build.sh || exit 1
|
||||
cd ..
|
||||
} || exit 1
|
||||
} || exit 1
|
||||
fi
|
||||
|
||||
../setEnvironment-$1.sh sh -c '\
|
||||
$CC $CFLAGS -Werror=format -c main.c -o main-'"$1.o" || exit 1
|
||||
@@ -72,7 +72,7 @@ xkb/.libs/libxkbstubs.a \
|
||||
composite/.libs/libcomposite.a \
|
||||
os/.libs/libos.a \
|
||||
hw/kdrive/linux/.libs/liblinux.a \
|
||||
-lpixman-1 -lXfont -lXau -lXdmcp -lfontenc -lts -lfreetype -landroid-shmem -lcrypto' \
|
||||
-lpixman-1 -lXfont -lXau -lXdmcp -lfontenc -lts -lfreetype -landroid-shmem -l:libcrypto.so.sdl.0.so' \
|
||||
|| exit 1
|
||||
|
||||
rm -rf $CURDIR/tmp-$1
|
||||
|
||||
Submodule project/jni/application/xserver/pulseaudio updated: f04d541277...37ce31ed32
Submodule project/jni/application/xserver/xserver updated: ad7ad4873d...6ea1ce707b
@@ -7,7 +7,7 @@ LOCAL_MODULE_FILENAME := lib$(notdir $(LOCAL_PATH)).so.sdl.0 # It clashes with s
|
||||
|
||||
|
||||
ifneq (openssl,$(LOCAL_MODULE))
|
||||
ifneq ($(filter arm mips x86, $(TARGET_ARCH)),)
|
||||
ifneq ($(filter arm mips x86 arm64, $(TARGET_ARCH)),)
|
||||
|
||||
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
|
||||
LOCAL_SRC_FILES := lib-$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).so.sdl.0.so
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
ARCH_LIST="x86 mips armeabi-v7a armeabi"
|
||||
ARCH_LIST="arm64-v8a x86 mips armeabi-v7a armeabi"
|
||||
|
||||
mkdir -p build
|
||||
|
||||
@@ -11,6 +11,8 @@ build() {
|
||||
CONFIGURE_ARCH=android-armv7;;
|
||||
armeabi)
|
||||
CONFIGURE_ARCH=android;;
|
||||
arm64-v8a)
|
||||
CONFIGURE_ARCH=android;;
|
||||
*)
|
||||
CONFIGURE_ARCH=android-$ARCH;;
|
||||
esac
|
||||
|
||||
BIN
project/jni/openssl/lib-arm64-v8a/libcrypto.so.sdl.0.so
Executable file
BIN
project/jni/openssl/lib-arm64-v8a/libcrypto.so.sdl.0.so
Executable file
Binary file not shown.
BIN
project/jni/openssl/lib-arm64-v8a/libssl.so.sdl.0.so
Executable file
BIN
project/jni/openssl/lib-arm64-v8a/libssl.so.sdl.0.so
Executable file
Binary file not shown.
81
project/jni/openssl/setCrossEnvironment-arm64-v8a.sh
Executable file
81
project/jni/openssl/setCrossEnvironment-arm64-v8a.sh
Executable file
@@ -0,0 +1,81 @@
|
||||
#!/bin/sh
|
||||
|
||||
IFS='
|
||||
'
|
||||
|
||||
MYARCH=linux-x86_64
|
||||
if uname -s | grep -i "linux" > /dev/null ; then
|
||||
MYARCH=linux-x86_64
|
||||
fi
|
||||
if uname -s | grep -i "darwin" > /dev/null ; then
|
||||
MYARCH=darwin-x86_64
|
||||
fi
|
||||
if uname -s | grep -i "windows" > /dev/null ; then
|
||||
MYARCH=windows-x86_64
|
||||
fi
|
||||
|
||||
NDK=`which ndk-build`
|
||||
NDK=`dirname $NDK`
|
||||
NDK=`readlink -f $NDK`
|
||||
|
||||
[ -z "$NDK" ] && { echo "You need Andorid NDK r8 or newer installed to run this script" ; exit 1 ; }
|
||||
GCCPREFIX=aarch64-linux-android
|
||||
GCCVER=${GCCVER:-4.9}
|
||||
PLATFORMVER=${PLATFORMVER:-android-24}
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
else
|
||||
LOCAL_PATH=`cd $LOCAL_PATH && pwd`
|
||||
fi
|
||||
ARCH=arm64-v8a
|
||||
|
||||
CFLAGS="\
|
||||
-fpic -ffunction-sections -funwind-tables -fstack-protector-strong \
|
||||
-no-canonical-prefixes \
|
||||
-O2 -g -DNDEBUG \
|
||||
-fomit-frame-pointer -fno-strict-aliasing -finline-limit=300 \
|
||||
-DANDROID -Wall -Wno-unused -Wa,--noexecstack -Wformat -Werror=format-security \
|
||||
-isystem$NDK/platforms/$PLATFORMVER/arch-arm64/usr/include \
|
||||
-isystem$NDK/sources/cxx-stl/gnu-libstdc++/$GCCVER/include \
|
||||
-isystem$NDK/sources/cxx-stl/gnu-libstdc++/$GCCVER/libs/$ARCH/include \
|
||||
$CFLAGS"
|
||||
|
||||
UNRESOLVED="-Wl,--no-undefined"
|
||||
SHARED="-Wl,--gc-sections -Wl,-z,nocopyreloc"
|
||||
if [ -n "$BUILD_LIBRARY" ]; then
|
||||
[ -z "$SHARED_LIBRARY_NAME" ] && SHARED_LIBRARY_NAME=libapplication.so
|
||||
SHARED="-shared -Wl,-soname,$SHARED_LIBRARY_NAME"
|
||||
fi
|
||||
if [ -n "$ALLOW_UNRESOLVED_SYMBOLS" ]; then
|
||||
UNRESOLVED=
|
||||
fi
|
||||
|
||||
LDFLAGS="\
|
||||
$SHARED \
|
||||
--sysroot=$NDK/platforms/$PLATFORMVER/arch-arm64 \
|
||||
-L$NDK/platforms/$PLATFORMVER/arch-arm64/usr/lib \
|
||||
-lc -lm -ldl -lz \
|
||||
-L$NDK/sources/cxx-stl/gnu-libstdc++/$GCCVER/libs/$ARCH \
|
||||
-lgnustl_static \
|
||||
-no-canonical-prefixes $UNRESOLVED -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now \
|
||||
-Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings \
|
||||
-lsupc++ \
|
||||
$LDFLAGS"
|
||||
|
||||
env PATH=$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
ANDROID_DEV=$NDK/platforms/$PLATFORMVER/arch-arm64/usr \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
RANLIB="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-ranlib" \
|
||||
LD="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-ld" \
|
||||
AR="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-ar" \
|
||||
CPP="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp $CFLAGS" \
|
||||
CXXCPP="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-cpp -x c++ $CFLAGS" \
|
||||
NM="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-nm" \
|
||||
AS="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-as" \
|
||||
STRIP="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-strip" \
|
||||
"$@"
|
||||
@@ -21,7 +21,7 @@ NDK=`readlink -f $NDK`
|
||||
[ -z "$NDK" ] && { echo "You need Andorid NDK r8 or newer installed to run this script" ; exit 1 ; }
|
||||
GCCPREFIX=arm-linux-androideabi
|
||||
GCCVER=${GCCVER:-4.9}
|
||||
PLATFORMVER=${PLATFORMVER:-android-14}
|
||||
PLATFORMVER=${PLATFORMVER:-android-24}
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
|
||||
@@ -21,7 +21,7 @@ NDK=`readlink -f $NDK`
|
||||
[ -z "$NDK" ] && { echo "You need Andorid NDK r8 or newer installed to run this script" ; exit 1 ; }
|
||||
GCCPREFIX=arm-linux-androideabi
|
||||
GCCVER=${GCCVER:-4.9}
|
||||
PLATFORMVER=${PLATFORMVER:-android-14}
|
||||
PLATFORMVER=${PLATFORMVER:-android-24}
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
|
||||
@@ -21,7 +21,7 @@ NDK=`readlink -f $NDK`
|
||||
[ -z "$NDK" ] && { echo "You need Andorid NDK r8 or newer installed to run this script" ; exit 1 ; }
|
||||
GCCPREFIX=mipsel-linux-android
|
||||
GCCVER=${GCCVER:-4.9}
|
||||
PLATFORMVER=${PLATFORMVER:-android-14}
|
||||
PLATFORMVER=${PLATFORMVER:-android-24}
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
|
||||
@@ -21,7 +21,7 @@ NDK=`readlink -f $NDK`
|
||||
[ -z "$NDK" ] && { echo "You need Andorid NDK r8 or newer installed to run this script" ; exit 1 ; }
|
||||
GCCPREFIX=i686-linux-android
|
||||
GCCVER=${GCCVER:-4.9}
|
||||
PLATFORMVER=${PLATFORMVER:-android-14}
|
||||
PLATFORMVER=${PLATFORMVER:-android-24}
|
||||
LOCAL_PATH=`dirname $0`
|
||||
if which realpath > /dev/null ; then
|
||||
LOCAL_PATH=`realpath $LOCAL_PATH`
|
||||
|
||||
@@ -134,6 +134,9 @@ enum {
|
||||
/* Set SDL Android-specifc option, such as video depth or mouse emulation mode. Most options require restarting the app. */
|
||||
extern DECLSPEC void SDLCALL SDL_ANDROID_SetConfigOption(int option, int value);
|
||||
|
||||
/* Show runtime permission dialog for accessing SD card on Android 6.0 and above */
|
||||
extern DECLSPEC void SDLCALL SDL_ANDROID_RequestExternalStorageRuntimePermission();
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -88,6 +88,7 @@ static jmethodID JavaRequestCloudLoad = NULL;
|
||||
static jmethodID JavaRequestOpenExternalApp = NULL;
|
||||
static jmethodID JavaRequestRestartMyself = NULL;
|
||||
static jmethodID JavaRequestSetConfigOption = NULL;
|
||||
static jmethodID JavaRequestExternalStorageRuntimePermission = NULL;
|
||||
static int glContextLost = 0;
|
||||
static int showScreenKeyboardDeferred = 0;
|
||||
static const char * showScreenKeyboardOldText = "";
|
||||
@@ -361,6 +362,7 @@ JAVA_EXPORT_NAME(DemoRenderer_nativeInitJavaCallbacks) ( JNIEnv* env, jobject t
|
||||
JavaRequestOpenExternalApp = (*JavaEnv)->GetMethodID(JavaEnv, JavaRendererClass, "openExternalApp", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V");
|
||||
JavaRequestRestartMyself = (*JavaEnv)->GetMethodID(JavaEnv, JavaRendererClass, "restartMyself", "(Ljava/lang/String;)V");
|
||||
JavaRequestSetConfigOption = (*JavaEnv)->GetMethodID(JavaEnv, JavaRendererClass, "setConfigOptionFromSDL", "(II)V");
|
||||
JavaRequestExternalStorageRuntimePermission = (*JavaEnv)->GetMethodID(JavaEnv, JavaRendererClass, "requestExternalStorageRuntimePermissionFromSDL", "()V");
|
||||
|
||||
ANDROID_InitOSKeymap();
|
||||
}
|
||||
@@ -607,6 +609,11 @@ void SDLCALL SDL_ANDROID_OpenExternalWebBrowser(const char *url)
|
||||
SDL_ANDROID_OpenExternalApp(NULL, NULL, url);
|
||||
}
|
||||
|
||||
void SDLCALL SDL_ANDROID_RequestExternalStorageRuntimePermission()
|
||||
{
|
||||
(*JavaEnv)->CallVoidMethod( JavaEnv, JavaRenderer, JavaRequestExternalStorageRuntimePermission );
|
||||
}
|
||||
|
||||
// Dummy callback for SDL2 to satisfy linker
|
||||
extern void SDL_Android_Init(JNIEnv* env, jclass cls);
|
||||
void SDL_Android_Init(JNIEnv* env, jclass cls)
|
||||
|
||||
Reference in New Issue
Block a user