Skip to content

Commit 9a2fccd

Browse files
committed
Merge branch 'modular' of https://github.com/runrev/livecode-widgets into modular
2 parents 261ca37 + 65719a5 commit 9a2fccd

9 files changed

Lines changed: 694 additions & 7 deletions

File tree

docs/specs/livecode_builder_language_reference.md

Lines changed: 570 additions & 0 deletions
Large diffs are not rendered by default.

engine/Android.mk

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ LOCAL_PATH := $(call my-dir)
22

33
include $(CLEAR_VARS)
44

5+
DERIVED_SRC = ../_cache/mac/Debug/kernel.build/DerivedSources
6+
57
TARGET_PLATFORM=android-8
68

79
LOCAL_MODULE := revandroid-kernel
@@ -85,7 +87,10 @@ LOCAL_SRC_FILES := $(addprefix src/,\
8587
syntax.cpp \
8688
foundation-legacy.cpp legacy_spec.cpp \
8789
stacktile.cpp sysunxthreads.cpp \
88-
widget.cpp widget-events.cpp native-layer.cpp native-layer-android.cpp)
90+
widget.cpp widget-events.cpp native-layer.cpp native-layer-android.cpp \
91+
module-canvas.cpp module-engine.cpp modules.cpp \
92+
exec-extension.cpp exec-keywords.cpp) \
93+
$(DERIVED_SRC)/canvas.mlc.c $(DERIVED_SRC)/engine.mlc.c $(DERIVED_SRC)/widget.mlc.c
8994

9095
LOCAL_C_INCLUDES := \
9196
$(LOCAL_PATH)/include \
@@ -101,7 +106,9 @@ LOCAL_C_INCLUDES := \
101106
$(LOCAL_PATH)/../thirdparty/libskia/include/config \
102107
$(LOCAL_PATH)/../thirdparty/libskia/include/ports \
103108
$(LOCAL_PATH)/../thirdparty/libfreetype/include \
104-
$(LOCAL_PATH)/../thirdparty/libopenssl/include
109+
$(LOCAL_PATH)/../thirdparty/libopenssl/include \
110+
$(LOCAL_PATH)/../thirdparty/libffi/include \
111+
$(LOCAL_PATH)/../libscript/include
105112

106113
include $(BUILD_STATIC_LIBRARY)
107114

@@ -126,7 +133,8 @@ LOCAL_C_INCLUDES := \
126133

127134
LOCAL_CFLAGS := -DGL_GLEXT_PROTOTYPES=1
128135

129-
LOCAL_STATIC_LIBRARIES := librevandroid-kernel libfoundation libgraphics libjpeg libpcre libpng libgif libskia libfreetype libharfbuzz libexpat_static openssl
136+
LOCAL_GROUP_STATIC_LIBRARIES := true
137+
LOCAL_STATIC_LIBRARIES := librevandroid-kernel libscript libffi libfoundation libgraphics libjpeg libpcre libpng libgif libskia libfreetype libharfbuzz libexpat_static openssl
130138

131139
LOCAL_LDLIBS += -lz -lm -llog -ljnigraphics -lGLESv1_CM
132140

engine/src/mblandroiddc.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,10 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
5353

5454
#include "stacktile.cpp"
5555

56+
#include "script.h"
57+
58+
extern bool MCModulesInitialize();
59+
5660
////////////////////////////////////////////////////////////////////////////////
5761

5862
// Various globals depended on by other parts of the engine.
@@ -1789,6 +1793,8 @@ extern "C" JNIEXPORT void JNICALL Java_com_runrev_android_Engine_doKeyboardHidde
17891793
JNIEXPORT void JNICALL Java_com_runrev_android_Engine_doCreate(JNIEnv *env, jobject object, jobject activity, jobject container, jobject view)
17901794
{
17911795
MCInitialize();
1796+
MCModulesInitialize();
1797+
MCScriptInitialize();
17921798

17931799
MCLog("doCreate called", 0);
17941800

engine/src/mblflst.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ MCFontnode::MCFontnode(MCNameRef fname, uint2 &size, uint2 style)
8484
font -> descent = size * 2 / 14 + 1;
8585

8686
android_font_get_metrics(font -> fid, font->m_ascent, font->m_descent, font->m_leading, font->m_xheight);
87-
if (ceilf(font->m_ascent) + ceilf(font->m_descent) > p_size)
87+
if (ceilf(font->m_ascent) + ceilf(font->m_descent) > size)
8888
font -> ascent++;
8989

9090
#endif

engine/src/module-engine.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@
3333
#include "card.h"
3434
#include "redraw.h"
3535

36+
#include "module-engine.h"
37+
3638
////////////////////////////////////////////////////////////////////////////////
3739

3840
typedef struct __MCScriptObject *MCScriptObjectRef;

engine/src/module-engine.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,11 @@
2323

2424
typedef struct __MCScriptObject *MCScriptObjectRef;
2525

26+
extern "C"
27+
{
28+
extern MC_DLLEXPORT MCTypeInfoRef kMCEngineScriptObjectTypeInfo;
29+
}
30+
2631
bool MCScriptObjectCreate(MCObject *p_object, uint32_t p_part_id, MCScriptObjectRef& r_object);
2732

2833
////////////////////////////////////////////////////////////////////////////////

libfoundation/Android.mk

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,15 @@ LOCAL_SRC_FILES := src/foundation-array.cpp src/foundation-core.cpp src/foundati
1010
src/foundation-list.cpp src/foundation-name.cpp src/foundation-nativechars.cpp \
1111
src/foundation-number.cpp src/foundation-set.cpp src/foundation-stream.cpp \
1212
src/foundation-data.cpp src/foundation-string.cpp src/foundation-unicodechars.cpp src/foundation-value.cpp \
13-
src/foundation-error.cpp src/foundation-unicode.cpp src/foundation-locale.cpp src/foundation-text.cpp src/foundation-bidi.cpp
13+
src/foundation-error.cpp src/foundation-unicode.cpp src/foundation-locale.cpp src/foundation-text.cpp src/foundation-bidi.cpp \
14+
src/foundation-chunk.cpp src/foundation-filters.cpp src/foundation-foreign.cpp src/foundation-math.cpp \
15+
src/foundation-pickle.cpp src/foundation-proper-list.cpp src/foundation-record.cpp src/foundation-typeconvert.cpp \
16+
src/foundation-typeinfo.cpp src/foundation-handler.cpp
1417

1518
LOCAL_C_INCLUDES := \
1619
$(LOCAL_PATH)/include \
17-
$(LOCAL_PATH)/../prebuilt/include
20+
$(LOCAL_PATH)/../prebuilt/include \
21+
$(LOCAL_PATH)/../thirdparty/libffi/android/include
1822

1923
LOCAL_EXPORT_LDLIBS := -L$(LOCAL_PATH)/../prebuilt/lib/android/armv6 -licui18n -licuio -licule -liculx -licuuc -licudata
2024

libscript/Android.mk

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
##
2+
## Copyright (C) 2012 The Android Open Source Project
3+
##
4+
## Licensed under the Apache License, Version 2.0 (the "License");
5+
## you may not use this file except in compliance with the License.
6+
## You may obtain a copy of the License at
7+
##
8+
## http://www.apache.org/licenses/LICENSE-2.0
9+
##
10+
## Unless required by applicable law or agreed to in writing, software
11+
## distributed under the License is distributed on an "AS IS" BASIS,
12+
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
## See the License for the specific language governing permissions and
14+
## limitations under the License.
15+
##
16+
17+
LOCAL_PATH:= $(call my-dir)
18+
19+
include $(CLEAR_VARS)
20+
21+
DERIVED_SRC = ../_cache/mac/Debug/stdscript.build/DerivedSources
22+
23+
SCRIPT_SRC_FILES = \
24+
src/script-builder.cpp \
25+
src/script-instance.cpp \
26+
src/script-module.cpp \
27+
src/script-object.cpp \
28+
src/script-package.cpp \
29+
src/module-arithmetic.cpp \
30+
src/module-array.cpp \
31+
src/module-binary.cpp \
32+
src/module-bitwise.cpp \
33+
src/module-byte.cpp \
34+
src/module-char.cpp \
35+
src/module-encoding.cpp \
36+
src/module-file.cpp \
37+
src/module-list.cpp \
38+
src/module-logic.cpp \
39+
src/module-map.cpp \
40+
src/module-math_foundation.cpp \
41+
src/module-math.cpp \
42+
src/module-sort.cpp \
43+
src/module-string.cpp \
44+
src/module-type_convert.cpp \
45+
src/module-type.cpp \
46+
src/module-url.cpp \
47+
$(DERIVED_SRC)/arithmetic.mlc.c \
48+
$(DERIVED_SRC)/array.mlc.c \
49+
$(DERIVED_SRC)/binary.mlc.c \
50+
$(DERIVED_SRC)/bitwise.mlc.c \
51+
$(DERIVED_SRC)/byte.mlc.c \
52+
$(DERIVED_SRC)/char.mlc.c \
53+
$(DERIVED_SRC)/item.mlc.c \
54+
$(DERIVED_SRC)/line.mlc.c \
55+
$(DERIVED_SRC)/list.mlc.c \
56+
$(DERIVED_SRC)/logic.mlc.c \
57+
$(DERIVED_SRC)/math-foundation.mlc.c \
58+
$(DERIVED_SRC)/math.mlc.c \
59+
$(DERIVED_SRC)/segmentchunk.mlc.c \
60+
$(DERIVED_SRC)/sort.mlc.c \
61+
$(DERIVED_SRC)/string.mlc.c \
62+
$(DERIVED_SRC)/type-convert.mlc.c \
63+
$(DERIVED_SRC)/type.mlc.c
64+
65+
#############################################################
66+
# build the ffi static library
67+
#
68+
69+
TARGET_PLATFORM=android-8
70+
71+
LOCAL_MODULE:= libscript
72+
73+
LOCAL_ARM_MODE := arm
74+
75+
LOCAL_SRC_FILES:= \
76+
$(SCRIPT_SRC_FILES)
77+
78+
LOCAL_CPP_EXTENSION := .cpp
79+
80+
LOCAL_C_INCLUDES := \
81+
$(LOCAL_PATH)/include \
82+
$(LOCAL_PATH)/src \
83+
$(LOCAL_PATH)/../thirdparty/libffi/android/include \
84+
$(LOCAL_PATH)/../libfoundation/include \
85+
$(LOCAL_PATH)/../libgraphics/include \
86+
$(LOCAL_PATH)/../engine/src
87+
88+
LOCAL_CFLAGS += -DHB_NO_MT -DHAVE_OT -DHAVE_UCDN -DHAVE_FREETYPE
89+
LOCAL_EXPORT_LDLIBS := -L$(LOCAL_PATH)/../prebuilt/lib/android/armv6 -licui18n -licuio -licule -liculx -licuuc -licudata
90+
91+
include $(BUILD_STATIC_LIBRARY)
92+

thirdparty

0 commit comments

Comments
 (0)