dart-sdk/pkg/vm/pubspec.yaml
Daco Harkes 55b4542dab [pkg/vm] Native assets validator and synthesizer
Validates a yaml format encoding a native asset mapping, and
synthesizes a component containing a pragma with this information.

Yaml example:

```
format-version: [1,0,0]
native-assets:
  linux_x64:
    'package:foo/foo.dart': ['absolute', '/path/to/libfoo.so']
```

Generated format example:

```
@pragma('vm:ffi:native-assets': {
  'linux_x64' : {
     'package:foo/foo.dart': ['absolute', '/path/to/libfoo.so']
  }
})
library;
```

TEST=pkg/vm/test/native_assets/synthesizer_test.dart
TEST=pkg/vm/test/native_assets/validator_test.dart

In a follow-up CL, we will consume the yaml from `gen_kernel`
and consume the pragma in the VM for `@FfiNative`s.

Bug: https://github.com/dart-lang/sdk/issues/49803
Change-Id: Ie8d93b38ff4406ef7485e5513807e89b2772164b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/272660
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
2022-12-01 11:33:27 +00:00

27 lines
597 B
YAML

name: vm
description: VM specific Dart code and helper scripts
# This package is not intended for consumption on pub.dev. DO NOT publish.
publish_to: none
environment:
sdk: '>=2.15.0 <3.0.0'
# Use 'any' constraints here; we get our versions from the DEPS file.
dependencies:
args: any
build_integration: any
collection: any
crypto: any
front_end: any
kernel: any
package_config: any
yaml: any
# Use 'any' constraints here; we get our versions from the DEPS file.
dev_dependencies:
expect: any
json_rpc_2: any
lints: any
path: any
test: any
web_socket_channel: any