Resolves: RHEL-109000 There are situations when the kernel tarball dist is different from the package dist, e.g. when building via CentOS Stream during the exception phase (c10s will use .el10 while RHEL will use .el10_Y). OpenScanHub may sometimes use .el10_Y, too. Signed-off-by: Viktor Malik <vmalik@redhat.com>
58 lines
1.6 KiB
RPMSpec
58 lines
1.6 KiB
RPMSpec
# We build bpftool from RHEL kernel sources, that's why we use
|
|
# directly kernel tar for RHEL kernel build.
|
|
# We update bpftool's 'sources' file with proper hash that's
|
|
# used as kernel tar.
|
|
|
|
# RHEL kernel version-release
|
|
%define kver 6.12.0-103
|
|
%define kdist .el10
|
|
%define source linux-%{kver}%{kdist}
|
|
|
|
Name: bpftool
|
|
Version: 7.6.0
|
|
Release: 3%{?dist}
|
|
Summary: Inspection and simple manipulation of eBPF programs and maps
|
|
|
|
%global libname libbpf
|
|
%global sources %{name}-%{libname}-v%{version}-sources
|
|
|
|
License: GPL-2.0-only OR BSD-2-Clause
|
|
Source: %{source}.tar.xz
|
|
|
|
ExcludeArch: %{ix86}
|
|
|
|
BuildRequires: gcc
|
|
BuildRequires: make
|
|
BuildRequires: binutils-devel
|
|
BuildRequires: elfutils-libelf-devel
|
|
BuildRequires: libcap-devel
|
|
BuildRequires: llvm-devel
|
|
BuildRequires: clang
|
|
BuildRequires: python3-docutils
|
|
BuildRequires: kernel-devel
|
|
|
|
%description
|
|
This package contains the bpftool, which allows inspection and simple
|
|
manipulation of eBPF programs and maps.
|
|
|
|
%prep
|
|
%autosetup -p1 -n %{source}
|
|
|
|
%build
|
|
# We need to use vmlinux.h from kernel-devel rather than the one from the running system
|
|
%define kernel_version %(rpm -q --qf "%%{VERSION}-%%{RELEASE}.%%{ARCH}" kernel-devel)
|
|
pushd tools/bpf/bpftool
|
|
%make_build EXTRA_CFLAGS="%{build_cflags}" EXTRA_LDFLAGS="%{build_ldflags}" VMLINUX_H="/usr/src/kernels/%{kernel_version}/vmlinux.h"
|
|
|
|
%install
|
|
pushd tools/bpf/bpftool
|
|
%make_install prefix=%{_prefix} bash_compdir=%{_sysconfdir}/bash_completion.d/ mandir=%{_mandir} doc-install
|
|
|
|
%files
|
|
%{_sbindir}/bpftool
|
|
%{_sysconfdir}/bash_completion.d/bpftool
|
|
%{_mandir}/man8/bpftool*.8*
|
|
|
|
%changelog
|
|
%autochangelog
|