Skip to content
This repository was archived by the owner on Aug 31, 2021. It is now read-only.

Commit 224cf0f

Browse files
authored
Merge pull request #7004 from livecodeian/feature-prebuilts-thirdparty
[[ Prebuilts ]] prebuild thirdparty libraries for each supported platform
2 parents 51fc3b3 + 9ebd822 commit 224cf0f

23 files changed

+710
-63
lines changed

engine/kernel-development.gyp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
'kernel.gyp:kernel',
5151

5252
'../thirdparty/libopenssl/libopenssl.gyp:libopenssl_stubs',
53-
'../thirdparty/libz/libz.gyp:libz',
53+
'../prebuilt/thirdparty.gyp:thirdparty_prebuilt',
5454
],
5555

5656
'sources':

engine/kernel-installer.gyp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
[
3939
'kernel.gyp:kernel',
4040

41-
'../thirdparty/libz/libz.gyp:libz',
41+
'../prebuilt/thirdparty.gyp:thirdparty_prebuilt',
4242
],
4343

4444
'includes':

engine/kernel-server.gyp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,7 @@
5757
'../prebuilt/libcurl.gyp:libcurl',
5858
'../prebuilt/libopenssl.gyp:libopenssl',
5959

60-
'../thirdparty/libgif/libgif.gyp:libgif',
61-
'../thirdparty/libjpeg/libjpeg.gyp:libjpeg',
62-
'../thirdparty/libpcre/libpcre.gyp:libpcre',
63-
'../thirdparty/libpng/libpng.gyp:libpng',
64-
'../thirdparty/libz/libz.gyp:libz',
60+
'../prebuilt/thirdparty.gyp:thirdparty_prebuilt',
6561

6662
'engine-common.gyp:quicktime_stubs',
6763

engine/kernel.gyp

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,12 @@
2020

2121
'../libbrowser/libbrowser.gyp:libbrowser',
2222

23-
'../thirdparty/libgif/libgif.gyp:libgif',
24-
'../thirdparty/libjpeg/libjpeg.gyp:libjpeg',
2523
'../thirdparty/libopenssl/libopenssl.gyp:libopenssl_stubs',
26-
'../thirdparty/libpcre/libpcre.gyp:libpcre',
27-
'../thirdparty/libpng/libpng.gyp:libpng',
28-
'../thirdparty/libz/libz.gyp:libz',
2924

3025
'../prebuilt/libopenssl.gyp:libopenssl_headers',
3126

27+
'../prebuilt/thirdparty.gyp:thirdparty_prebuilt',
28+
3229
'engine-common.gyp:encode_version',
3330
'engine-common.gyp:quicktime_stubs',
3431
],
@@ -68,12 +65,6 @@
6865
[
6966
'OS == "android"',
7067
{
71-
'dependencies':
72-
[
73-
'../thirdparty/libfreetype/libfreetype.gyp:libfreetype',
74-
'../thirdparty/libskia/libskia.gyp:libskia',
75-
],
76-
7768
'sources!':
7869
[
7970
# Not yet supported on Android
@@ -100,10 +91,6 @@
10091
[
10192
'OS == "emscripten"',
10293
{
103-
'dependencies':
104-
[
105-
'../thirdparty/libskia/libskia.gyp:libskia',
106-
],
10794
'sources':
10895
[
10996
'<@(engine_minizip_source_files)',

libfoundation/libfoundation.gyp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,10 @@
4545

4646
'dependencies':
4747
[
48+
'../prebuilt/thirdparty.gyp:thirdparty_prebuilt',
4849
'../prebuilt/libicu.gyp:libicu',
4950
'../prebuilt/libicu.gyp:encode_minimal_icu_data',
5051
'../thirdparty/libffi/libffi.gyp:libffi',
51-
'../thirdparty/libz/libz.gyp:libz',
5252
],
5353

5454
'include_dirs':

libgraphics/libgraphics.gyp

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414

1515
'dependencies':
1616
[
17+
'../prebuilt/thirdparty.gyp:thirdparty_prebuilt',
1718
'../libfoundation/libfoundation.gyp:libFoundation',
18-
'../thirdparty/libskia/libskia.gyp:libskia',
1919
],
2020

2121
'include_dirs':
@@ -48,21 +48,6 @@
4848
'src/drawing.cpp',
4949
],
5050

51-
'conditions':
52-
[
53-
[
54-
'OS in ("emscripten", "android")',
55-
{
56-
'dependencies':
57-
[
58-
'../prebuilt/libicu.gyp:libicu',
59-
'../thirdparty/libfreetype/libfreetype.gyp:libfreetype',
60-
'../thirdparty/libharfbuzz/libharfbuzz.gyp:libharfbuzz',
61-
],
62-
},
63-
],
64-
],
65-
6651
'target_conditions':
6752
[
6853
[

livecode.gyp

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,104 @@
216216
],
217217
],
218218
},
219+
220+
{
221+
'target_name': 'thirdparty-prebuilts',
222+
'type': 'none',
223+
224+
'variables':
225+
{
226+
'thirdparty_libs_core':
227+
[
228+
'thirdparty/libffi/libffi.gyp:libffi',
229+
'thirdparty/libpng/libpng.gyp:libpng',
230+
'thirdparty/libz/libz.gyp:libz',
231+
'thirdparty/libgif/libgif.gyp:libgif',
232+
'thirdparty/libjpeg/libjpeg.gyp:libjpeg',
233+
'thirdparty/libpcre/libpcre.gyp:libpcre',
219234

235+
'thirdparty/libskia/libskia.gyp:libskia',
236+
'thirdparty/libskia/libskia.gyp:libskia_opt_none',
237+
'thirdparty/libskia/libskia.gyp:libskia_opt_arm',
238+
'thirdparty/libskia/libskia.gyp:libskia_opt_sse2',
239+
'thirdparty/libskia/libskia.gyp:libskia_opt_sse3',
240+
'thirdparty/libskia/libskia.gyp:libskia_opt_sse41',
241+
'thirdparty/libskia/libskia.gyp:libskia_opt_sse42',
242+
'thirdparty/libskia/libskia.gyp:libskia_opt_avx',
243+
'thirdparty/libskia/libskia.gyp:libskia_opt_hsw',
244+
],
245+
246+
'thirdparty_libs_native':
247+
[
248+
'thirdparty/libmysql/libmysql.gyp:libmysql',
249+
'thirdparty/libsqlite/libsqlite.gyp:libsqlite',
250+
'thirdparty/libxml/libxml.gyp:libxml',
251+
'thirdparty/libxslt/libxslt.gyp:libxslt',
252+
'thirdparty/libzip/libzip.gyp:libzip',
253+
],
254+
255+
'thirdparty_libs_desktop':
256+
[
257+
'thirdparty/libiodbc/libiodbc.gyp:libiodbc',
258+
'thirdparty/libpq/libpq.gyp:libpq',
259+
'thirdparty/libcairo/libcairo.gyp:libcairo',
260+
],
261+
262+
'thirdparty_libs_fonts':
263+
[
264+
'thirdparty/libharfbuzz/libharfbuzz.gyp:libharfbuzz',
265+
'thirdparty/libfreetype/libfreetype.gyp:libfreetype',
266+
],
267+
},
268+
269+
'dependencies':
270+
[
271+
'<@(thirdparty_libs_core)',
272+
],
273+
274+
'conditions':
275+
[
276+
[
277+
'OS == "mac" or OS == "win" or OS == "linux"',
278+
{
279+
'dependencies':
280+
[
281+
'<@(thirdparty_libs_native)',
282+
'<@(thirdparty_libs_desktop)',
283+
],
284+
},
285+
],
286+
[
287+
'OS == "ios"',
288+
{
289+
'dependencies':
290+
[
291+
'<@(thirdparty_libs_native)',
292+
'thirdparty/libcairo/libcairo.gyp:libcairo',
293+
],
294+
},
295+
],
296+
[
297+
'OS == "android"',
298+
{
299+
'dependencies':
300+
[
301+
'<@(thirdparty_libs_native)',
302+
'<@(thirdparty_libs_fonts)',
303+
'thirdparty/libexpat/libexpat.gyp:libexpat',
304+
],
305+
},
306+
],
307+
[
308+
'OS == "emscripten"',
309+
{
310+
'dependencies':
311+
[
312+
'<@(thirdparty_libs_fonts)',
313+
],
314+
},
315+
],
316+
],
317+
},
220318
],
221319
}

make.cmd

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,12 @@ if /I "%BUILD_PLATFORM%"=="win-x86" (
3333
if not defined VSINSTALLDIR set VSINSTALLDIR=%ProgramFilesBase%\Microsoft Visual Studio\2017\BuildTools\
3434
call "%VSINSTALLDIR%VC\Auxiliary\Build\vcvarsall.bat" %VSCMD_ARG_TGT_ARCH%
3535

36-
@if "%1" NEQ "" set MSBUILD_TARGET_ARG=/t:%1
36+
@if "%1" NEQ "" (
37+
set MSBUILD_TARGET_ARG=/t:%1
38+
) else (
39+
set MSBUILD_TARGET_ARG=/t:default
40+
)
3741

38-
msbuild %BUILD_PROJECT% /fl /flp:Verbosity=normal /nologo /m:1 %BUILD_TARGET_ARG% /p:Configuration=%BUILDTYPE% /p:Platform=%MSBUILD_PLATFORM%
42+
msbuild %BUILD_PROJECT% /fl /flp:Verbosity=normal /nologo /m:1 %MSBUILD_TARGET_ARG% /p:Configuration=%BUILDTYPE% /p:Platform=%MSBUILD_PLATFORM%
3943

4044
@exit %ERRORLEVEL%

prebuilt/build-all-libs.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ IF "%2"=="" (
2222
SET ARCH=%2
2323
)
2424

25-
SET PREBUILT_LIBS=openssl curl icu cef
25+
SET PREBUILT_LIBS=OpenSSL Curl ICU CEF thirdparty
2626

2727
ECHO Building Libs %PREBUILT_LIBS%
2828

prebuilt/build-libraries.sh

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,22 +32,22 @@ export CUSTOM_EMCONFIGURE="${EMCONFIGURE}"
3232
# Set which libs to build for the target platform
3333
case "${PLATFORM}" in
3434
android)
35-
PREBUILT_LIBS="openssl icu"
35+
PREBUILT_LIBS="openssl icu thirdparty"
3636
;;
3737
mac)
38-
PREBUILT_LIBS="openssl icu"
38+
PREBUILT_LIBS="openssl icu thirdparty"
3939
;;
4040
ios)
41-
PREBUILT_LIBS="openssl icu"
41+
PREBUILT_LIBS="openssl icu thirdparty"
4242
;;
4343
win32)
44-
PREBUILT_LIBS="openssl curl icu cef"
44+
PREBUILT_LIBS="openssl curl icu cef thirdparty"
4545
;;
4646
linux)
47-
PREBUILT_LIBS="openssl curl icu cef"
47+
PREBUILT_LIBS="openssl curl icu cef thirdparty"
4848
;;
4949
emscripten)
50-
PREBUILT_LIBS="icu"
50+
PREBUILT_LIBS="icu thirdparty"
5151
;;
5252
esac
5353

0 commit comments

Comments
 (0)