blob: 3619a90107b23aaed0b402ad8ac473f43b0cefce (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
# since strip in binutils fails to strip bpf objects in this package
# use eu-strip of elfutils instead
%global __strip /usr/bin/eu-strip
# eu-strip cannot strip static libs
# use strip for static libs
%global __brp_strip_static_archive %{_rpmconfigdir}/brp-strip-static-archive /usr/bin/strip
Name: xdp-tools
Version: 1.0.1
Release: 3
Summary: Utilities and example programs for use with XDP
%global _soversion 1.0.0
License: GPLv2
URL: https://github.com/xdp-project/%{name}
Source0: https://github.com/xdp-project/%{name}/archive/v%{version}.tar.gz
BuildRequires: libbpf-devel
BuildRequires: elfutils-libelf-devel
BuildRequires: zlib-devel
BuildRequires: libpcap-devel
BuildRequires: clang >= 10.0.0
BuildRequires: llvm >= 10.0.0
BuildRequires: make
BuildRequires: gcc
BuildRequires: pkgconfig
BuildRequires: m4
BuildRequires: emacs-nox
BuildRequires: wireshark-cli
BuildRequires: elfutils
# Always keep xdp-tools and libxdp packages in sync
Requires: libxdp = %{version}-%{release}
# find-debuginfo produces empty debugsourcefiles.list
# disable the debug package to avoid rpmbuild error'ing out because of this
%global debug_package %{nil}
%global _hardened_build 1
%description
Utilities and example programs for use with XDP
%package -n libxdp
Summary: XDP helper library
Requires: kernel-headers
%package -n libxdp-devel
Summary: Development files for libxdp
Requires: kernel-headers
Requires: libxdp = %{version}-%{release}
%package -n libxdp-static
Summary: Static library files for libxdp
Requires: kernel-headers
Requires: libxdp-devel = %{version}-%{release}
%description -n libxdp
The libxdp package contains the libxdp library for managing XDP programs,
used by the %{name} package
%description -n libxdp-devel
The libxdp-devel package contains headers used for building XDP programs using
libxdp.
%description -n libxdp-static
The libxdp-static package contains the static library version of libxdp.
%prep
%autosetup -p1 -n %{name}-%{version}
%build
export CFLAGS='%{build_cflags}'
export LDFLAGS='%{build_ldflags}'
export LIBDIR='%{_libdir}'
export CLANG=%{_bindir}/clang
export LLC=%{_bindir}/llc
export PRODUCTION=1
export DYNAMIC_LIBXDP=1
export FORCE_SYSTEM_LIBBPF=1
export FORCE_EMACS=1
./configure
make %{?_smp_mflags} V=1
%install
export DESTDIR='%{buildroot}'
export SBINDIR='%{_sbindir}'
export LIBDIR='%{_libdir}'
export MANDIR='%{_mandir}'
export DATADIR='%{_datadir}'
export HDRDIR='%{_includedir}/xdp'
make install V=1
%files
%{_sbindir}/xdp-filter
%{_sbindir}/xdp-loader
%{_sbindir}/xdpdump
%{_mandir}/man8/*
%{_libdir}/bpf/xdpfilt_*.o
%{_libdir}/bpf/xdpdump_*.o
%{_datadir}/xdp-tools/
%license LICENSE
%files -n libxdp
%{_libdir}/libxdp.so.1
%{_libdir}/libxdp.so.%{_soversion}
%{_libdir}/bpf/xdp-dispatcher.o
%{_mandir}/man3/*
%files -n libxdp-static
%{_libdir}/libxdp.a
%files -n libxdp-devel
%{_includedir}/xdp/*.h
%{_libdir}/libxdp.so
%{_libdir}/pkgconfig/libxdp.pc
%changelog
* Mon Oct 10 2022 LemmyHuang <huangliming5@huawei.com> 1.0.1-3
- correct release number format
* Wed Apr 20 2022 Di Wang <wangdi@kylinos.cn> 1.0.1-2
- workaround for stripping failure of bpf objects by binutils
* Fri Sep 10 2021 Pengju Jiang <jiangpengju2@huawei.com> 1.0.1-1
- solve the strip problem of dark conversion compilation
* Tue Oct 20 2020 Hubble Zhu <hubble_zhu@qq.com> 1.0.1-0
- Initial package
|