Hello,
I maintain the
https://docs.rs/re2 wrapper crate. I spent a while on documentation and API design. I would love to know what requirements users would have for this.
I know the build process is wacky and confusing. I was using it to experiment with junyer's blessing. RE2 in particular can be very effectively and robustly built in a cargo build script (not an easy thing to do), and I can and will make that happen. The prior experimentation will be relegated to a cargo feature, and moved out of the spack-rs monorepo.
I want to know: for such a build script, what build environment does it need to work in? How should it identify and/or build RE2? Can you provide examples I can reproduce on my own?
The openssl-sys crate tries pkg-config or builds from scratch. I'm leaning towards vendoring a tarball and always building it from scratch (witth the cc crate).
Since version selection would be totally static, I can store a checksum, relative_path, and file_length in package.metadata, corresponding to the vendored RE2 release tarball. The re2-sys build script can verify that and then write the RE2 version string with a cargo println or something.
Please let me know! Thanks!