| Index: tools/patch_sdk.dart
|
| diff --git a/tools/patch_sdk.dart b/tools/patch_sdk.dart
|
| index 60df9195971e7534e7d51f20a61975b54512925b..8e86120e9c5a7e37327dc2c5850a840f4c7adccf 100644
|
| --- a/tools/patch_sdk.dart
|
| +++ b/tools/patch_sdk.dart
|
| @@ -108,7 +108,7 @@ Future _main(List<String> argv) async {
|
| libContents = _updateLibraryMetadata(sdkOut, libContents);
|
| var sdkLibraries = _getSdkLibraries(libContents);
|
|
|
| - var locations = <String, Map<String, String>>{};
|
| + Map<String, String> locations = <String, String>{};
|
|
|
| // Enumerate core libraries and apply patches
|
| for (SdkLibrary library in sdkLibraries) {
|
| @@ -125,10 +125,7 @@ Future _main(List<String> argv) async {
|
| Uri packages = Uri.base.resolveUri(new Uri.file(packagesFile));
|
|
|
| await _writeSync(
|
| - librariesJson.toFilePath(),
|
| - JSON.encode({
|
| - mode: {"libraries": locations}
|
| - }));
|
| + librariesJson.toFilePath(), JSON.encode({"libraries": locations}));
|
|
|
| var flags = new TargetFlags();
|
| var target = forVm
|
| @@ -144,22 +141,6 @@ Future _main(List<String> argv) async {
|
| var base = path.fromUri(Platform.script);
|
| Uri dartDir =
|
| new Uri.directory(path.dirname(path.dirname(path.absolute(base))));
|
| -
|
| - String vmserviceJson = JSON.encode({
|
| - 'vm': {
|
| - "libraries": {
|
| - '_vmservice': {
|
| - 'uri': dartDir.resolve('sdk/lib/vmservice/vmservice.dart').path
|
| - },
|
| - 'vmservice_io': {
|
| - 'uri':
|
| - dartDir.resolve('runtime/bin/vmservice/vmservice_io.dart').path
|
| - },
|
| - }
|
| - }
|
| - });
|
| - Uri vmserviceJsonUri = outDirUri.resolve("lib/vmservice_libraries.json");
|
| - await _writeSync(vmserviceJsonUri.toFilePath(), vmserviceJson);
|
| var program = await kernelForProgram(
|
| Uri.parse('dart:$vmserviceName'),
|
| new CompilerOptions()
|
| @@ -167,7 +148,11 @@ Future _main(List<String> argv) async {
|
| // TODO(sigmund): investigate. This should be outline, but it breaks
|
| // vm-debug tests. Issue #30111
|
| ..sdkSummary = platform
|
| - ..librariesSpecificationUri = vmserviceJsonUri
|
| + ..dartLibraries = <String, Uri>{
|
| + '_vmservice': dartDir.resolve('sdk/lib/vmservice/vmservice.dart'),
|
| + 'vmservice_io':
|
| + dartDir.resolve('runtime/bin/vmservice/vmservice_io.dart'),
|
| + }
|
| ..packagesFileUri = packages);
|
| Uri vmserviceUri = outDirUri.resolve('$vmserviceName.dill');
|
| // TODO(sigmund): remove. This is a workaround because in the VM
|
| @@ -348,7 +333,7 @@ String _updateLibraryMetadata(String sdkOut, String libContents) {
|
| /// Copy internal libraries that are developed outside the sdk folder into the
|
| /// patched_sdk folder. For the VM< this includes files under 'runtime/bin/',
|
| /// for flutter, this is includes also the ui library.
|
| -_copyExtraLibraries(String sdkOut, Map<String, Map<String, String>> locations) {
|
| +_copyExtraLibraries(String sdkOut, Map<String, String> locations) {
|
| if (forDart2js) return;
|
| var base = path.fromUri(Platform.script);
|
| var dartDir = path.dirname(path.dirname(path.absolute(base)));
|
| @@ -356,7 +341,7 @@ _copyExtraLibraries(String sdkOut, Map<String, Map<String, String>> locations) {
|
| var builtinLibraryIn = path.join(dartDir, 'runtime', 'bin', 'builtin.dart');
|
| var builtinLibraryOut = path.join(sdkOut, '_builtin', '_builtin.dart');
|
| _writeSync(builtinLibraryOut, readInputFile(builtinLibraryIn));
|
| - addLocation(locations, '_builtin', path.join('_builtin', '_builtin.dart'));
|
| + locations['_builtin'] = path.join('_builtin', '_builtin.dart');
|
|
|
| if (forFlutter) {
|
| // Flutter repo has this layout:
|
| @@ -371,7 +356,7 @@ _copyExtraLibraries(String sdkOut, Map<String, Map<String, String>> locations) {
|
| var uiLibraryOut = path.join(sdkOut, 'ui', name);
|
| _writeSync(uiLibraryOut, readInputFile(file.path));
|
| }
|
| - addLocation(locations, 'ui', path.join('ui', 'ui.dart'));
|
| + locations['ui'] = 'ui/ui.dart';
|
|
|
| if (!forFlutterRelease) {
|
| // vmservice should be present unless we build release flavor of Flutter.
|
| @@ -383,23 +368,22 @@ _copyExtraLibraries(String sdkOut, Map<String, Map<String, String>> locations) {
|
| var libraryOut = path.join(sdkOut, 'vmservice_io', file);
|
| _writeSync(libraryOut, readInputFile(libraryIn));
|
| }
|
| - addLocation(locations, 'vmservice_sky',
|
| - path.join('vmservice_io', 'vmservice_io.dart'));
|
| - addLocation(
|
| - locations, '_vmservice', path.join('vmservice', 'vmservice.dart'));
|
| + locations['vmservice_sky'] =
|
| + path.join('vmservice_io', 'vmservice_io.dart');
|
| + locations['_vmservice'] = path.join('vmservice', 'vmservice.dart');
|
| }
|
| }
|
| }
|
|
|
| _applyPatch(SdkLibrary library, String sdkLibIn, String patchIn, String sdkOut,
|
| - Map<String, Map<String, String>> locations) {
|
| + Map<String, String> locations) {
|
| var libraryOut = path.join(sdkLibIn, library.path);
|
| var libraryIn = libraryOut;
|
|
|
| var libraryFile = getInputFile(libraryIn, canBeMissing: true);
|
| if (libraryFile != null) {
|
| - addLocation(locations, Uri.parse(library.shortName).path,
|
| - path.relative(libraryOut, from: sdkLibIn));
|
| + locations[Uri.parse(library.shortName).path] =
|
| + path.relative(libraryOut, from: sdkLibIn);
|
| var outPaths = <String>[libraryOut];
|
| var libraryContents = libraryFile.readAsStringSync();
|
|
|
| @@ -822,9 +806,3 @@ List<SdkLibrary> _getSdkLibraries(String contents) {
|
| parseCompilationUnit(contents).accept(libraryBuilder);
|
| return libraryBuilder.librariesMap.sdkLibraries;
|
| }
|
| -
|
| -void addLocation(Map<String, Map<String, String>> locations, String libraryName,
|
| - String path) {
|
| - assert(locations[libraryName] == null);
|
| - locations[libraryName] = {'uri': path};
|
| -}
|
|
|