11f0b1
%global with_check 0
11f0b1
11f0b1
%global _find_debuginfo_dwz_opts %{nil}
11f0b1
%global _dwz_low_mem_die_limit 0
11f0b1
11f0b1
%if 0%{?rhel} > 7 && ! 0%{?fedora}
11f0b1
%define gobuild(o:) \
11f0b1
go build -buildmode pie -compiler gc -tags="rpm_crashtraceback libtrust_openssl ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -linkmode=external -compressdwarf=false -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -extldflags '%__global_ldflags'" -a -v %{?**};
11f0b1
%else
11f0b1
%if ! 0%{?gobuild:1}
11f0b1
%define gobuild(o:) GO111MODULE=off go build -buildmode pie -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -linkmode=external -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -extldflags '-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld '" -a -v %{?**};
11f0b1
%endif
11f0b1
%endif
11f0b1
11f0b1
%global provider github
11f0b1
%global provider_tld com
11f0b1
%global project containers
11f0b1
%global repo oci-seccomp-bpf-hook
11f0b1
# https://github.com/containers/oci-seccomp-bpf-hook
11f0b1
%global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo}
11f0b1
%global import_path %{provider_prefix}
11f0b1
%global git0 https://%{provider}.%{provider_tld}/%{project}/%{repo}
11f0b1
11f0b1
# https://fedoraproject.org/wiki/PackagingDrafts/Go#Go_Language_Architectures
11f0b1
ExclusiveArch: %{go_arches}
11f0b1
11f0b1
Name: oci-seccomp-bpf-hook
f39f44
Version: 1.2.5
f39f44
Release: 1%{?dist}
11f0b1
Summary: OCI Hook to generate seccomp json files based on EBF syscalls used by container
11f0b1
License: ASL 2.0
11f0b1
URL: %{git0}
11f0b1
Source0: %{git0}/archive/v%{version}.tar.gz
11f0b1
BuildRequires: golang
11f0b1
BuildRequires: go-md2man
11f0b1
BuildRequires: glib2-devel
11f0b1
BuildRequires: glibc-devel
11f0b1
BuildRequires: bcc-devel
11f0b1
BuildRequires: git
11f0b1
BuildRequires: gpgme-devel
11f0b1
BuildRequires: libseccomp-devel
11f0b1
BuildRequires: make
11f0b1
Conflicts: crun < 0.17
11f0b1
Enhances: podman
11f0b1
Enhances: cri-o
11f0b1
11f0b1
%description
11f0b1
%{summary}
11f0b1
%{repo} provides a library for applications looking to use
11f0b1
the Container Pod concept popularized by Kubernetes.
11f0b1
11f0b1
%prep
11f0b1
%autosetup -Sgit
11f0b1
sed -i '/$(MAKE) -C docs install/d' Makefile
11f0b1
sed -i 's/HOOK_BIN_DIR/\%{_usr}\/libexec\/oci\/hooks.d/' %{name}.json
11f0b1
sed -i '/$(HOOK_DIR)\/%{name}.json/d' Makefile
11f0b1
11f0b1
%build
11f0b1
export GO111MODULE=off
11f0b1
export GOPATH=$(pwd):$(pwd)/_build
11f0b1
export CGO_CFLAGS="%{optflags} -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64"
11f0b1
11f0b1
mkdir _build
11f0b1
pushd _build
11f0b1
mkdir -p src/%{provider}.%{provider_tld}/%{project}
11f0b1
ln -s ../../../../ src/%{import_path}
11f0b1
popd
11f0b1
ln -s vendor src
11f0b1
11f0b1
export GOPATH=$(pwd)/_build:$(pwd)
11f0b1
export LDFLAGS="-X main.version=%{version}"
11f0b1
%gobuild -o bin/%{name} %{import_path}
11f0b1
11f0b1
pushd docs
11f0b1
go-md2man -in %{name}.md -out %{name}.1
11f0b1
popd
11f0b1
11f0b1
%install
11f0b1
%{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} install-nobuild
11f0b1
%{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} GOMD2MAN=go-md2man -C docs install-nobuild
11f0b1
11f0b1
%check
11f0b1
%if 0%{?with_check}
11f0b1
# Since we aren't packaging up the vendor directory we need to link
11f0b1
# back to it somehow. Hack it up so that we can add the vendor
11f0b1
# directory from BUILD dir as a gopath to be searched when executing
11f0b1
# tests from the BUILDROOT dir.
11f0b1
ln -s ./ ./vendor/src # ./vendor/src -> ./vendor
11f0b1
11f0b1
export GOPATH=%{buildroot}/%{gopath}:$(pwd)/vendor:%{gopath}
11f0b1
11f0b1
%if ! 0%{?gotest:1}
11f0b1
%global gotest go test
11f0b1
%endif
11f0b1
11f0b1
%gotest %{import_path}/src/%{name}
11f0b1
%endif
11f0b1
11f0b1
#define license tag if not already defined
11f0b1
%{!?_licensedir:%global license %doc}
11f0b1
11f0b1
%files
11f0b1
%license LICENSE
11f0b1
%doc README.md
11f0b1
%dir %{_libexecdir}/oci/hooks.d
11f0b1
%{_libexecdir}/oci/hooks.d/%{name}
11f0b1
%{_datadir}/containers/oci/hooks.d/%{name}.json
11f0b1
%{_mandir}/man1/%{name}.1*
11f0b1
11f0b1
%changelog
f39f44
* Wed Mar 16 2022 Jindrich Novy <jnovy@redhat.com> - 1.2.5-1
f39f44
- update to https://github.com/containers/oci-seccomp-bpf-hook/releases/tag/v1.2.5
f39f44
- Related: #2061390
f39f44
11f0b1
* Wed May 26 2021 Jindrich Novy <jnovy@redhat.com> - 1.2.3-3
11f0b1
- change runc dependency to conflict
11f0b1
- Related: #1934415
11f0b1
11f0b1
* Wed May 19 2021 Jindrich Novy <jnovy@redhat.com> - 1.2.3-2
11f0b1
- remove unneeded patch
11f0b1
- Related: #1934415
11f0b1
11f0b1
* Wed May 19 2021 Jindrich Novy <jnovy@redhat.com> - 1.2.3-1
11f0b1
- update to https://github.com/containers/oci-seccomp-bpf-hook/releases/tag/v1.2.3
11f0b1
- fix build
11f0b1
- Related: #1934415
11f0b1
11f0b1
* Mon Feb 22 2021 Jindrich Novy <jnovy@redhat.com> - 1.2.0-2
11f0b1
- revert back to 1.2.0 - build issues
11f0b1
- Related: #1883490
11f0b1
11f0b1
* Fri Feb 19 2021 Jindrich Novy <jnovy@redhat.com> - 1.2.1-1
11f0b1
- update to
11f0b1
  https://github.com/containers/oci-seccomp-bpf-hook/releases/tag/v1.2.1
11f0b1
- require crun >= 0.17
11f0b1
- Related: #1883490
11f0b1
11f0b1
* Thu Jan 28 2021 Jindrich Novy <jnovy@redhat.com> - 1.2.0-1
11f0b1
- revert back to 1.2.0 due to build issues
11f0b1
- Related: #1883490
11f0b1
11f0b1
* Thu Jan 28 2021 Jindrich Novy <jnovy@redhat.com> - 1.2.1-1
11f0b1
- update to https://github.com/containers/oci-seccomp-bpf-hook/releases/tag/v1.2.1
11f0b1
- Related: #1883490
11f0b1
11f0b1
* Tue Dec 08 2020 Jindrich Novy <jnovy@redhat.com> - 1.2.0-2
11f0b1
- sync with RHEL8 devel branch
11f0b1
- Related: #1883490
11f0b1
11f0b1
* Wed Oct 21 2020 Jindrich Novy <jnovy@redhat.com> - 1.2.0-1
11f0b1
- synchronize with stream-container-tools-rhel8
11f0b1
- Related: #1883490
11f0b1
11f0b1
* Tue Aug 11 2020 Jindrich Novy <jnovy@redhat.com> - 1.1.2-3
11f0b1
- propagate proper CFLAGS to CGO_CFLAGS to assure code hardening and optimization
11f0b1
- Related: #1821193
11f0b1
11f0b1
* Thu Jul 23 2020 Lokesh Mandvekar <lsm5@fedoraproject.org> - 1.1.2-2
11f0b1
- Resolves: #1857606
11f0b1
11f0b1
* Fri Jul 17 2020 Jindrich Novy <jnovy@redhat.com> - 1.1.2-1
11f0b1
- update to https://github.com/containers/oci-seccomp-bpf-hook/releases/tag/v1.1.2
11f0b1
- Related: #1821193
11f0b1
11f0b1
* Thu Jun 18 2020 Jindrich Novy <jnovy@redhat.com> - 1.1.1-1
11f0b1
- update to https://github.com/containers/oci-seccomp-bpf-hook/releases/tag/v1.1.1
11f0b1
- Related: #1821193
11f0b1
11f0b1
* Tue May 12 2020 Jindrich Novy <jnovy@redhat.com> - 1.1.0-2
11f0b1
- exclude i686 arch as bcc, the build dependency is not built
11f0b1
  for it
11f0b1
- Related: #1821193
11f0b1
11f0b1
* Tue May 12 2020 Jindrich Novy <jnovy@redhat.com> - 1.1.0-1
11f0b1
- initial build for container-tools-rhel8
11f0b1
- Related: #1821193