You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Allow macro developers to cross-compile their macros for all relevant platforms and include generated binaries in package tarballs during scarb package. The goal of this task is to teach Scarb to look for such binaries in package sources and prefer it over compiling macros locally.
What determines whether package contains prebuilt binaries?
Any Scarb package that contains a target/scarb/cairo-plugin directory in tarball is considered as one containing prebuilt binaries. This name was chosen because it nicely hides inside Scarb’s/Cargo’s standard build file directory, which is very likely to already be avoided in source repositories and thus shouldn’t conflict with package sources.
Within this directory, binaries for all platforms will follow the following naming pattern: ${PACKAGE_NAME}_v${PACKAGE_VERSION}_${TARGET}.${so|dylib|dll}
Loading
When loading procmacro package that is present in the allowlist (#1769), Scarb will look for the /target/scarb/cairo-plugin directory and will attempt to load a matching binary if present. In any case this loading process fails, Scarb will always fall back to source-code compilation. This will happen silently without any warnings.
The text was updated successfully, but these errors were encountered:
Allow macro developers to cross-compile their macros for all relevant platforms and include generated binaries in package tarballs during
scarb package
. The goal of this task is to teach Scarb to look for such binaries in package sources and prefer it over compiling macros locally.Platform support
Binaries should be produced for all platforms supported by Scarb, and Scarb should attempt to load them on all of these:
aarch64-apple-darwin
aarch64-unknown-linux-gnu
x86_64-apple-darwin
x86_64-pc-windows-msvc
x86_64-unknown-linux-gnu
What determines whether package contains prebuilt binaries?
Any Scarb package that contains a
target/scarb/cairo-plugin directory
in tarball is considered as one containing prebuilt binaries. This name was chosen because it nicely hides inside Scarb’s/Cargo’s standard build file directory, which is very likely to already be avoided in source repositories and thus shouldn’t conflict with package sources.Within this directory, binaries for all platforms will follow the following naming pattern:
${PACKAGE_NAME}_v${PACKAGE_VERSION}_${TARGET}.${so|dylib|dll}
Loading
When loading procmacro package
that is present in the allowlist(#1769), Scarb will look for the/target/scarb/cairo-plugin
directory and will attempt to load a matching binary if present. In any case this loading process fails, Scarb will always fall back to source-code compilation. This will happen silently without any warnings.The text was updated successfully, but these errors were encountered: