Skip to content

Commit 83f2f0c

Browse files
committed
Merge remote-tracking branch 'upstream/develop-9.0' into merge-develop_9.0_21.06.18
2 parents 44e0ba7 + 72c3776 commit 83f2f0c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+763
-510
lines changed

builder/builder_utilities.livecodescript

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
script "BuilderUtilities"
22

33
constant kMergExtVersion = "2018-6-4"
4-
constant kTSNetVersion = "1.3.5"
4+
constant kTSNetVersion = "1.3.6"
55

66
local sEngineDir
77
local sWorkDir

config.py

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
BUILDBOT_PLATFORM_TRIPLES = (
2626
'x86-linux-debian8',
2727
'x86_64-linux-debian8',
28-
'armv6-android-api9',
28+
'armv6-android-api26',
2929
'universal-mac-macosx10.9', # Minimum deployment target
3030
'universal-ios-iphoneos11.4',
3131
'universal-ios-iphoneos11.2',
@@ -121,7 +121,8 @@ def process_env_options(opts):
121121
'WIN_MSVS_VERSION', 'XCODE_TARGET_SDK', 'XCODE_HOST_SDK',
122122
'TARGET_ARCH', 'PERL', 'ANDROID_NDK_VERSION', 'ANDROID_PLATFORM',
123123
'ANDROID_SDK', 'ANDROID_NDK', 'ANDROID_BUILD_TOOLS',
124-
'ANDROID_TOOLCHAIN', 'AR', 'CC', 'CXX', 'LINK', 'OBJCOPY', 'OBJDUMP',
124+
'ANDROID_TOOLCHAIN', 'ANDROID_API_VERSION',
125+
'AR', 'CC', 'CXX', 'LINK', 'OBJCOPY', 'OBJDUMP',
125126
'STRIP', 'JAVA_SDK', 'NODE_JS', 'BUILD_EDITION',
126127
'MS_SPEECH_SDK5', 'QUICKTIME_SDK',
127128
)
@@ -412,18 +413,23 @@ def guess_android_build_tools(sdkdir):
412413

413414
def validate_android_tools(opts):
414415
if opts['ANDROID_NDK_VERSION'] is None:
415-
opts['ANDROID_NDK_VERSION'] = 'r14'
416+
opts['ANDROID_NDK_VERSION'] = 'r15'
416417

417418
ndk_ver = opts['ANDROID_NDK_VERSION']
418-
if opts['ANDROID_PLATFORM'] is None:
419-
opts['ANDROID_PLATFORM'] = 'android-19'
420-
421419
if opts['ANDROID_NDK'] is None:
422420
ndk = guess_android_tooldir('android-ndk')
423421
if ndk is None:
424422
error('Android NDK not found; set $ANDROID_NDK')
425423
opts['ANDROID_NDK'] = ndk
426424

425+
if opts['ANDROID_API_VERSION'] is None:
426+
opts['ANDROID_API_VERSION'] = '26'
427+
428+
api_ver = opts['ANDROID_API_VERSION']
429+
430+
if opts['ANDROID_PLATFORM'] is None:
431+
opts['ANDROID_PLATFORM'] = 'android-' + api_ver
432+
427433
if opts['ANDROID_SDK'] is None:
428434
sdk = guess_android_tooldir('android-sdk')
429435
if sdk is None:
@@ -532,6 +538,7 @@ def configure_android(opts):
532538

533539
export_opts(opts, ('ANDROID_BUILD_TOOLS', 'ANDROID_NDK',
534540
'ANDROID_PLATFORM', 'ANDROID_SDK',
541+
'ANDROID_API_VERSION',
535542
'JAVA_SDK', 'AR', 'CC', 'CXX', 'LINK', 'OBJCOPY',
536543
'OBJDUMP', 'STRIP'))
537544
args = core_gyp_args(opts) + ['-Dtarget_arch=' + opts['TARGET_ARCH'],

config/android.gypi

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
'java_sdk_path%': '<!(echo ${JAVA_SDK})',
99
'android_sdk_path%': '<!(echo ${ANDROID_SDK})',
1010
'android_ndk_path%': '<!(echo ${ANDROID_NDK})',
11+
'android_api_version%': '<!(echo ${ANDROID_API_VERSION})',
1112
'android_platform%': '<!(echo ${ANDROID_PLATFORM})',
1213
'android_build_tools%': '<!(echo ${ANDROID_BUILD_TOOLS})',
1314
},
@@ -29,6 +30,7 @@
2930
'strip': '<!(echo ${STRIP:-strip})',
3031

3132
'android_ndk_path%': '<(android_ndk_path)',
33+
'android_api_version%': '<(android_api_version)',
3234
},
3335

3436
'target_defaults':

docs/development/build-android.md

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@ Extract both the NDK and SDK to a suitable directory, e.g. `~/android/toolchain`
2222
mkdir -p ~/android/toolchain/android-sdk-linux
2323
cd ~/android/toolchain
2424

25-
wget https://dl.google.com/android/repository/android-ndk-r14-linux-x86_64.zip
25+
wget https://dl.google.com/android/repository/android-ndk-r15-linux-x86_64.zip
2626
wget https://dl.google.com/android/repository/tools_r25.2.3-linux.zip
2727

28-
unzip android-ndk-r14-linux-x86_64.zip
28+
unzip android-ndk-r15-linux-x86_64.zip
2929

3030
pushd android-sdk-linux
3131
unzip tools_r25.2.3-linux.zip
@@ -41,19 +41,20 @@ Update the SDK:
4141
Create a standalone toolchain (this simplifies setting up the build environment):
4242

4343
````bash
44+
<<<<<<< HEAD
4445
android-ndk-r14/build/tools/make_standalone_toolchain.py \
4546
--arch arm --api 19 \
47+
=======
48+
android-ndk-r15/build/tools/make_standalone_toolchain.py \
49+
--arch arm --api 26 \
50+
>>>>>>> upstream/develop-9.0
4651
--install-dir ${HOME}/android/toolchain/standalone
4752
````
4853

49-
**Note:** We currently use NDK API 9 for building the LiveCode Android engine and
50-
do not specify the '--stl' option as we currently require the C++ library (if used)
51-
to be statically linked into the executable.
52-
5354
Add a couple of symlinks to allow the engine configuration script to find the Android toolchain:
5455

5556
````bash
56-
ln -s android-ndk-r14 android-ndk
57+
ln -s android-ndk-r15 android-ndk
5758
ln -s android-sdk-linux android-sdk
5859
````
5960

@@ -72,7 +73,7 @@ TRIPLE=arm-linux-androideabi
7273
TOOLCHAIN=${HOME}/android/toolchain # Edit me!
7374

7475
# Java SDK
75-
JAVA_SDK=/usr/lib/jvm/java-7-openjdk-amd64/ # Edit me!
76+
JAVA_SDK=/usr/lib/jvm/java-8-openjdk-amd64/ # Edit me!
7677

7778
# Build tools
7879
BINDIR=$TOOLCHAIN/standalone/bin
@@ -84,17 +85,18 @@ LINK="${BINDIR}/${TRIPLE}-clang ${COMMON_FLAGS} -fuse-ld=bfd"
8485
AR="${BINDIR}/${TRIPLE}-ar"
8586

8687
# Android platform information
87-
ANDROID_NDK_VERSION=r14
88-
ANDROID_PLATFORM=android-19
89-
ANDROID_NDK=${TOOLCHAIN}/android-ndk-r14
88+
ANDROID_NDK_VERSION=r15
89+
ANDROID_API_VERSION=26
90+
ANDROID_PLATFORM=android-${ANDROID_API_VERSION}
91+
ANDROID_NDK=${TOOLCHAIN}/android-ndk-${ANDROID_NDK_VERSION}
9092
ANDROID_SDK=${TOOLCHAIN}/android-sdk-linux
91-
ANDROID_BUILD_TOOLS=25.0.2
93+
ANDROID_BUILD_TOOLS=27.0.3
9294
ANDROID_LIB_PATH=${TOOLCHAIN}/standalone/${TRIPLE}/lib
9395

9496
export JAVA_SDK
9597
export CC CXX LINK AR
9698
export ANDROID_PLATFORM ANDROID_NDK ANDROID_SDK ANDROID_BUILD_TOOLS
97-
export ANDROID_LIB_PATH
99+
export ANDROID_LIB_PATH ANDROID_API_VERSION
98100
````
99101

100102
### Generating makefiles

docs/guides/LiveCode Builder Language Reference.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1062,7 +1062,8 @@ Result expressions are not assignable.
10621062
: '[' [ <Elements: ExpressionList> ] ']'
10631063

10641064
A list expression evaluates all the elements in the expression list from
1065-
left to right and constructs a list value with them as elements.
1065+
left to right and constructs a list value with them as elements. Each
1066+
expression is converted to `optional any` when constructing the list.
10661067

10671068
The elements list is optional, so the empty list can be specified as
10681069
*[]*.
@@ -1080,7 +1081,8 @@ List expressions are not assignable.
10801081

10811082
An array expression evaluates all of the key and value expressions
10821083
from left to right, and constructs an **Array** value as appropriate.
1083-
Each key expression must evaluate to a **String**.
1084+
Each key expression must evaluate to a **String**. Each value expression
1085+
is converted to `optional any` when constructing the array.
10841086

10851087
The contents are optional, so the empty array can be written as `{}`.
10861088

docs/lcb/notes/20931.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# LiveCode Builder Virtual Machine
2+
## Array and list assign ops
3+
4+
Previously there was a difference between constructing a list or array
5+
using `push` or `put` and using list or array assigment expressions `[]`
6+
and `{}`, namely values were converted to `optional any` only in the
7+
latter case. For consistency, they are now converted in both cases.
8+
9+
# [20931] Values should bridge to optional any in array and list assign

docs/notes/bugfix-13266.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Ensure option menu works on Android
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Android: Fix crash on relaunch when calling extension handler from script

docs/notes/bugfix-19900.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Ensure tsNet external can be unloaded

docs/notes/bugfix-20550.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Update ExtVideoView module to compile against API 19

0 commit comments

Comments
 (0)