blob: fafc1397a7433bab48950d732b84eda58b2c89c0 [file] [log] [blame]
# Copyright 2021 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
CROS_RUST_REMOVE_DEV_DEPS=1
inherit cros-rust
DESCRIPTION='Algorithms for demosaicing Bayer images.'
HOMEPAGE='https://github.com/wangds/libbayer.git'
SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
LICENSE="MIT"
SLOT="${PV}/${PR}"
KEYWORDS="*"
DEPEND="
>=dev-rust/byteorder-1.1.0 <dev-rust/byteorder-2.0.0_alpha:=
=dev-rust/libc-0.2*:=
>=dev-rust/quick-error-1.2.0 <dev-rust/quick-error-2.0.0_alpha:=
=dev-rust/rayon-0.8*:=
"
RDEPEND="${DEPEND}"
RESTRICT="test"
src_prepare() {
cros-rust_src_prepare
# Cargo.toml has:
# crate-type = ["rlib", "dylib"]
# so that this crate can be used as a normal Rust library or as a DSO from
# other languages. But that confuses cargo when it tries to use this crate
# in an executable, like hps-mon, because it thinks we want to link this
# crate as a dylib instead of an rlib:
# error: cannot prefer dynamic linking when performing LTO
# note: only 'staticlib', 'bin', and 'cdylib' outputs are supported with LTO
# Since nothing uses the DSO from this crate, and we aren't packaging it,
# just hack Cargo.toml to make this into a normal Rust library.
sed -i -e '/crate-type = /d' Cargo.toml
}