|
|
|
# Generated by rust2rpm 18
|
|
|
|
%bcond_without check
|
|
|
|
|
|
|
|
%global crate libbpf-cargo
|
|
|
|
|
|
|
|
Name: rust-%{crate}
|
|
|
|
Version: 0.9.3
|
|
|
|
Release: %autorelease
|
|
|
|
Summary: Cargo plugin to build bpf programs
|
|
|
|
|
|
|
|
# Upstream license specification: LGPL-2.1 OR BSD-2-Clause
|
|
|
|
License: LGPLv2 or BSD
|
|
|
|
URL: https://crates.io/crates/libbpf-cargo
|
|
|
|
Source: %{crates_source}
|
|
|
|
# Turn on the novendor feature by default
|
|
|
|
Patch0: libbpf-cargo-fix-metadata.diff
|
|
|
|
# Downgrade libbpf-sys to 0.4.0-2; this patch is meant for Fedora 35 and lower
|
|
|
|
# where libbpf is still at 0.4.0
|
|
|
|
Patch1: libbpf-cargo-downgrade-libbpf-sys.patch
|
|
|
|
|
|
|
|
ExclusiveArch: %{rust_arches}
|
|
|
|
%if %{__cargo_skip_build}
|
|
|
|
BuildArch: noarch
|
|
|
|
%endif
|
|
|
|
|
|
|
|
BuildRequires: rust-packaging
|
|
|
|
%if %{with check}
|
|
|
|
BuildRequires: clang
|
|
|
|
BuildRequires: rustfmt
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%global _description %{expand:
|
|
|
|
Cargo plugin to build bpf programs.}
|
|
|
|
|
|
|
|
%description %{_description}
|
|
|
|
|
|
|
|
%if ! %{__cargo_skip_build}
|
|
|
|
%package -n %{crate}
|
|
|
|
Summary: %{summary}
|
|
|
|
|
|
|
|
%description -n %{crate} %{_description}
|
|
|
|
|
|
|
|
%files -n %{crate}
|
|
|
|
%license LICENSE LICENSE.BSD-2-Clause LICENSE.LPGL-2.1
|
|
|
|
%doc README.md
|
|
|
|
%{_bindir}/cargo-libbpf
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
Summary: %{summary}
|
|
|
|
BuildArch: noarch
|
|
|
|
Requires: clang
|
|
|
|
Requires: rustfmt
|
|
|
|
|
|
|
|
%description devel %{_description}
|
|
|
|
|
|
|
|
This package contains library source intended for building other packages
|
|
|
|
which use "%{crate}" crate.
|
|
|
|
|
|
|
|
%files devel
|
|
|
|
%license LICENSE LICENSE.BSD-2-Clause LICENSE.LPGL-2.1
|
|
|
|
%doc README.md
|
|
|
|
%{cargo_registry}/%{crate}-%{version_no_tilde}/
|
|
|
|
|
|
|
|
%package -n %{name}+default-devel
|
|
|
|
Summary: %{summary}
|
|
|
|
BuildArch: noarch
|
|
|
|
|
|
|
|
%description -n %{name}+default-devel %{_description}
|
|
|
|
|
|
|
|
This package contains library source intended for building other packages
|
|
|
|
which use "default" feature of "%{crate}" crate.
|
|
|
|
|
|
|
|
%files -n %{name}+default-devel
|
|
|
|
%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
|
|
|
|
|
|
|
|
%package -n %{name}+novendor-devel
|
|
|
|
Summary: %{summary}
|
|
|
|
BuildArch: noarch
|
|
|
|
|
|
|
|
%description -n %{name}+novendor-devel %{_description}
|
|
|
|
|
|
|
|
This package contains library source intended for building other packages
|
|
|
|
which use "novendor" feature of "%{crate}" crate.
|
|
|
|
|
|
|
|
%files -n %{name}+novendor-devel
|
|
|
|
%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q -n %{crate}-%{version_no_tilde}
|
|
|
|
%patch0 -p1
|
|
|
|
%if 0%{?fedora} < 36
|
|
|
|
%patch1 -p1
|
|
|
|
%endif
|
|
|
|
%cargo_prep
|
|
|
|
|
|
|
|
%generate_buildrequires
|
|
|
|
%cargo_generate_buildrequires
|
|
|
|
|
|
|
|
%build
|
|
|
|
%cargo_build
|
|
|
|
|
|
|
|
%install
|
|
|
|
%cargo_install
|
|
|
|
|
|
|
|
%if %{with check}
|
|
|
|
%check
|
|
|
|
# These tests don't work when run outside of the git repo
|
|
|
|
# https://github.com/libbpf/libbpf-rs/issues/107
|
|
|
|
%cargo_test -- -- --skip test_skeleton_basic --skip test_skeleton_builder_basic --skip test_skeleton_datasec --skip test_skeleton_empty_source
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
%autochangelog
|