08c414f897
cxx.rs (aka cxxbridge) and cbindgen are both generating source code. Since the last release we've introduced the former, and we need to ensure that the generated cxx.rs source ends up in release tarballs the same way as the cbindgen code. Rationalize and clean up the binding infrastructure. Drop support for the vendored cbindgen which we weren't actually using: Closes: https://github.com/coreos/rpm-ostree/issues/2392 Move the cxx-rs and cbindgen bits into the same place, and update our CoreOS CI build to use a separate `Makefile.bindings` that just generates the code, so our CI still "works like" a main Koji RPM build.
62 lines
1.4 KiB
TOML
62 lines
1.4 KiB
TOML
[package]
|
|
name = "rpmostree-rust"
|
|
version = "0.1.0"
|
|
authors = ["Colin Walters <walters@verbum.org>", "Jonathan Lebon <jonathan@jlebon.com>"]
|
|
edition = "2018"
|
|
|
|
[dependencies]
|
|
anyhow = "1.0.35"
|
|
serde = "1.0.118"
|
|
serde_derive = "1.0.118"
|
|
serde_json = "1.0.60"
|
|
serde_yaml = "0.8.14"
|
|
libc = "0.2.81"
|
|
cxx = "1.0.18"
|
|
nix = "0.19.1"
|
|
glib-sys = "0.10.1"
|
|
glib = "0.10.3"
|
|
gio-sys = "0.10.1"
|
|
gio = "0.9.1"
|
|
ostree = { version = "0.9.1", features = ["v2020_4"] }
|
|
ostree-sys = "0.7.1"
|
|
tempfile = "3.1.0"
|
|
clap = "2.33.3"
|
|
structopt = "0.3.21"
|
|
openat = "0.1.19"
|
|
openat-ext = "^0.1.9"
|
|
curl = "0.4.34"
|
|
rayon = "1.5.0"
|
|
c_utf8 = "0.1.0"
|
|
rand = "0.7.3"
|
|
phf = { version = "0.8", features = ["macros"] }
|
|
systemd = "0.8.1"
|
|
indicatif = "0.15.0"
|
|
lazy_static = "1.4.0"
|
|
envsubst = "0.2.0"
|
|
subprocess = "0.2.6"
|
|
chrono = { version = "0.4.19", features = ["serde"] }
|
|
libdnf-sys = { path = "rust/libdnf-sys", version = "0.1.0" }
|
|
|
|
[build-dependencies]
|
|
cbindgen = "0.16.0"
|
|
|
|
[lib]
|
|
name = "rpmostree_rust"
|
|
path = "rust/src/lib.rs"
|
|
crate-type = ["staticlib"]
|
|
|
|
[profile.release]
|
|
# Unwinding across FFI boundaries is undefined behavior, and anyways, we're
|
|
# [crash-only](https://en.wikipedia.org/wiki/Crash-only_software)
|
|
panic = "abort"
|
|
# We assume we're being delivered via e.g. RPM which supports split debuginfo
|
|
debug = true
|
|
# We need this to avoid leaking symbols, see
|
|
# https://internals.rust-lang.org/t/rust-staticlibs-and-optimizing-for-size/5746
|
|
lto = true
|
|
|
|
[features]
|
|
sqlite-rpmdb-default = []
|
|
|
|
default = []
|