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

Commit 9afa204

Browse files
committed
Merge branch 'develop' of github.com:livecode/livecode into feature-skia_update
Conflicts: libgraphics/src/legacyblendmodes.cpp libgraphics/src/legacygradients.cpp
2 parents fa34a3f + a13e1bb commit 9afa204

File tree

512 files changed

+18138
-6038
lines changed

Some content is hidden

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

512 files changed

+18138
-6038
lines changed

.mention-bot

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"requiredOrgs": ["livecode"]
3+
}

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ script: |
9090
;;
9191
esac
9292
93-
if [[ -z "${COVERITY_SCAN_BRANCH}" ]]; then
93+
if [[ "${COVERITY_SCAN_BRANCH}" != "1" ]]; then
9494
mkdir -p "${LICENSE_DIR}" &&
9595
touch "${LICENSE_DIR}/livecode-firstrun.lcf" &&
9696
make all-${BUILD_PLATFORM} &&

Installer/package.txt

Lines changed: 46 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -383,23 +383,23 @@ component Extensions
383383
into [[ToolsFolder]]/Extensions place
384384
rfolder macosx:packaged_extensions/com.livecode.widget.clock
385385
into [[ToolsFolder]]/Extensions place
386-
rfolder macosx:packaged_extensions/com.livecode.widget.colorSwatch
386+
rfolder macosx:packaged_extensions/com.livecode.widget.colorswatch
387387
into [[ToolsFolder]]/Extensions place
388-
rfolder macosx:packaged_extensions/com.livecode.widget.gradientRampEditor
388+
rfolder macosx:packaged_extensions/com.livecode.widget.gradientrampeditor
389389
into [[ToolsFolder]]/Extensions place
390-
rfolder macosx:packaged_extensions/com.livecode.widget.lineGraph
390+
rfolder macosx:packaged_extensions/com.livecode.widget.linegraph
391391
into [[ToolsFolder]]/Extensions place
392-
rfolder macosx:packaged_extensions/com.livecode.widget.headerBar
392+
rfolder macosx:packaged_extensions/com.livecode.widget.headerbar
393393
into [[ToolsFolder]]/Extensions place
394-
rfolder macosx:packaged_extensions/com.livecode.widget.iconPicker
394+
rfolder macosx:packaged_extensions/com.livecode.widget.iconpicker
395395
into [[ToolsFolder]]/Extensions place
396-
rfolder macosx:packaged_extensions/com.livecode.library.iconSVG
396+
rfolder macosx:packaged_extensions/com.livecode.library.iconsvg
397397
into [[ToolsFolder]]/Extensions place
398398
rfolder macosx:packaged_extensions/com.livecode.library.json
399399
into [[ToolsFolder]]/Extensions place
400400
rfolder macosx:packaged_extensions/com.livecode.widget.navbar
401401
into [[ToolsFolder]]/Extensions place
402-
rfolder macosx:packaged_extensions/com.livecode.widget.paletteActions
402+
rfolder macosx:packaged_extensions/com.livecode.widget.paletteactions
403403
into [[ToolsFolder]]/Extensions place
404404
rfolder macosx:packaged_extensions/com.livecode.widget.segmented
405405
into [[ToolsFolder]]/Extensions place
@@ -409,7 +409,7 @@ component Extensions
409409
into [[ToolsFolder]]/Extensions place
410410
rfolder macosx:packaged_extensions/com.livecode.widget.switchbutton
411411
into [[ToolsFolder]]/Extensions place
412-
rfolder macosx:packaged_extensions/com.livecode.widget.treeView
412+
rfolder macosx:packaged_extensions/com.livecode.widget.treeview
413413
into [[ToolsFolder]]/Extensions place
414414
rfolder macosx:packaged_extensions/com.livecode.library.widgetutils
415415
into [[ToolsFolder]]/Extensions place
@@ -602,6 +602,22 @@ component Runtime.iOS
602602
file ios:iphonesimulator10.2/mobile-disable-ats-template.plist as "DisableATS.plist"
603603
file ios:iphonesimulator10.2/Default-568h@2x.png as "Default4InchSplash.png" base ios:Default-568h@2x.png
604604
file ios:iphonesimulator10.2/fontmap as "fontmap"
605+
into "[[ToolsFolder]]/Runtime/iOS/Simulator-10_3" place
606+
executable ios:iphonesimulator10.3/standalone-mobile[[BaseEditionTagLower]].ios-engine as Standalone base ios:iphonesimulator8.2/standalone-mobile[[BaseEditionTagLower]].app/standalone-mobile[[BaseEditionTagLower]]
607+
executable ios:iphonesimulator10.3/revsecurity.ios-extension as RevSecurity base ios:iphonesimulator8.2/revsecurity.dylib
608+
executable ios:iphonesimulator10.3/revpdfprinter.ios-extension as RevPdfPrinter base ios:iphonesimulator8.2/revpdfprinter.dylib
609+
executable ios:iphonesimulator10.3/revzip.ios-extension as RevZip base ios:iphonesimulator8.2/revzip.dylib
610+
executable ios:iphonesimulator10.3/revxml.ios-extension as RevXml base ios:iphonesimulator8.2/revxml.dylib
611+
executable ios:iphonesimulator10.3/revdb.ios-extension as RevDb base ios:iphonesimulator8.2/revdb.dylib
612+
executable ios:iphonesimulator10.3/dbsqlite.ios-extension as DbSqlite base ios:iphonesimulator8.2/dbsqlite.dylib
613+
executable ios:iphonesimulator10.3/dbmysql.ios-extension as DbMysql base ios:iphonesimulator8.2/dbmysql.dylib
614+
file ios:iphonesimulator10.3/mobile-template.plist as "Settings.plist"
615+
file ios:iphonesimulator10.3/mobile-remote-notification-template.plist as "RemoteNotificationSettings.plist"
616+
file ios:iphonesimulator10.3/mobile-url-scheme-template.plist as "URLSchemeSettings.plist"
617+
file ios:iphonesimulator10.3/mobile-splashscreen-template.plist as "SplashscreenSettings.plist"
618+
file ios:iphonesimulator10.3/mobile-disable-ats-template.plist as "DisableATS.plist"
619+
file ios:iphonesimulator10.3/Default-568h@2x.png as "Default4InchSplash.png" base ios:Default-568h@2x.png
620+
file ios:iphonesimulator10.3/fontmap as "fontmap"
605621
into "[[ToolsFolder]]/Runtime/iOS/Device-9_2" place
606622
executable ios:iphoneos9.2/standalone-mobile[[BaseEditionTagLower]].ios-engine as Standalone
607623
executable ios:iphoneos9.2/revsecurity.ios-extension as RevSecurity
@@ -642,6 +658,26 @@ component Runtime.iOS
642658
file ios:iphoneos10.2/mobile-disable-ats-template.plist as "DisableATS.plist"
643659
file ios:iphoneos10.2/Default-568h@2x.png as "Default4InchSplash.png" base ios:Default-568h@2x.png
644660
file ios:iphoneos10.2/fontmap as "fontmap"
661+
into "[[ToolsFolder]]/Runtime/iOS/Device-10_3" place
662+
executable ios:iphoneos10.3/standalone-mobile[[BaseEditionTagLower]].ios-engine as Standalone base ios:iphoneos9.2/standalone-mobile[[BaseEditionTagLower]].ios-engine
663+
executable ios:iphoneos10.3/revsecurity.ios-extension as RevSecurity base ios:iphoneos9.2/revsecurity.ios-extension
664+
executable ios:iphoneos10.3/revpdfprinter.ios-extension as RevPdfPrinter base ios:iphoneos9.2/revpdfprinter.ios-extension
665+
executable ios:iphoneos10.3/revzip.ios-extension as RevZip base ios:iphoneos9.2/revzip.ios-extension
666+
executable ios:iphoneos10.3/revxml.ios-extension as RevXml base ios:iphoneos9.2/revxml.ios-extension
667+
executable ios:iphoneos10.3/revdb.ios-extension as RevDb base ios:iphoneos9.2/revdb.ios-extension
668+
executable ios:iphoneos10.3/dbsqlite.ios-extension as DbSqlite base ios:iphoneos9.2/dbsqlite.ios-extension
669+
executable ios:iphoneos10.3/dbmysql.ios-extension as DbMysql base ios:iphoneos9.2/dbmysql.ios-extension
670+
file ios:iphoneos10.3/mobile-device-template.plist as "Settings.plist"
671+
file ios:iphoneos10.3/mobile-remote-notification-template.plist as "RemoteNotificationSettings.plist"
672+
file ios:iphoneos10.3/mobile-url-scheme-template.plist as "URLSchemeSettings.plist"
673+
file ios:iphoneos10.3/mobile-splashscreen-template.plist as "SplashscreenSettings.plist"
674+
file ios:iphoneos10.3/template-entitlements.xcent as "Entitlements.xcent"
675+
file ios:iphoneos10.3/template-beta-report-entitlement.xcent as "BetaReportEntitlement.xcent"
676+
file ios:iphoneos10.3/template-remote-notification-entitlements.xcent as "RemoteNotificationEntitlements.xcent"
677+
file ios:iphoneos10.3/template-remote-notification-store-entitlements.xcent as "RemoteNotificationStoreEntitlements.xcent"
678+
file ios:iphoneos10.3/mobile-disable-ats-template.plist as "DisableATS.plist"
679+
file ios:iphoneos10.3/Default-568h@2x.png as "Default4InchSplash.png" base ios:Default-568h@2x.png
680+
file ios:iphoneos10.3/fontmap as "fontmap"
645681

646682
////////////////////////////////////////////////////////////////////////////////
647683

@@ -802,8 +838,10 @@ component Toolset
802838
stack ide-support:revsblibrary.livecodescript
803839
file ide-support:revdocsparser.livecodescript
804840
file ide-support:revliburl.livecodescript
841+
file repo:extensions/script-libraries/dropbox/dropbox.livecodescript
805842
file repo:extensions/script-libraries/oauth2/oauth2.livecodescript
806843
file repo:extensions/script-libraries/getopt/getopt.livecodescript
807844
file repo:extensions/script-libraries/mime/mime.livecodescript
845+
file repo:extensions/script-libraries/diff/diff.livecodescript
808846

809847
////////////////////////////////////////////////////////////////////////////////

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ EMMAKE ?= emmake
2525

2626
# Some magic to control which versions of iOS we try to build. N.b. you may
2727
# also need to modify the buildbot configuration
28-
IPHONEOS_VERSIONS ?= 9.2 10.2
29-
IPHONESIMULATOR_VERSIONS ?= 8.2 9.2 10.2
28+
IPHONEOS_VERSIONS ?= 9.2 10.2 10.3
29+
IPHONESIMULATOR_VERSIONS ?= 8.2 9.2 10.2 10.3
3030
SKIP_IPHONESIMULATOR_VERSIONS ?= 6.1 7.1
3131

3232
IOS_SDKS ?= \

buildbot.mk

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ dist-tools: dist-tools-commercial
168168
distmac-disk: distmac-disk-indy distmac-disk-business
169169
endif
170170

171-
dist-tools: dist-tools-community
171+
dist-tools: dist-tools-community dist-tools-version-check
172172
distmac-disk: distmac-disk-community
173173

174174
dist-tools-community:
@@ -179,6 +179,19 @@ dist-tools-commercial:
179179
--built-docs-dir $(docs_build_dir)/cooked-commercial
180180
$(buildtool_command) --platform mac --platform win --platform linux --stage tools --edition business \
181181
--built-docs-dir $(docs_build_dir)/cooked-commercial
182+
# Ensure that the version for which we're trying to build installers
183+
# hasn't already been tagged.
184+
dist-tools-version-check:
185+
@if git rev-parse refs/tags/$(BUILD_SHORT_VERSION) \
186+
>/dev/null 2>&1 ; then \
187+
echo; \
188+
echo "$(BUILD_SHORT_VERSION) has already been released."; \
189+
echo "You probably need to update the 'version' file."; \
190+
echo; \
191+
exit 1; \
192+
fi
193+
194+
.PHONY: dist-tools-version-check
182195

183196
distmac-bundle-community:
184197
$(buildtool_command) --platform mac --stage bundle --edition community

buildbot.py

Lines changed: 47 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,27 @@
3434

3535
# LiveCode build configuration script
3636
import config
37+
import fetch
3738

3839
# The set of platforms for which this branch supports automated builds
39-
BUILDBOT_PLATFORMS = ('linux-x86', 'linux-x86_64', 'android-armv6', 'mac',
40-
'ios', 'win-x86', 'emscripten')
40+
BUILDBOT_PLATFORM_TRIPLES = (
41+
'x86-linux-debian8',
42+
'x86_64-linux-debian8',
43+
'armv6-android-api9',
44+
'universal-mac-macosx10.9', # Minimum deployment target
45+
'universal-ios-iphoneos10.3',
46+
'universal-ios-iphoneos10.2',
47+
'universal-ios-iphoneos9.2',
48+
'universal-ios-iphonesimulator10.3',
49+
'universal-ios-iphonesimulator10.2',
50+
'universal-ios-iphonesimulator9.2',
51+
'universal-ios-iphonesimulator8.2',
52+
'x86-win32', # TODO[2017-03-23] More specific ABI
53+
'x86_64-win32',
54+
'js-emscripten-sdk1.35',
55+
)
4156
# The set of build tasks that this branch supports
42-
BUILDBOT_TARGETS = ('config', 'compile', 'bin-archive', 'bin-extract',
57+
BUILDBOT_TARGETS = ('fetch', 'config', 'compile', 'bin-archive', 'bin-extract',
4358
'dist-notes', 'dist-docs', 'dist-server', 'dist-tools', 'dist-upload',
4459
'distmac-archive', 'distmac-extract', 'distmac-disk')
4560

@@ -68,6 +83,9 @@ def error(message):
6883
print("ERROR: " + message)
6984
sys.exit(1)
7085

86+
def get_target_triple():
87+
return os.environ.get('BUILD_TARGET_TRIPLE')
88+
7189
def get_build_platform():
7290
platform = (os.environ.get('BUILD_PLATFORM'),
7391
os.environ.get('BUILD_SUBPLATFORM'))
@@ -81,6 +99,13 @@ def get_buildtype():
8199
def get_build_edition():
82100
return os.environ.get('BUILD_EDITION', 'community')
83101

102+
def check_target_triple():
103+
# Check that this branch can actually be built for the specified platform
104+
triple = get_target_triple()
105+
if not triple in BUILDBOT_PLATFORM_TRIPLES:
106+
print('Buildbot build for "{}" platform is not supported'.format(triple))
107+
sys.exit(SKIP_EXIT_STATUS)
108+
84109
################################################################
85110
# Defer to buildbot.mk
86111
################################################################
@@ -90,6 +115,18 @@ def exec_buildbot_make(target):
90115
print(' '.join(args))
91116
sys.exit(subprocess.call(args))
92117

118+
################################################################
119+
# Fetch prebuilts
120+
################################################################
121+
122+
def exec_fetch(args):
123+
print('fetch.py ' + ' '.join(args))
124+
sys.exit(fetch.fetch(args))
125+
126+
def do_fetch():
127+
check_target_triple()
128+
exec_fetch(['--target', get_target_triple()])
129+
93130
################################################################
94131
# Configure with gyp
95132
################################################################
@@ -99,6 +136,7 @@ def exec_configure(args):
99136
sys.exit(config.configure(args))
100137

101138
def do_configure():
139+
check_target_triple()
102140
platform, subplatform = get_build_platform()
103141

104142
if platform == 'ios':
@@ -161,7 +199,7 @@ def __enter__(self):
161199
os.environ['_MSPDBSRV_ENDPOINT_'] = str(uuid.uuid4())
162200

163201
mspdbsrv_exe = os.path.join(config.get_program_files_x86(),
164-
'Microsoft Visual Studio 10.0\\Common7\\IDE\\mspdbsrv.exe')
202+
'Microsoft Visual Studio\\2017\\BuildTools\\VC\\Tools\\MSVC\\14.10.25017\\bin\\HostX86\\x86\\mspdbsrv.exe')
165203
args = [mspdbsrv_exe, '-start', '-shutdowntime', '-1']
166204
print(' '.join(args))
167205
self.proc = subprocess.Popen(args, close_fds=True)
@@ -197,6 +235,8 @@ def exec_msbuild(platform):
197235
sys.exit(exit_status)
198236

199237
def do_compile():
238+
check_target_triple()
239+
200240
platform, subplatform = get_build_platform()
201241
if platform.startswith('win-'):
202242
return exec_msbuild(platform)
@@ -224,18 +264,14 @@ def do_bin_archive():
224264
################################################################
225265

226266
def buildbot_task(target):
227-
# Check that this branch can actually be built for the specified platform
228-
platform, subplatform = get_build_platform()
229-
if not platform in BUILDBOT_PLATFORMS:
230-
print('Buildbot build for "{}" platform is not supported'.format(platform))
231-
sys.exit(SKIP_EXIT_STATUS)
232-
233267
# Check that this branch supports performing the requested buildbot task
234268
if not target in BUILDBOT_TARGETS:
235269
print('Buildbot build step "{}" is not supported'.format(target))
236270
sys.exit(SKIP_EXIT_STATUS)
237271

238-
if target == 'config':
272+
if target == 'fetch':
273+
return do_fetch()
274+
elif target == 'config':
239275
return do_configure()
240276
elif target == 'compile':
241277
return do_compile()

builder/builder_utilities.livecodescript

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

3-
constant kMergExtVersion = "2016-12-22"
4-
constant kTSNetVersion = "1.2.7"
3+
constant kMergExtVersion = "2017-4-6"
4+
constant kTSNetVersion = "1.2.8"
55

66
local sEngineDir
77
local sWorkDir

builder/tools_builder.livecodescript

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -545,6 +545,23 @@ private function escapeArg pArg
545545
return pArg
546546
end escapeArg
547547

548+
-- Needed on MacOS Sierra
549+
private command clearExtendedAttributes pAppBundle
550+
-- make sure you have permission to clear extended attributes from bundle files
551+
get shell("chmod -R u+w" && pAppBundle)
552+
if the result is not zero then
553+
builderLog "error", "Setting permissions failed with error:" && it
554+
throw "failure"
555+
end if
556+
557+
-- clear extended attributes from bundle files
558+
get shell("xattr -cr" && pAppBundle)
559+
if the result is not zero then
560+
builderLog "error", "Clearing extended attributes failed with error:" && it
561+
throw "failure"
562+
end if
563+
end clearExtendedAttributes
564+
548565
private function findSigningIdentity
549566
get shell("/usr/bin/security -q find-identity -v")
550567
filter it with "*Developer ID Application: Runtime Revolution Ltd*"
@@ -656,6 +673,8 @@ command toolsBuilderMakeAppBundle pVersion, pEdition, pPlatform
656673
get shell("file" && escapeArg(tFullPath))
657674
if tFile is "Standalone" or "Mach-O" is not among the words of it then next repeat
658675

676+
clearExtendedAttributes escapeArg(tFullPath)
677+
659678
-- Sign the extension
660679
-- The "--force" parameter strips the existing signature (which was
661680
-- made using a not-valid-for-distribution profile)
@@ -668,6 +687,8 @@ command toolsBuilderMakeAppBundle pVersion, pEdition, pPlatform
668687
end repeat
669688
end repeat
670689

690+
clearExtendedAttributes escapeArg(tAppBundle)
691+
671692
builderLog "message", "Signing macosx app bundle" && "'" & tAppBundle & "'"
672693
wait 1 second
673694
get shell("/usr/bin/codesign --sign" && word 2 of tSigningId && "--deep --verbose=2" && escapeArg(tAppBundle))

0 commit comments

Comments
 (0)