diff --git a/.gitignore b/.gitignore index 7124599..838b9c3 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/v0.4.0.tar.gz +SOURCES/linux-5.14.0-13.el9.tar.xz diff --git a/.libbpf.metadata b/.libbpf.metadata index f059fd6..d42020a 100644 --- a/.libbpf.metadata +++ b/.libbpf.metadata @@ -1 +1 @@ -922e45b50deab7d7a8779bbc6cef2a332a32f966 SOURCES/v0.4.0.tar.gz +c43dce2d91468f7917cea526af010505baf4d8ba SOURCES/linux-5.14.0-13.el9.tar.xz diff --git a/SPECS/libbpf.spec b/SPECS/libbpf.spec index 3357cf9..25bd57c 100644 --- a/SPECS/libbpf.spec +++ b/SPECS/libbpf.spec @@ -1,16 +1,20 @@ -%global githubname libbpf -%global githubver 0.4.0 -%global githubfull %{githubname}-%{githubver} - -Name: %{githubname} -Version: %{githubver} -Release: 1%{?dist} +# We build libbpf from RHEL kernel sources, that's why we use +# directly kernel tar for RHEL kernel build. +# We update libbpf's 'sources' file with proper hash that's +# used as kernel tar. + +# RHEL kernel version-release +%define kver 5.14.0-13 +%define source linux-%{kver}.el9 + +Name: libbpf +Version: 0.5.0 +Release: 3%{?dist} Summary: Libbpf library License: LGPLv2 or BSD -URL: https://github.com/%{githubname}/%{githubname} -Source: https://github.com/%{githubname}/%{githubname}/archive/v%{githubver}.tar.gz -BuildRequires: gcc elfutils-libelf-devel elfutils-devel +Source0: %{source}.tar.xz +BuildRequires: gcc elfutils-libelf-devel elfutils-devel python3 BuildRequires: make # This package supersedes libbpf from kernel-tools, @@ -26,7 +30,7 @@ ABI. %package devel Summary: Development files for %{name} Requires: %{name} = 2:%{version}-%{release} -Requires: kernel-headers >= 5.14.0-0.rc7.54 +Requires: kernel-headers >= %{kver} Requires: zlib %description devel @@ -43,16 +47,21 @@ developing applications that use %{name} %define _lto_cflags %{nil} -%global make_flags DESTDIR=%{buildroot} OBJDIR=%{_builddir} CFLAGS="%{build_cflags} -fPIC" LDFLAGS="%{build_ldflags} -Wl,--no-as-needed" LIBDIR=/%{_libdir} NO_PKG_CONFIG=1 +%global libbpf_make \ + make DESTDIR=%{buildroot} OBJDIR=%{_builddir} CFLAGS="%{build_cflags} -fPIC" LDFLAGS="%{build_ldflags} -Wl,--no-as-needed" LIBDIR=/%{_libdir} NO_PKG_CONFIG=1 %prep -%autosetup -n %{githubfull} +%setup -n %{source} %build -%make_build -C ./src %{make_flags} +pushd tools/lib/bpf +%{libbpf_make} prefix=%{_prefix} +popd %install -%make_install -C ./src %{make_flags} +pushd tools/lib/bpf +%{libbpf_make} prefix=%{_prefix} install_lib install_headers install_pkgconfig +popd %files %{_libdir}/libbpf.so.%{version} @@ -67,6 +76,18 @@ developing applications that use %{name} %{_libdir}/libbpf.a %changelog +* Tue Nov 09 2021 Jiri Olsa - 2:0.5.0-3 +- pull new kernel sources with fixes +- Related: rhbz#2006305 + +* Fri Oct 11 2021 Jiri Olsa - 2:0.5.0-2 +- Fix passing of system's CFLAGS/LDFLAGS +- Related: rhbz#2012774 + +* Fri Oct 1 2021 Jiri Olsa - 2:0.5.0-1 +- update to RHEL spec +- Related: rhbz#2009725 + * Wed Aug 25 2021 Jiri Olsa - 2:0.4.0-1 - updated to 0.4.0 Related: rhbz#1997597