File opensnitchd-ebpf.spec of Package opensnitchd-ebpf
# Spec file for opensnitchd
Name: opensnitchd-ebpf
Version: 1.7.1
Release: 0
License: GPL-3.0
Summary: An application firewall
Url: https://github.com/evilsocket/opensnitch
Source: v1.7.1.tar.gz
BuildRequires: gcc
BuildRequires: gzip
BuildRequires: cmake
BuildRequires: clang
BuildRequires: kernel-source
BuildRequires: kernel-vanilla-devel
BuildRequires: kernel-devel
BuildRequires: linux-glibc-devel
BuildRequires: flex
BuildRequires: bison
BuildRequires: bc
BuildRequires: llvm
BuildRequires: libelf-devel
BuildRequires: rsync
Requires: opensnitchd
%description
opensnitchd ebpf monitor backend
%prep
%setup -q -n opensnitch-%{version}
cp -r /usr/src/linux-$(uname -r) linux/
%ifarch armv6hl armv7hl
patch linux/arch/arm/include/asm/unified.h < ebpf_prog/arm-clang-asm-fix.patch
%endif
%build
# EBPF
cd linux
yes "" | make oldconfig
make prepare
make headers_install
cd ..
cd ebpf_prog
make KERNEL_DIR=../linux KERNEL_HEADERS=../
%install
cd ebpf_prog
mkdir modules
mv opensnitch*o modules/
llvm-strip -g modules/opensnitch*.o
mkdir -p %{buildroot}/usr/lib/opensnitchd/ebpf/
cp modules/opensnitch*.o %{buildroot}/usr/lib/opensnitchd/ebpf/
%files
%dir /usr/lib/opensnitchd/
/usr/lib/opensnitchd/ebpf/
%changelog