Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(26)

Side by Side Diff: tools/patch_sdk.dart

Issue 2938903003: Add a vmservice_sdk directory in runtime/bin. (Closed)
Patch Set: Address comments Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « runtime/bin/vmservice_sdk/lib/libraries.json ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env dart 1 #!/usr/bin/env dart
2 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 2 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
3 // for details. All rights reserved. Use of this source code is governed by a 3 // for details. All rights reserved. Use of this source code is governed by a
4 // BSD-style license that can be found in the LICENSE file. 4 // BSD-style license that can be found in the LICENSE file.
5 5
6 /// Command line tool to merge the SDK libraries and our patch files. 6 /// Command line tool to merge the SDK libraries and our patch files.
7 /// This is currently designed as an offline tool, but we could automate it. 7 /// This is currently designed as an offline tool, but we could automate it.
8 8
9 import 'dart:io'; 9 import 'dart:io';
10 import 'dart:isolate' show RawReceivePort; 10 import 'dart:isolate' show RawReceivePort;
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 librariesJson.toFilePath(), JSON.encode({"libraries": locations})); 120 librariesJson.toFilePath(), JSON.encode({"libraries": locations}));
121 121
122 if (forVm || forFlutter) { 122 if (forVm || forFlutter) {
123 var vmserviceName = forVm ? 'vmservice_io' : 'vmservice_sky'; 123 var vmserviceName = forVm ? 'vmservice_io' : 'vmservice_sky';
124 var targetName = forVm ? 'vm_fasta' : 'flutter_fasta'; 124 var targetName = forVm ? 'vm_fasta' : 'flutter_fasta';
125 Uri vmserviceUri = outDirUri.resolve('$vmserviceName.dill'); 125 Uri vmserviceUri = outDirUri.resolve('$vmserviceName.dill');
126 await fasta.compilePlatform(outDirUri, platform, 126 await fasta.compilePlatform(outDirUri, platform,
127 packages: packages, 127 packages: packages,
128 outlineOutput: outline, 128 outlineOutput: outline,
129 backendTarget: forVm ? 'vm_fasta' : 'flutter_fasta'); 129 backendTarget: forVm ? 'vm_fasta' : 'flutter_fasta');
130 var base = path.fromUri(Platform.script);
131 Uri repositoryDir =
132 new Uri.directory(path.dirname(path.dirname(path.absolute(base))));
133 Uri vmserviceSdk = repositoryDir.resolve('runtime/bin/vmservice_sdk/');
Siggi Cherem (dart-lang) 2017/06/15 17:43:39 Sorry I didn't notice this earlier, I just realize
sivachandra 2017/06/15 18:34:21 How is it in patch set 3?
134 // TODO(sigmundch): Specify libraries.json directly instead of "--sdk"
135 // after #29882 is fixed.
130 await fasta.compile([ 136 await fasta.compile([
131 "--sdk=$outDirUri", 137 "--sdk=$vmserviceSdk",
132 "--platform=$outline", 138 "--platform=$outline",
133 "--target=$targetName", 139 "--target=$targetName",
134 "--packages=$packages", 140 "--packages=$packages",
135 "dart:$vmserviceName", 141 "dart:$vmserviceName",
136 "-o", 142 "-o",
137 "$vmserviceUri", 143 "$vmserviceUri",
138 ]); 144 ]);
139 } else { 145 } else {
140 await dart2js.compilePlatform(outDirUri, platform, 146 await dart2js.compilePlatform(outDirUri, platform,
141 packages: packages, outlineOutput: outline); 147 packages: packages, outlineOutput: outline);
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
236 _copyExtraLibraries(String sdkOut, Map<String, String> locations) { 242 _copyExtraLibraries(String sdkOut, Map<String, String> locations) {
237 if (forDart2js) return; 243 if (forDart2js) return;
238 var base = path.fromUri(Platform.script); 244 var base = path.fromUri(Platform.script);
239 var dartDir = path.dirname(path.dirname(path.absolute(base))); 245 var dartDir = path.dirname(path.dirname(path.absolute(base)));
240 246
241 var builtinLibraryIn = path.join(dartDir, 'runtime', 'bin', 'builtin.dart'); 247 var builtinLibraryIn = path.join(dartDir, 'runtime', 'bin', 'builtin.dart');
242 var builtinLibraryOut = path.join(sdkOut, '_builtin', '_builtin.dart'); 248 var builtinLibraryOut = path.join(sdkOut, '_builtin', '_builtin.dart');
243 _writeSync(builtinLibraryOut, readInputFile(builtinLibraryIn)); 249 _writeSync(builtinLibraryOut, readInputFile(builtinLibraryIn));
244 locations['_builtin'] = path.join('_builtin', '_builtin.dart'); 250 locations['_builtin'] = path.join('_builtin', '_builtin.dart');
245 251
246 for (var file in ['loader.dart', 'server.dart', 'vmservice_io.dart']) {
247 var libraryIn = path.join(dartDir, 'runtime', 'bin', 'vmservice', file);
248 var libraryOut = path.join(sdkOut, 'vmservice_io', file);
249 _writeSync(libraryOut, readInputFile(libraryIn));
250 }
251
252 locations[forVm ? "vmservice_io" : "vmservice_sky"] =
253 path.join('vmservice_io', 'vmservice_io.dart');
254 locations["_vmservice"] = path.join('vmservice', 'vmservice.dart');
255
256 if (forFlutter) { 252 if (forFlutter) {
257 // Flutter repo has this layout: 253 // Flutter repo has this layout:
258 // engine/src/ 254 // engine/src/
259 // dart/ 255 // dart/
260 // flutter/ 256 // flutter/
261 var srcDir = path.dirname(path.dirname(path.dirname(path.absolute(base)))); 257 var srcDir = path.dirname(path.dirname(path.dirname(path.absolute(base))));
262 var uiLibraryInDir = path.join(srcDir, 'flutter', 'lib', 'ui'); 258 var uiLibraryInDir = path.join(srcDir, 'flutter', 'lib', 'ui');
263 for (var file in new Directory(uiLibraryInDir).listSync()) { 259 for (var file in new Directory(uiLibraryInDir).listSync()) {
264 if (!file.path.endsWith('.dart')) continue; 260 if (!file.path.endsWith('.dart')) continue;
265 var name = path.basename(file.path); 261 var name = path.basename(file.path);
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after
676 if (diff != 0) return diff; 672 if (diff != 0) return diff;
677 return end - other.end; 673 return end - other.end;
678 } 674 }
679 } 675 }
680 676
681 List<SdkLibrary> _getSdkLibraries(String contents) { 677 List<SdkLibrary> _getSdkLibraries(String contents) {
682 var libraryBuilder = new SdkLibrariesReader_LibraryBuilder(forDart2js); 678 var libraryBuilder = new SdkLibrariesReader_LibraryBuilder(forDart2js);
683 parseCompilationUnit(contents).accept(libraryBuilder); 679 parseCompilationUnit(contents).accept(libraryBuilder);
684 return libraryBuilder.librariesMap.sdkLibraries; 680 return libraryBuilder.librariesMap.sdkLibraries;
685 } 681 }
OLDNEW
« no previous file with comments | « runtime/bin/vmservice_sdk/lib/libraries.json ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698