Skip to content

feat: add prebuilt native asset infrastructure#315

Open
HamdaanAliQuatil wants to merge 2 commits into
masterfrom
prebuilt-native-assets
Open

feat: add prebuilt native asset infrastructure#315
HamdaanAliQuatil wants to merge 2 commits into
masterfrom
prebuilt-native-assets

Conversation

@HamdaanAliQuatil

@HamdaanAliQuatil HamdaanAliQuatil commented Jul 12, 2026

Copy link
Copy Markdown
Collaborator

This adds the first prebuilt-native-asset infrastructure without checking in any binary artifacts.

What changes:

  • hook/build.dart now looks for a matching packaged prebuilt under prebuilt/<target>/ before falling back to the existing CMake source build.
  • Adds a force_source_build user define so consumers/CI can explicitly bypass prebuilts and exercise the source-build path.
  • Documents the expected prebuilt layout and binary policy in prebuilt/README.md.
  • Adds a manual build-prebuilt-assets workflow that builds host prebuilts and uploads them as workflow artifacts. It does not commit binaries or open PRs.

The intended model is still conservative: arbitrary contributor PRs should not introduce binary blobs. Actual prebuilt binaries should come from trusted automation or another explicit release process.

Validation:

  • dart analyze hook\\build.dart
  • dart test -p vm test/aes_ctr_counter_wrap_test.dart
  • Locally tested the prebuilt-selection path with a temporary copied Windows DLL, then removed the binary before committing.

Comment thread hook/build.dart Outdated
Comment thread hook/build.dart Outdated
Comment thread prebuilt/README.md Outdated
Comment thread prebuilt/README.md Outdated
Comment thread .github/workflows/build-prebuilt-assets.yml Outdated
@HamdaanAliQuatil HamdaanAliQuatil requested a review from jonasfj July 14, 2026 15:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants