| Index: pkg/front_end/lib/kernel_generator.dart
|
| diff --git a/pkg/front_end/lib/kernel_generator.dart b/pkg/front_end/lib/kernel_generator.dart
|
| index a87bb683b44dc71eb28c9cf328fba10469ada4f6..5bde9b3de8267581349ff3ce0ca20bbac2f537e8 100644
|
| --- a/pkg/front_end/lib/kernel_generator.dart
|
| +++ b/pkg/front_end/lib/kernel_generator.dart
|
| @@ -128,7 +128,8 @@ Future<Program> kernelForBuildUnit(
|
| Future<DartLoader> _createLoader(CompilerOptions options,
|
| {Repository repository, Uri entry}) async {
|
| var kernelOptions = _convertOptions(options);
|
| - var packages = await createPackages(options.packagesFilePath,
|
| + var packages = await createPackages(
|
| + _uriToPath(options.packagesFilePath, options),
|
| discoveryPath: entry?.path);
|
| return new DartLoader(
|
| repository ?? new Repository(), kernelOptions, packages);
|
| @@ -137,11 +138,12 @@ Future<DartLoader> _createLoader(CompilerOptions options,
|
| DartOptions _convertOptions(CompilerOptions options) {
|
| return new DartOptions(
|
| strongMode: options.strongMode,
|
| - sdk: options.sdkPath,
|
| + sdk: _uriToPath(options.sdkPath, options),
|
| // TODO(sigmund): make it possible to use summaries and still compile the
|
| // sdk sources.
|
| - sdkSummary: options.compileSdk ? null : options.sdkSummary,
|
| - packagePath: options.packagesFilePath,
|
| + sdkSummary:
|
| + options.compileSdk ? null : _uriToPath(options.sdkSummary, options),
|
| + packagePath: _uriToPath(options.packagesFilePath, options),
|
| declaredVariables: options.declaredVariables);
|
| }
|
|
|
| @@ -152,6 +154,14 @@ void _reportErrors(List errors, ErrorHandler onError) {
|
| }
|
| }
|
|
|
| +String _uriToPath(Uri uri, CompilerOptions options) {
|
| + if (uri == null) return null;
|
| + if (uri.scheme != 'file') {
|
| + throw new StateError('Only file URIs are supported');
|
| + }
|
| + return options.fileSystem.context.fromUri(uri);
|
| +}
|
| +
|
| // TODO(sigmund): delete this class. Dartk should not format errors itself, we
|
| // should just pass them along.
|
| class _DartkError implements CompilationError {
|
|
|