mirror of
https://github.com/dart-lang/sdk
synced 2024-09-05 00:13:50 +00:00
[SDK] Adds --enable-experiment to dart2native.
Bug: https://github.com/dart-lang/sdk/issues/42849 Change-Id: Ibde382971a6b8b296f9a0a8792f0fec0e1741286 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157963 Commit-Queue: Clement Skau <cskau@google.com> Reviewed-by: Tess Strickland <sstrickl@google.com>
This commit is contained in:
parent
ebae77f1b7
commit
77ca1e0356
|
@ -59,6 +59,10 @@ E.g.: dart2native --packages=/tmp/pkgs main.dart
|
|||
''')
|
||||
..addOption('save-debugging-info', abbr: 'S', valueHelp: 'path', help: '''
|
||||
Remove debugging information from the output and save it separately to the specified file. <path> can be relative or absolute.
|
||||
''')
|
||||
..addOption('enable-experiment',
|
||||
defaultsTo: '', valueHelp: 'feature', hide: true, help: '''
|
||||
Comma separated list of experimental features.
|
||||
''')
|
||||
..addFlag('verbose',
|
||||
abbr: 'v', negatable: false, help: 'Show verbose output.');
|
||||
|
@ -99,6 +103,7 @@ Remove debugging information from the output and save it separately to the speci
|
|||
debugFile: parsedArgs['save-debugging-info'],
|
||||
packages: parsedArgs['packages'],
|
||||
defines: parsedArgs['define'],
|
||||
enableExperiment: parsedArgs['enable-experiment'],
|
||||
enableAsserts: parsedArgs['enable-asserts'],
|
||||
verbose: parsedArgs['verbose'],
|
||||
extraOptions: parsedArgs['extra-gen-snapshot-options']);
|
||||
|
|
|
@ -39,11 +39,13 @@ Future markExecutable(String outputFile) {
|
|||
|
||||
Future generateAotKernel(String dart, String genKernel, String platformDill,
|
||||
String sourceFile, String kernelFile, String packages, List<String> defines,
|
||||
{List<String> extraGenKernelOptions = const []}) {
|
||||
{String enableExperiment = '',
|
||||
List<String> extraGenKernelOptions = const []}) {
|
||||
return Process.run(dart, [
|
||||
genKernel,
|
||||
'--platform',
|
||||
platformDill,
|
||||
if (enableExperiment.isNotEmpty) '--enable-experiment=${enableExperiment}',
|
||||
'--aot',
|
||||
'-Ddart.vm.product=true',
|
||||
...(defines.map((d) => '-D${d}')),
|
||||
|
|
|
@ -24,6 +24,7 @@ Future<void> generateNative({
|
|||
String debugFile,
|
||||
String packages,
|
||||
List<String> defines,
|
||||
String enableExperiment = '',
|
||||
bool enableAsserts = false,
|
||||
bool verbose = false,
|
||||
List<String> extraOptions = const [],
|
||||
|
@ -52,7 +53,8 @@ Future<void> generateNative({
|
|||
|
||||
final String kernelFile = path.join(tempDir.path, 'kernel.dill');
|
||||
final kernelResult = await generateAotKernel(Platform.executable, genKernel,
|
||||
productPlatformDill, sourcePath, kernelFile, packages, defines);
|
||||
productPlatformDill, sourcePath, kernelFile, packages, defines,
|
||||
enableExperiment: enableExperiment);
|
||||
if (kernelResult.exitCode != 0) {
|
||||
stderr.writeln(kernelResult.stdout);
|
||||
stderr.writeln(kernelResult.stderr);
|
||||
|
|
Loading…
Reference in a new issue