libbpf/libbpf.spec
2023-04-28 19:58:21 +08:00

120 lines
4.5 KiB
RPMSpec

%global githubname libbpf
%global githubver 0.8.1
%global githubfull %{githubname}-%{githubver}
Name: %{githubname}
Version: %{githubver}
Release: 5
Summary: Libbpf library
License: LGPLv2 or BSD
URL: https://github.com/%{githubname}/%{githubname}
Source: https://github.com/%{githubname}/%{githubname}/archive/refs/tags/v%{githubver}.tar.gz
BuildRequires: gcc elfutils-libelf-devel elfutils-devel
#patches
Patch0000: backport-libbpf-Fix-determine_ptr_size-guessing.patch
Patch0001: backport-libbpf-preserve-errno-across-pr_warn-pr_info-pr_debug.patch
Patch0002: backport-libbpf-Ensure-functions-with-always_inline-attribute-are-inline.patch
Patch0003: backport-libbpf-Fix-the-name-of-a-reused-map.patch
Patch0004: backport-libbpf-Fix-crash-if-SEC-freplace-programs-don-t-have.patch
Patch0005: backport-libbpf-Fix-the-case-of-running-as-non-root-with-capa.patch
Patch0006: backport-libbpf-Fix-overrun-in-netlink-attribute-iteration.patch
Patch0007: backport-libbpf-Fix-use-after-free-in-btf_dump_name_dups.patch
Patch0008: backport-libbpf-Deal-with-section-with-no-data-gracefully.patch
Patch0009: backport-libbpf-Fix-null-pointer-dereference-in-find_prog_by_.patch
Patch0010: backport-sync-start-syncing-include-uapi-linux-fcntl.h-UAPI-h.patch
Patch0011: backport-libbpf-Handle-size-overflow-for-ringbuf-mmap.patch
Patch0012: backport-libbpf-Use-page-size-as-max_entries-when-probing-rin.patch
# This package supersedes libbpf from kernel-tools,
# which has default Epoch: 0. By having Epoch: 1
# this libbpf will take over smoothly
Epoch: 2
%description
A mirror of bpf-next linux tree bpf-next/tools/lib/bpf directory plus its
supporting header files. The version of the package reflects the version of
ABI.
%package devel
Summary: Development files for %{name}
Requires: %{name} = 2:%{version}-%{release}
Requires: kernel-headers >= 5.10.0
%description devel
The %{name}-devel package contains libraries header files for
developing applications that use %{name}
%package static
Summary: Static library for libbpf development
Requires: %{name}-devel = 2:%{version}-%{release}
%description static
The %{name}-static package contains static library for
developing applications that use %{name}
%global make_flags DESTDIR=%{buildroot} OBJDIR=%{_builddir} CFLAGS="%{build_cflags} -fPIC -Werror" LDFLAGS="%{build_ldflags} -Werror -Wl,--no-as-needed -Wl,-z,noexecstack" LIBDIR=/%{_libdir} NO_PKG_CONFIG=1
%prep
%autosetup -n %{githubfull} -p1
%build
%make_build -C ./src %{make_flags}
%install
%make_install -C ./src %{make_flags}
%files
%{_libdir}/libbpf.so.%{githubver}
%{_libdir}/libbpf.so.0
%files devel
%{_libdir}/libbpf.so
%{_includedir}/bpf/
%{_libdir}/pkgconfig/libbpf.pc
%files static
%{_libdir}/libbpf.a
%changelog
* Thu May 4 2023 zhangmingyi <zhangmingyi5@huawei.com> -2:0.8.1-5
- add -Werror -Wl,-z,noexecstack options
* Thu Feb 23 2023 JofDiamonds <kwb0523@163.com> -2:0.8.1-4
- backport patches from upstream:
backport-libbpf-Fix-overrun-in-netlink-attribute-iteration.patch
backport-libbpf-Fix-use-after-free-in-btf_dump_name_dups.patch
backport-libbpf-Deal-with-section-with-no-data-gracefully.patch
backport-libbpf-Fix-null-pointer-dereference-in-find_prog_by_.patch
backport-sync-start-syncing-include-uapi-linux-fcntl.h-UAPI-h.patch
backport-libbpf-Handle-size-overflow-for-ringbuf-mmap.patch
backport-libbpf-Use-page-size-as-max_entries-when-probing-rin.patch
* Fri Jan 6 2023 zhangmingyi<zhangmingyi5@huawei.com> - 2:0.8.1-3
-- backporting: backport-libbpf-Ensure-functions-with-always_inline-attribute-are-inline.patch
backport-libbpf-Fix-the-name-of-a-reused-map.patch
backport-libbpf-preserve-errno-across-pr_warn-pr_info-pr_debug.patch
* Sat Nov 26 2022 zhangmingyi <zhangmingyi@huawei.com> -2:0.8.1-2
- libbpf.spec - modify Source address
* Tue Nov 8 2022 liuxin <liuxin350@huawei.com> - 2:0.8.1-1
- update libbpf from v0.3 to v0.8.1
* Wed Oct 26 2022 zhangmingyi <zhangmingyi5@huawei.com> - 2:0.3-3
- Fix determine_ptr_size() guessing
* Mon Aug 22 2022 hujiawang <hujiawang1@huawei.com> - 2:0.3-2
- change the package name
* Tue Dec 28 2021 sunsuwan <sunsuwan2@huawei.com> - 2:0.3-1
- update libbpf from v0.1.1 to v0.3
* Wed Oct 28 2020 hubble_zhu <hubble_zhu@qq.com> - 0.1.1-1
- update libbpf from v0.0.6 to v0.1.1
* Sun Apr 26 2020 openEuler Buildteam <buildteam@openeuler.org> - 0.0.6-1
- Package init