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

Side by Side Diff: lib/dwc.dart

Issue 55143003: webui fixes for 0.8.9 (Closed) Base URL: git@github.com:dart-lang/web-ui.git@master
Patch Set: Created 7 years, 1 month 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
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 /** The entry point to the compiler. Used to implement `bin/dwc.dart`. */ 5 /** The entry point to the compiler. Used to implement `bin/dwc.dart`. */
6 library dwc; 6 library dwc;
7 7
8 import 'dart:async'; 8 import 'dart:async';
9 import 'dart:io'; 9 import 'dart:io';
10 import 'package:logging/logging.dart' show Level; 10 import 'package:logging/logging.dart' show Level;
11 11
12 import 'src/compiler.dart'; 12 import 'src/compiler.dart';
13 import 'src/file_system.dart'; 13 import 'src/file_system.dart';
14 import 'src/file_system/console.dart'; 14 import 'src/file_system/console.dart';
15 import 'src/files.dart'; 15 import 'src/files.dart';
16 import 'src/messages.dart'; 16 import 'src/messages.dart';
17 import 'src/options.dart'; 17 import 'src/options.dart';
18 import 'src/utils.dart'; 18 import 'src/utils.dart';
19 19
20 FileSystem fileSystem; 20 FileSystem fileSystem;
21 21
22 void main() { 22 void main(args) {
23 run(new Options().arguments).then((result) { 23 run(args).then((result) {
24 exit(result.success ? 0 : 1); 24 exit(result.success ? 0 : 1);
25 }); 25 });
26 } 26 }
27 27
28 /** Contains the result of a compiler run. */ 28 /** Contains the result of a compiler run. */
29 class CompilerResult { 29 class CompilerResult {
30 final bool success; 30 final bool success;
31 31
32 /** Map of output path to source, if there is one */ 32 /** Map of output path to source, if there is one */
33 final Map<String, String> outputs; 33 final Map<String, String> outputs;
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 // A broken symlink works like a file 148 // A broken symlink works like a file
149 var toFile = new File(linkPath); 149 var toFile = new File(linkPath);
150 if (toFile.existsSync()) { 150 if (toFile.existsSync()) {
151 toFile.deleteSync(); 151 toFile.deleteSync();
152 } 152 }
153 153
154 var targetPath = path.join(path.dirname(options.inputFile), 'packages'); 154 var targetPath = path.join(path.dirname(options.inputFile), 'packages');
155 // [fullPathSync] will canonicalize the path, resolving any symlinks. 155 // [fullPathSync] will canonicalize the path, resolving any symlinks.
156 // TODO(sigmund): once it's possible in dart:io, we just want to use a full 156 // TODO(sigmund): once it's possible in dart:io, we just want to use a full
157 // path, but not necessarily resolve symlinks. 157 // path, but not necessarily resolve symlinks.
158 var target = new File(targetPath).fullPathSync().toString(); 158 var target = new File(targetPath).absolute.resolveSymbolicLinksSync();
159 return createSymlink(target, linkPath, messages: messages); 159 return createSymlink(target, linkPath, messages: messages);
160 } 160 }
161 161
162 162
163 // TODO(jmesserly): this code was taken from Pub's io library. 163 // TODO(jmesserly): this code was taken from Pub's io library.
164 // Added error handling and don't return the file result, to match the code 164 // Added error handling and don't return the file result, to match the code
165 // we had previously. Also "target" and "link" only accept strings. And inlined 165 // we had previously. Also "target" and "link" only accept strings. And inlined
166 // the relevant parts of runProcess. Note that it uses "cmd" to get the path 166 // the relevant parts of runProcess. Note that it uses "cmd" to get the path
167 // on Windows. 167 // on Windows.
168 /** 168 /**
(...skipping 20 matching lines...) Expand all
189 if (result.exitCode != 0) { 189 if (result.exitCode != 0) {
190 var details = 'subprocess stdout:\n${result.stdout}\n' 190 var details = 'subprocess stdout:\n${result.stdout}\n'
191 'subprocess stderr:\n${result.stderr}'; 191 'subprocess stderr:\n${result.stderr}';
192 messages.error( 192 messages.error(
193 'unable to create symlink\n target: $target\n link:$link\n$details', 193 'unable to create symlink\n target: $target\n link:$link\n$details',
194 null); 194 null);
195 } 195 }
196 return null; 196 return null;
197 }); 197 });
198 } 198 }
OLDNEW
« no previous file with comments | « lib/component_build.dart ('k') | lib/observe/observable.dart » ('j') | pubspec.yaml » ('J')

Powered by Google App Engine
This is Rietveld 408576698