rpm-ostree/Cargo.toml
Colin Walters e3375626d5 ci: Drop custom msrv checking
The way this tries to replace the system Rust is hacky and
actually I realized belatedly I may have broken it recently; basically
`installdeps.sh` re-adds the system one, and it's hard to be sure
with our current buildsystem we're using the newer one from `$PATH`.

What we really want to do here is use a CentOS8 buildroot,
which will automatically enforce this in a better way along
with solving other problems.  But right now we've broken
that because libdnf requires a too-new libmodulemd.

So let's just rely on the Fedora rust for now.
2021-02-01 04:54:52 -05:00

86 lines
2.3 KiB
TOML

[package]
name = "rpmostree-rust"
version = "0.1.0"
authors = ["Colin Walters <walters@verbum.org>", "Jonathan Lebon <jonathan@jlebon.com>"]
edition = "2018"
# See https://rust-lang.github.io/rfcs/2495-min-rust-version.html
# Usually, we try to keep this to no newer than current RHEL8 rust-toolset version.
# You can find the current versions from here:
# https://access.redhat.com/documentation/en-us/red_hat_developer_tools/1/
# However, right now we are bumping to 1.48 so we can use https://cxx.rs
#rust = "1.48"
links = "rpmostreeinternals"
# This currently needs to duplicate the libraries in configure.ac
# until we unify on Cargo as our build system
[package.metadata.system-deps]
libarchive = "3.0"
jsonglib = { name = "json-glib-1.0", version = "1" }
polkitgobject = { name = "polkit-gobject-1", version = "0" }
rpm = "4"
librepo = "1"
libsolv = "0.7"
[dependencies]
anyhow = "1.0.38"
paste = "1.0"
serde = { version = "1.0.123", features = ["derive"] }
serde_derive = "1.0.118"
serde_json = "1.0.61"
serde_yaml = "0.8.15"
libc = "0.2.84"
cxx = "1.0.28"
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.2.0"
clap = "2.33.3"
structopt = "0.3.21"
openat = "0.1.19"
openat-ext = "^0.1.11"
curl = "0.4.34"
rayon = "1.5.0"
c_utf8 = "0.1.0"
rand = "0.8.3"
phf = { version = "0.8", features = ["macros"] }
systemd = "0.8.2"
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" }
memfd = "0.3.0"
rust-ini = "0.16.1"
os-release = "0.1.0"
[build-dependencies]
cbindgen = "0.16.0"
system-deps = "2.0"
anyhow = "1.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 = []
fedora-integration = []
default = []