Open vSwitch CI 70cc8f
# Copyright (C) 2009, 2010, 2013, 2014 Nicira Networks, Inc.
Open vSwitch CI 70cc8f
#
Open vSwitch CI 70cc8f
# Copying and distribution of this file, with or without modification,
Open vSwitch CI 70cc8f
# are permitted in any medium without royalty provided the copyright
Open vSwitch CI 70cc8f
# notice and this notice are preserved.  This file is offered as-is,
Open vSwitch CI 70cc8f
# without warranty of any kind.
Open vSwitch CI 70cc8f
#
Open vSwitch CI 70cc8f
# If tests have to be skipped while building, specify the '--without check'
Open vSwitch CI 70cc8f
# option. For example:
Open vSwitch CI 70cc8f
# rpmbuild -bb --without check rhel/openvswitch-fedora.spec
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# This defines the base package name's version.
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%define pkgname openvswitch3.5
Open vSwitch CI 70cc8f
Open vSwitch CI 1ce680
Open vSwitch CI 70cc8f
%if 0%{?commit:1}
Open vSwitch CI 70cc8f
%global shortcommit %(c=%{commit}; echo ${c:0:7})
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# Enable PIE, bz#955181
Open vSwitch CI 70cc8f
%global _hardened_build 1
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# RHEL-7 doesn't define _rundir macro yet
Open vSwitch CI 70cc8f
# Fedora 15 onwards uses /run as _rundir
Open vSwitch CI 70cc8f
%if 0%{!?_rundir:1}
Open vSwitch CI 70cc8f
%define _rundir /run
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# FIXME Test "STP - flush the fdb and mdb when topology changed" fails on s390x
Open vSwitch CI 70cc8f
# FIXME 2 tests fails on ppc64le. They will be hopefully fixed before official 2.11
Open vSwitch CI 70cc8f
%ifarch %{ix86} x86_64 aarch64
Open vSwitch CI 70cc8f
%bcond_without check
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
%bcond_with check
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
# option to run kernel datapath tests, requires building as root!
Open vSwitch CI 70cc8f
%bcond_with check_datapath_kernel
Open vSwitch CI 70cc8f
# option to build with libcap-ng, needed for running OVS as regular user
Open vSwitch CI 70cc8f
%bcond_without libcapng
Open vSwitch CI 70cc8f
# option to build with ipsec support
Open vSwitch CI 70cc8f
%bcond_without ipsec
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# Build python2 (that provides python) and python3 subpackages on Fedora
Open vSwitch CI 70cc8f
# Build only python3 (that provides python) subpackage on RHEL8
Open vSwitch CI 70cc8f
# Build only python subpackage on RHEL7
Open vSwitch CI 70cc8f
%if 0%{?rhel} > 7 || 0%{?fedora}
Open vSwitch CI 70cc8f
# On RHEL8 Sphinx is included in buildroot
Open vSwitch CI 70cc8f
%global external_sphinx 1
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
# Don't use external sphinx (RHV doesn't have optional repositories enabled)
Open vSwitch CI 70cc8f
%global external_sphinx 0
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
Name: %{pkgname}
Open vSwitch CI 70cc8f
Summary: Open vSwitch
Open vSwitch CI 70cc8f
Group: System Environment/Daemons daemon/database/utilities
Open vSwitch CI 70cc8f
URL: http://www.openvswitch.org/
Open vSwitch CI 70cc8f
Version: 3.5.0
Open vSwitch CI 1ce680
Release: 4%{?dist}
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# Nearly all of openvswitch is ASL 2.0.  The bugtool is LGPLv2+, and the
Open vSwitch CI 70cc8f
# lib/sflow*.[ch] files are SISSL
Open vSwitch CI 70cc8f
# datapath/ is GPLv2 (although not built into any of the binary packages)
Open vSwitch CI 70cc8f
License: ASL 2.0 and LGPLv2+ and SISSL
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%define dpdkver 24.11
Open vSwitch CI 70cc8f
%define dpdkdir dpdk
Open vSwitch CI 70cc8f
%define dpdksver %(echo %{dpdkver} | cut -d. -f-2)
Open vSwitch CI 70cc8f
# NOTE: DPDK does not currently build for s390x
Open vSwitch CI 70cc8f
# DPDK on aarch64 is not stable enough to be enabled in FDP
Open vSwitch CI 70cc8f
%if 0%{?rhel} > 7 || 0%{?fedora}
Open vSwitch CI 70cc8f
%define dpdkarches x86_64 ppc64le
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
%define dpdkarches
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if 0%{?commit:1}
Open vSwitch CI 70cc8f
Source: https://github.com/openvswitch/ovs/archive/%{commit}.tar.gz#/openvswitch-%{commit}.tar.gz
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
Source: https://github.com/openvswitch/ovs/archive/v%{version}.tar.gz#/openvswitch-%{version}.tar.gz
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Source2: openvswitch.sysusers
Open vSwitch CI 70cc8f
Source3: openvswitch-hugetlbfs.sysusers
Open vSwitch CI 70cc8f
Source10: https://fast.dpdk.org/rel/dpdk-%{dpdkver}.tar.xz
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%define docutilsver 0.12
Open vSwitch CI 70cc8f
%define pygmentsver 1.4
Open vSwitch CI 70cc8f
%define sphinxver   1.2.3
Open vSwitch CI 70cc8f
%define pyelftoolsver 0.27
Open vSwitch CI 70cc8f
Source100: https://pypi.io/packages/source/d/docutils/docutils-%{docutilsver}.tar.gz
Open vSwitch CI 70cc8f
Source101: https://pypi.io/packages/source/P/Pygments/Pygments-%{pygmentsver}.tar.gz
Open vSwitch CI 70cc8f
Source102: https://pypi.io/packages/source/S/Sphinx/Sphinx-%{sphinxver}.tar.gz
Open vSwitch CI 70cc8f
Source103: https://pypi.io/packages/source/p/pyelftools/pyelftools-%{pyelftoolsver}.tar.gz
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
Patch0:    openvswitch-%{version}.patch
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# The DPDK is designed to optimize througput of network traffic using, among
Open vSwitch CI 70cc8f
# other techniques, carefully crafted assembly instructions.  As such it
Open vSwitch CI 70cc8f
# needs extensive work to port it to other architectures.
Open vSwitch CI 70cc8f
ExclusiveArch: x86_64 aarch64 ppc64le s390x
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# Do not enable this otherwise YUM will break on any upgrade.
Open vSwitch CI 70cc8f
# Provides: openvswitch
Open vSwitch CI 70cc8f
Conflicts: openvswitch < 3.5
Open vSwitch CI 70cc8f
Conflicts: openvswitch-dpdk < 3.5
Open vSwitch CI 70cc8f
Conflicts: openvswitch2.10
Open vSwitch CI 70cc8f
Conflicts: openvswitch2.11
Open vSwitch CI 70cc8f
Conflicts: openvswitch2.12
Open vSwitch CI 70cc8f
Conflicts: openvswitch2.13
Open vSwitch CI 70cc8f
Conflicts: openvswitch2.14
Open vSwitch CI 70cc8f
Conflicts: openvswitch2.15
Open vSwitch CI 70cc8f
Conflicts: openvswitch2.16
Open vSwitch CI 70cc8f
Conflicts: openvswitch2.17
Open vSwitch CI 70cc8f
Conflicts: openvswitch3.0
Open vSwitch CI 70cc8f
Conflicts: openvswitch3.1
Open vSwitch CI 70cc8f
Conflicts: openvswitch3.2
Open vSwitch CI 70cc8f
Conflicts: openvswitch3.3
Open vSwitch CI 70cc8f
Conflicts: openvswitch3.4
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# FIXME Sphinx is used to generate some manpages, unfortunately, on RHEL, it's
Open vSwitch CI 70cc8f
# in the -optional repository and so we can't require it directly since RHV
Open vSwitch CI 70cc8f
# doesn't have the -optional repository enabled and so TPS fails
Open vSwitch CI 70cc8f
%if %{external_sphinx}
Open vSwitch CI 70cc8f
BuildRequires: python3-sphinx
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
# Sphinx dependencies
Open vSwitch CI 70cc8f
BuildRequires: python-devel
Open vSwitch CI 70cc8f
BuildRequires: python-setuptools
Open vSwitch CI 70cc8f
#BuildRequires: python2-docutils
Open vSwitch CI 70cc8f
BuildRequires: python-jinja2
Open vSwitch CI 70cc8f
BuildRequires: python-nose
Open vSwitch CI 70cc8f
#BuildRequires: python2-pygments
Open vSwitch CI 70cc8f
# docutils dependencies
Open vSwitch CI 70cc8f
BuildRequires: python-imaging
Open vSwitch CI 70cc8f
# pygments dependencies
Open vSwitch CI 70cc8f
BuildRequires: python-nose
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
BuildRequires: gcc gcc-c++ make
Open vSwitch CI 70cc8f
BuildRequires: autoconf automake libtool
Open vSwitch CI 70cc8f
BuildRequires: systemd-units systemd-rpm-macros openssl openssl-devel
Open vSwitch CI 70cc8f
BuildRequires: python3-devel python3-setuptools
Open vSwitch CI 70cc8f
BuildRequires: desktop-file-utils
Open vSwitch CI 70cc8f
BuildRequires: groff-base graphviz
Open vSwitch CI 70cc8f
BuildRequires: unbound-devel
Open vSwitch CI 70cc8f
BuildRequires: systemtap-sdt-devel
Open vSwitch CI 70cc8f
# make check dependencies
Open vSwitch CI 70cc8f
BuildRequires: procps-ng
Open vSwitch CI 70cc8f
%if %{with check_datapath_kernel}
Open vSwitch CI 70cc8f
BuildRequires: nmap-ncat
Open vSwitch CI 70cc8f
# would be useful but not available in RHEL or EPEL
Open vSwitch CI 70cc8f
#BuildRequires: pyftpdlib
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if %{with libcapng}
Open vSwitch CI 70cc8f
BuildRequires: libcap-ng libcap-ng-devel
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%ifarch %{dpdkarches}
Open vSwitch CI 70cc8f
BuildRequires: meson
Open vSwitch CI 70cc8f
%if 0%{?rhel} > 8 || 0%{?fedora}
Open vSwitch CI 70cc8f
BuildRequires: python3-pyelftools
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
# DPDK driver dependencies
Open vSwitch CI 70cc8f
BuildRequires: zlib-devel numactl-devel libarchive-devel
Open vSwitch CI 70cc8f
# libarchive static dependencies
Open vSwitch CI 70cc8f
BuildRequires: bzip2-devel libacl-devel libxml2-devel libzstd-devel lz4-devel xz-devel
Open vSwitch CI 70cc8f
%ifarch x86_64
Open vSwitch CI 70cc8f
BuildRequires: rdma-core-devel >= 15 libmnl-devel
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# Required by packaging policy for the bundled DPDK
Open vSwitch CI 70cc8f
Provides: bundled(dpdk) = %{dpdkver}
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
Requires: openssl iproute module-init-tools
Open vSwitch CI 70cc8f
#Upstream kernel commit 4f647e0a3c37b8d5086214128614a136064110c3
Open vSwitch CI 70cc8f
#Requires: kernel >= 3.15.0-0
Open vSwitch CI 70cc8f
Requires: openvswitch-selinux-extra-policy
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%{?sysusers_requires_compat}
Open vSwitch CI 70cc8f
Requires(post): /bin/sed
Open vSwitch CI 70cc8f
Requires(post): systemd-units
Open vSwitch CI 70cc8f
Requires(preun): systemd-units
Open vSwitch CI 70cc8f
Requires(postun): systemd-units
Open vSwitch CI 70cc8f
Obsoletes: openvswitch-controller <= 0:2.1.0-1
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if 0%{?rhel}
Open vSwitch CI 70cc8f
# sortedcontainers are not packaged on RHEL yet, but ovs includes it
Open vSwitch CI 70cc8f
%global __requires_exclude ^python%{python3_version}dist\\(sortedcontainers\\)$
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%description
Open vSwitch CI 70cc8f
Open vSwitch provides standard network bridging functions and
Open vSwitch CI 70cc8f
support for the OpenFlow protocol for remote per-flow control of
Open vSwitch CI 70cc8f
traffic.
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%package -n python3-%{pkgname}
Open vSwitch CI 70cc8f
Summary: Open vSwitch python3 bindings
Open vSwitch CI 70cc8f
License: ASL 2.0
Open vSwitch CI 70cc8f
Requires: %{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release}
Open vSwitch CI 70cc8f
Provides: python-%{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release}
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%description -n python3-%{pkgname}
Open vSwitch CI 70cc8f
Python bindings for the Open vSwitch database
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%package test
Open vSwitch CI 70cc8f
Summary: Open vSwitch testing utilities
Open vSwitch CI 70cc8f
License: ASL 2.0
Open vSwitch CI 70cc8f
BuildArch: noarch
Open vSwitch CI 70cc8f
Requires: python3-%{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release}
Open vSwitch CI 70cc8f
Requires: tcpdump
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%description test
Open vSwitch CI 70cc8f
Utilities that are useful to diagnose performance and connectivity
Open vSwitch CI 70cc8f
issues in Open vSwitch setup.
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%package devel
Open vSwitch CI 70cc8f
Summary: Open vSwitch OpenFlow development package (library, headers)
Open vSwitch CI 70cc8f
License: ASL 2.0
Open vSwitch CI 70cc8f
Requires: %{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release}
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%description devel
Open vSwitch CI 70cc8f
This provides shared library, libopenswitch.so and the openvswitch header
Open vSwitch CI 70cc8f
files needed to build an external application.
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if 0%{?rhel} == 8 || 0%{?fedora} > 28
Open vSwitch CI 70cc8f
%package -n network-scripts-%{name}
Open vSwitch CI 70cc8f
Summary: Open vSwitch legacy network service support
Open vSwitch CI 70cc8f
License: ASL 2.0
Open vSwitch CI 70cc8f
Requires: network-scripts
Open vSwitch CI 70cc8f
Supplements: (%{name} and network-scripts)
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%description -n network-scripts-%{name}
Open vSwitch CI 70cc8f
This provides the ifup and ifdown scripts for use with the legacy network
Open vSwitch CI 70cc8f
service.
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if %{with ipsec}
Open vSwitch CI 70cc8f
%package ipsec
Open vSwitch CI 70cc8f
Summary: Open vSwitch IPsec tunneling support
Open vSwitch CI 70cc8f
License: ASL 2.0
Open vSwitch CI 70cc8f
Requires: python3-%{pkgname} = %{?epoch:%{epoch}:}%{version}-%{release}
Open vSwitch CI 70cc8f
Requires: libreswan
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%description ipsec
Open vSwitch CI 70cc8f
This package provides IPsec tunneling support for OVS tunnels.
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%prep
Open vSwitch CI 70cc8f
%if 0%{?commit:1}
Open vSwitch CI 70cc8f
%setup -q -n ovs-%{commit} -a 10
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
%setup -q -n ovs-%{version} -a 10
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
%if ! %{external_sphinx}
Open vSwitch CI 70cc8f
%if 0%{?commit:1}
Open vSwitch CI 70cc8f
%setup -n ovs-%{commit} -q -D -T -a 100 -a 101 -a 102
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
%setup -n ovs-%{version} -q -D -T -a 100 -a 101 -a 102
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
%if 0%{?rhel} && 0%{?rhel} < 9
Open vSwitch CI 70cc8f
%if 0%{?commit:1}
Open vSwitch CI 70cc8f
%setup -n ovs-%{commit} -q -D -T -a 103
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
%setup -n ovs-%{version} -q -D -T -a 103
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
mv dpdk-*/ %{dpdkdir}/
Open vSwitch CI 70cc8f
Open vSwitch CI dda1f5
%if 0%{?PATCH0:1}%{!?PATCH0:0}
Open vSwitch CI 70cc8f
%patch -P0 -p1
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%build
Open vSwitch CI 70cc8f
%if 0%{?rhel} && 0%{?rhel} < 9
Open vSwitch CI 70cc8f
export PYTHONPATH="${PWD}/pyelftools-%{pyelftoolsver}"
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
# Build Sphinx on RHEL
Open vSwitch CI 70cc8f
%if ! %{external_sphinx}
Open vSwitch CI 70cc8f
export PYTHONPATH="${PYTHONPATH:+$PYTHONPATH:}%{_builddir}/pytmp/lib/python"
Open vSwitch CI 70cc8f
for x in docutils-%{docutilsver} Pygments-%{pygmentsver} Sphinx-%{sphinxver}; do
Open vSwitch CI 70cc8f
    pushd "$x"
Open vSwitch CI 70cc8f
    python2 setup.py install --home %{_builddir}/pytmp
Open vSwitch CI 70cc8f
    popd
Open vSwitch CI 70cc8f
done
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
export PATH="$PATH:%{_builddir}/pytmp/bin"
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
./boot.sh
Open vSwitch CI 70cc8f
Open vSwitch CI dda1f5
%ifarch %{dpdkarches}
Open vSwitch CI 70cc8f
# Lets build DPDK first
Open vSwitch CI 70cc8f
cd %{dpdkdir}
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
ENABLED_DRIVERS=(
Open vSwitch CI 70cc8f
    bus/pci
Open vSwitch CI 70cc8f
    bus/vdev
Open vSwitch CI 70cc8f
    mempool/ring
Open vSwitch CI 70cc8f
    net/failsafe
Open vSwitch CI 70cc8f
    net/i40e
Open vSwitch CI 70cc8f
    net/ring
Open vSwitch CI 70cc8f
    net/vhost
Open vSwitch CI 70cc8f
    net/virtio
Open vSwitch CI 70cc8f
    net/tap
Open vSwitch CI 70cc8f
)
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%ifarch x86_64
Open vSwitch CI 70cc8f
ENABLED_DRIVERS+=(
Open vSwitch CI 70cc8f
    bus/auxiliary
Open vSwitch CI 70cc8f
    bus/vmbus
Open vSwitch CI 70cc8f
    common/iavf
Open vSwitch CI 70cc8f
    common/mlx5
Open vSwitch CI 70cc8f
    net/bnxt
Open vSwitch CI 70cc8f
    net/enic
Open vSwitch CI 70cc8f
    net/iavf
Open vSwitch CI 70cc8f
    net/ice
Open vSwitch CI 70cc8f
    net/mlx5
Open vSwitch CI 70cc8f
    net/netvsc
Open vSwitch CI 70cc8f
    net/nfp
Open vSwitch CI 70cc8f
    net/qede
Open vSwitch CI 70cc8f
    net/vdev_netvsc
Open vSwitch CI 1ce680
%if "%{dpdkver}" >= "23.11"
Open vSwitch CI 1ce680
    baseband/acc
Open vSwitch CI 1ce680
    common/nfp
Open vSwitch CI 1ce680
%endif
Open vSwitch CI 70cc8f
)
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%ifarch aarch64 x86_64
Open vSwitch CI 70cc8f
ENABLED_DRIVERS+=(
Open vSwitch CI 70cc8f
    net/e1000
Open vSwitch CI 70cc8f
    net/ixgbe
Open vSwitch CI 70cc8f
)
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
for driver in "${ENABLED_DRIVERS[@]}"; do
Open vSwitch CI 70cc8f
    enable_drivers="${enable_drivers:+$enable_drivers,}"$driver
Open vSwitch CI 70cc8f
done
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# If doing any updates, this must be aligned with:
Open vSwitch CI 70cc8f
# https://access.redhat.com/articles/3538141
Open vSwitch CI 1ce680
%if "%{dpdkver}" < "23.11"
Open vSwitch CI 1ce680
DISABLED_LIBS=(
Open vSwitch CI 1ce680
    gpudev
Open vSwitch CI 1ce680
    kni
Open vSwitch CI 1ce680
    jobstats
Open vSwitch CI 1ce680
    power
Open vSwitch CI 1ce680
)
Open vSwitch CI 1ce680
Open vSwitch CI 1ce680
for lib in "${DISABLED_LIBS[@]}"; do
Open vSwitch CI 1ce680
    disable_libs="${disable_libs:+$disable_libs,}"$lib
Open vSwitch CI 1ce680
done
Open vSwitch CI 1ce680
%else
Open vSwitch CI 70cc8f
ENABLED_LIBS=(
Open vSwitch CI 70cc8f
    bbdev
Open vSwitch CI 70cc8f
    bitratestats
Open vSwitch CI 70cc8f
    bpf
Open vSwitch CI 70cc8f
    cmdline
Open vSwitch CI 70cc8f
    cryptodev
Open vSwitch CI 70cc8f
    dmadev
Open vSwitch CI 70cc8f
    gro
Open vSwitch CI 70cc8f
    gso
Open vSwitch CI 70cc8f
    hash
Open vSwitch CI 70cc8f
    ip_frag
Open vSwitch CI 70cc8f
    latencystats
Open vSwitch CI 70cc8f
    member
Open vSwitch CI 70cc8f
    meter
Open vSwitch CI 70cc8f
    metrics
Open vSwitch CI 70cc8f
    pcapng
Open vSwitch CI 70cc8f
    pdump
Open vSwitch CI 70cc8f
    security
Open vSwitch CI 70cc8f
    stack
Open vSwitch CI 70cc8f
    vhost
Open vSwitch CI 70cc8f
)
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
for lib in "${ENABLED_LIBS[@]}"; do
Open vSwitch CI 70cc8f
    enable_libs="${enable_libs:+$enable_libs,}"$lib
Open vSwitch CI 70cc8f
done
Open vSwitch CI 1ce680
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%set_build_flags
Open vSwitch CI 70cc8f
%__meson --prefix=%{_builddir}/dpdk-build \
Open vSwitch CI 70cc8f
         --buildtype=plain \
Open vSwitch CI 1ce680
%if "%{dpdkver}" < "23.11"
Open vSwitch CI 1ce680
         -Ddisable_libs="$disable_libs" \
Open vSwitch CI 1ce680
%else
Open vSwitch CI 70cc8f
         -Denable_libs="$enable_libs" \
Open vSwitch CI 1ce680
%endif
Open vSwitch CI 70cc8f
         -Ddisable_apps="*" \
Open vSwitch CI 70cc8f
         -Denable_drivers="$enable_drivers" \
Open vSwitch CI 70cc8f
         -Dplatform=generic \
Open vSwitch CI 70cc8f
         -Dmax_ethports=1024 \
Open vSwitch CI 70cc8f
         -Dmax_numa_nodes=8 \
Open vSwitch CI 70cc8f
         -Dtests=false \
Open vSwitch CI 70cc8f
         %{_vpath_builddir}
Open vSwitch CI 70cc8f
%meson_build
Open vSwitch CI 70cc8f
%__meson install -C %{_vpath_builddir} --no-rebuild
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# FIXME currently with LTO enabled OVS tries to link with both static and shared libraries
Open vSwitch CI 70cc8f
rm -v %{_builddir}/dpdk-build/%{_lib}/*.so*
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# Generate a list of supported drivers, its hard to tell otherwise.
Open vSwitch CI 70cc8f
cat << EOF > README.DPDK-PMDS
Open vSwitch CI 70cc8f
DPDK drivers included in this package:
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
EOF
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
for f in %{_builddir}/dpdk-build/%{_lib}/librte_net_*.a; do
Open vSwitch CI 70cc8f
    basename ${f} | cut -c12- | cut -d. -f1 | tr [:lower:] [:upper:]
Open vSwitch CI 70cc8f
done >> README.DPDK-PMDS
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
cat << EOF >> README.DPDK-PMDS
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
For further information about the drivers, see
Open vSwitch CI 70cc8f
http://dpdk.org/doc/guides-%{dpdksver}/nics/index.html
Open vSwitch CI 70cc8f
EOF
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
cd -
Open vSwitch CI dda1f5
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# And now for OVS...
Open vSwitch CI 70cc8f
mkdir build-shared build-static
Open vSwitch CI 70cc8f
pushd build-shared
Open vSwitch CI 70cc8f
ln -s ../configure
Open vSwitch CI 70cc8f
%configure \
Open vSwitch CI 70cc8f
%if %{with libcapng}
Open vSwitch CI 70cc8f
        --enable-libcapng \
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
        --disable-libcapng \
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
        --disable-static \
Open vSwitch CI 70cc8f
        --enable-shared \
Open vSwitch CI 70cc8f
        --enable-ssl \
Open vSwitch CI 70cc8f
        --with-pkidir=%{_sharedstatedir}/openvswitch/pki \
Open vSwitch CI 70cc8f
        --enable-usdt-probes \
Open vSwitch CI 70cc8f
        --disable-afxdp \
Open vSwitch CI 70cc8f
        --with-version-suffix=-%{release}
Open vSwitch CI 70cc8f
make %{?_smp_mflags}
Open vSwitch CI 70cc8f
popd
Open vSwitch CI 70cc8f
pushd build-static
Open vSwitch CI 70cc8f
ln -s ../configure
Open vSwitch CI 70cc8f
%ifarch %{dpdkarches}
Open vSwitch CI 70cc8f
PKG_CONFIG_PATH=%{_builddir}/dpdk-build/%{_lib}/pkgconfig \
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
%configure \
Open vSwitch CI 70cc8f
%if %{with libcapng}
Open vSwitch CI 70cc8f
        --enable-libcapng \
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
        --disable-libcapng \
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
        --enable-ssl \
Open vSwitch CI 70cc8f
%ifarch %{dpdkarches}
Open vSwitch CI 70cc8f
        --with-dpdk=static \
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
        --with-pkidir=%{_sharedstatedir}/openvswitch/pki \
Open vSwitch CI 70cc8f
        --enable-usdt-probes \
Open vSwitch CI 70cc8f
        --disable-afxdp \
Open vSwitch CI 70cc8f
        --with-version-suffix=-%{release}
Open vSwitch CI 70cc8f
make %{?_smp_mflags}
Open vSwitch CI 70cc8f
popd
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
/usr/bin/python3 build-aux/dpdkstrip.py \
Open vSwitch CI 70cc8f
        --dpdk \
Open vSwitch CI 70cc8f
        < rhel/usr_lib_systemd_system_ovs-vswitchd.service.in \
Open vSwitch CI 70cc8f
        > rhel/usr_lib_systemd_system_ovs-vswitchd.service
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%install
Open vSwitch CI 70cc8f
rm -rf $RPM_BUILD_ROOT
Open vSwitch CI 70cc8f
make -C build-shared install sbin_PROGRAMS=ovsdb/ovsdb-server DESTDIR=$RPM_BUILD_ROOT
Open vSwitch CI 70cc8f
make -C build-static install bin_PROGRAMS= sbin_PROGRAMS=vswitchd/ovs-vswitchd DESTDIR=$RPM_BUILD_ROOT
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -d -m 0755 $RPM_BUILD_ROOT%{_rundir}/openvswitch
Open vSwitch CI 70cc8f
install -d -m 0750 $RPM_BUILD_ROOT%{_localstatedir}/log/openvswitch
Open vSwitch CI 70cc8f
install -d -m 0755 $RPM_BUILD_ROOT%{_sysconfdir}/openvswitch
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -p -D -m 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysusersdir}/openvswitch.conf
Open vSwitch CI 70cc8f
%ifarch %{dpdkarches}
Open vSwitch CI 70cc8f
install -p -D -m 0644 %{SOURCE3} $RPM_BUILD_ROOT%{_sysusersdir}/openvswitch-hugetlbfs.conf
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -p -D -m 0644 rhel/usr_lib_udev_rules.d_91-vfio.rules \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT%{_udevrulesdir}/91-vfio.rules
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -p -D -m 0644 \
Open vSwitch CI 70cc8f
        rhel/usr_share_openvswitch_scripts_systemd_sysconfig.template \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/openvswitch
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
for service in openvswitch ovsdb-server ovs-vswitchd \
Open vSwitch CI 70cc8f
               ovs-delete-transient-ports; do
Open vSwitch CI 70cc8f
        install -p -D -m 0644 \
Open vSwitch CI 70cc8f
                        rhel/usr_lib_systemd_system_${service}.service \
Open vSwitch CI 70cc8f
                        $RPM_BUILD_ROOT%{_unitdir}/${service}.service
Open vSwitch CI 70cc8f
done
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if %{with ipsec}
Open vSwitch CI 70cc8f
install -p -D -m 0644 rhel/usr_lib_systemd_system_openvswitch-ipsec.service \
Open vSwitch CI 70cc8f
                      $RPM_BUILD_ROOT%{_unitdir}/openvswitch-ipsec.service
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -m 0755 rhel/etc_init.d_openvswitch \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/openvswitch.init
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -p -D -m 0644 rhel/etc_openvswitch_default.conf \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_sysconfdir}/openvswitch/default.conf
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -p -D -m 0644 rhel/etc_logrotate.d_openvswitch \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/openvswitch
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -m 0644 vswitchd/vswitch.ovsschema \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_datadir}/openvswitch/vswitch.ovsschema
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if 0%{?rhel} < 9
Open vSwitch CI 70cc8f
install -d -m 0755 $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/
Open vSwitch CI 70cc8f
install -p -m 0755 rhel/etc_sysconfig_network-scripts_ifdown-ovs \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/ifdown-ovs
Open vSwitch CI 70cc8f
install -p -m 0755 rhel/etc_sysconfig_network-scripts_ifup-ovs \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/ifup-ovs
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -d -m 0755 $RPM_BUILD_ROOT%{python3_sitelib}
Open vSwitch CI 70cc8f
cp -a $RPM_BUILD_ROOT/%{_datadir}/openvswitch/python/ovstest \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT%{python3_sitelib}
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# Build the JSON C extension for the Python lib (#1417738)
Open vSwitch CI 70cc8f
pushd python
Open vSwitch CI 70cc8f
(
Open vSwitch CI 70cc8f
export CPPFLAGS="-I ../include -I ../build-shared/include"
Open vSwitch CI 70cc8f
export LDFLAGS="%{__global_ldflags} -L $RPM_BUILD_ROOT%{_libdir}"
Open vSwitch CI 70cc8f
%py3_build
Open vSwitch CI 70cc8f
%py3_install
Open vSwitch CI 70cc8f
[ -f "$RPM_BUILD_ROOT/%{python3_sitearch}/ovs/_json$(python3-config --extension-suffix)" ]
Open vSwitch CI 70cc8f
)
Open vSwitch CI 70cc8f
popd
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
rm -rf $RPM_BUILD_ROOT/%{_datadir}/openvswitch/python/
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -d -m 0755 $RPM_BUILD_ROOT/%{_sharedstatedir}/openvswitch
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -d -m 0755 $RPM_BUILD_ROOT%{_prefix}/lib/firewalld/services/
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
install -p -D -m 0755 \
Open vSwitch CI 70cc8f
        rhel/usr_share_openvswitch_scripts_ovs-systemd-reload \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/ovs-systemd-reload
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
touch $RPM_BUILD_ROOT%{_sysconfdir}/openvswitch/conf.db
Open vSwitch CI 70cc8f
# The db needs special permission as IPsec Pre-shared keys are stored in it.
Open vSwitch CI 70cc8f
chmod 0640 $RPM_BUILD_ROOT%{_sysconfdir}/openvswitch/conf.db
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
touch $RPM_BUILD_ROOT%{_sysconfdir}/openvswitch/system-id.conf
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# remove unpackaged files
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT/%{_bindir}/ovs-benchmark \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_bindir}/ovs-docker \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_bindir}/ovs-parse-backtrace \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_bindir}/ovs-testcontroller \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_sbindir}/ovs-vlan-bug-workaround \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_mandir}/man1/ovs-benchmark.1* \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_mandir}/man8/ovs-testcontroller.* \
Open vSwitch CI 70cc8f
        $RPM_BUILD_ROOT/%{_mandir}/man8/ovs-vlan-bug-workaround.8*
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if ! %{with ipsec}
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT/%{_datadir}/openvswitch/scripts/ovs-monitor-ipsec
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
# remove ovn unpackages files
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT%{_bindir}/ovn*
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/ovn*
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT%{_mandir}/man5/ovn*
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT%{_mandir}/man7/ovn*
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT%{_mandir}/man8/ovn*
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT%{_datadir}/openvswitch/ovn*
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/ovn*
Open vSwitch CI 70cc8f
rm -f $RPM_BUILD_ROOT%{_includedir}/ovn/*
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%check
Open vSwitch CI 70cc8f
%if %{with check}
Open vSwitch CI 70cc8f
    pushd build-static
Open vSwitch CI 70cc8f
    touch resolv.conf
Open vSwitch CI 70cc8f
    export OVS_RESOLV_CONF=$(pwd)/resolv.conf
Open vSwitch CI 70cc8f
    if make check TESTSUITEFLAGS='%{_smp_mflags}' ||
Open vSwitch CI 70cc8f
       make check TESTSUITEFLAGS='--recheck'; then :;
Open vSwitch CI 70cc8f
    else
Open vSwitch CI 70cc8f
        cat tests/testsuite.log
Open vSwitch CI 70cc8f
        exit 1
Open vSwitch CI 70cc8f
    fi
Open vSwitch CI 70cc8f
    popd
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
%if %{with check_datapath_kernel}
Open vSwitch CI 70cc8f
    pushd build-static
Open vSwitch CI 70cc8f
    if make check-kernel RECHECK=yes; then :;
Open vSwitch CI 70cc8f
    else
Open vSwitch CI 70cc8f
        cat tests/system-kmod-testsuite.log
Open vSwitch CI 70cc8f
        exit 1
Open vSwitch CI 70cc8f
    fi
Open vSwitch CI 70cc8f
    popd
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%preun
Open vSwitch CI 70cc8f
%if 0%{?systemd_preun:1}
Open vSwitch CI 70cc8f
    %systemd_preun openvswitch.service
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
    if [ $1 -eq 0 ] ; then
Open vSwitch CI 70cc8f
    # Package removal, not upgrade
Open vSwitch CI 70cc8f
        /bin/systemctl --no-reload disable openvswitch.service >/dev/null 2>&1 || :
Open vSwitch CI 70cc8f
        /bin/systemctl stop openvswitch.service >/dev/null 2>&1 || :
Open vSwitch CI 70cc8f
    fi
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%pre
Open vSwitch CI 70cc8f
%sysusers_create_compat %{SOURCE2}
Open vSwitch CI 70cc8f
%ifarch %{dpdkarches}
Open vSwitch CI 70cc8f
%sysusers_create_compat %{SOURCE3}
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%post
Open vSwitch CI 70cc8f
if [ $1 -eq 1 ]; then
Open vSwitch CI 70cc8f
    sed -i 's:^#OVS_USER_ID=:OVS_USER_ID=:' /etc/sysconfig/openvswitch
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%ifarch %{dpdkarches}
Open vSwitch CI 70cc8f
    sed -i \
Open vSwitch CI 70cc8f
        's@OVS_USER_ID="openvswitch:openvswitch"@OVS_USER_ID="openvswitch:hugetlbfs"@'\
Open vSwitch CI 70cc8f
        /etc/sysconfig/openvswitch
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
fi
Open vSwitch CI 70cc8f
chown -R openvswitch:openvswitch /etc/openvswitch
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if 0%{?systemd_post:1}
Open vSwitch CI 70cc8f
    %systemd_post openvswitch.service
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
    # Package install, not upgrade
Open vSwitch CI 70cc8f
    if [ $1 -eq 1 ]; then
Open vSwitch CI 70cc8f
        /bin/systemctl daemon-reload >dev/null || :
Open vSwitch CI 70cc8f
    fi
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%postun
Open vSwitch CI 70cc8f
%if 0%{?systemd_postun:1}
Open vSwitch CI 70cc8f
    %systemd_postun openvswitch.service
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%triggerun -- openvswitch < 2.5.0-22.git20160727%{?dist}
Open vSwitch CI 70cc8f
# old rpm versions restart the service in postun, but
Open vSwitch CI 70cc8f
# due to systemd some preparation is needed.
Open vSwitch CI 70cc8f
if systemctl is-active openvswitch >/dev/null 2>&1 ; then
Open vSwitch CI 70cc8f
    /usr/share/openvswitch/scripts/ovs-ctl stop >/dev/null 2>&1 || :
Open vSwitch CI 70cc8f
    systemctl daemon-reload >/dev/null 2>&1 || :
Open vSwitch CI 70cc8f
    systemctl stop openvswitch ovsdb-server ovs-vswitchd >/dev/null 2>&1 || :
Open vSwitch CI 70cc8f
    systemctl start openvswitch >/dev/null 2>&1 || :
Open vSwitch CI 70cc8f
fi
Open vSwitch CI 70cc8f
exit 0
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%files -n python3-%{pkgname}
Open vSwitch CI 70cc8f
%{python3_sitearch}/ovs
Open vSwitch CI 70cc8f
%{python3_sitearch}/ovs-*.egg-info
Open vSwitch CI 1ce680
%if "%{version}" >= "3.5.0"
Open vSwitch CI 70cc8f
%{_bindir}/ovs-flowviz
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-flowviz.8*
Open vSwitch CI 1ce680
%endif
Open vSwitch CI 70cc8f
%doc LICENSE
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%files test
Open vSwitch CI 70cc8f
%{_bindir}/ovs-pcap
Open vSwitch CI 70cc8f
%{_bindir}/ovs-tcpdump
Open vSwitch CI 70cc8f
%{_bindir}/ovs-tcpundump
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/usdt/*
Open vSwitch CI 70cc8f
%{_mandir}/man1/ovs-pcap.1*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-tcpdump.8*
Open vSwitch CI 70cc8f
%{_mandir}/man1/ovs-tcpundump.1*
Open vSwitch CI 70cc8f
%{_bindir}/ovs-test
Open vSwitch CI 70cc8f
%{_bindir}/ovs-vlan-test
Open vSwitch CI 70cc8f
%{_bindir}/ovs-l3ping
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-test.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-vlan-test.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-l3ping.8*
Open vSwitch CI 70cc8f
%{python3_sitelib}/ovstest
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%files devel
Open vSwitch CI 70cc8f
%{_libdir}/*.so
Open vSwitch CI 70cc8f
%{_libdir}/pkgconfig/*.pc
Open vSwitch CI 70cc8f
%{_includedir}/openvswitch/*
Open vSwitch CI 70cc8f
%{_includedir}/openflow/*
Open vSwitch CI 70cc8f
%exclude %{_libdir}/*.a
Open vSwitch CI 70cc8f
%exclude %{_libdir}/*.la
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if 0%{?rhel} == 8 || 0%{?fedora} > 28
Open vSwitch CI 70cc8f
%files -n network-scripts-%{name}
Open vSwitch CI 70cc8f
%{_sysconfdir}/sysconfig/network-scripts/ifup-ovs
Open vSwitch CI 70cc8f
%{_sysconfdir}/sysconfig/network-scripts/ifdown-ovs
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%files
Open vSwitch CI 70cc8f
%defattr(-,openvswitch,openvswitch)
Open vSwitch CI 70cc8f
%dir %{_sysconfdir}/openvswitch
Open vSwitch CI 70cc8f
%{_sysconfdir}/openvswitch/default.conf
Open vSwitch CI 70cc8f
%config %ghost %verify(not owner group md5 size mtime) %{_sysconfdir}/openvswitch/conf.db
Open vSwitch CI 70cc8f
%ghost %attr(0600,-,-) %verify(not owner group md5 size mtime) %{_sysconfdir}/openvswitch/.conf.db.~lock~
Open vSwitch CI 70cc8f
%config %ghost %{_sysconfdir}/openvswitch/system-id.conf
Open vSwitch CI 70cc8f
%defattr(-,root,root)
Open vSwitch CI 70cc8f
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sysconfig/openvswitch
Open vSwitch CI 70cc8f
%{_sysconfdir}/bash_completion.d/ovs-appctl-bashcomp.bash
Open vSwitch CI 70cc8f
%{_sysconfdir}/bash_completion.d/ovs-vsctl-bashcomp.bash
Open vSwitch CI 70cc8f
%config(noreplace) %{_sysconfdir}/logrotate.d/openvswitch
Open vSwitch CI 70cc8f
%{_unitdir}/openvswitch.service
Open vSwitch CI 70cc8f
%{_unitdir}/ovsdb-server.service
Open vSwitch CI 70cc8f
%{_unitdir}/ovs-vswitchd.service
Open vSwitch CI 70cc8f
%{_unitdir}/ovs-delete-transient-ports.service
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/openvswitch.init
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/ovs-check-dead-ifs
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/ovs-lib
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/ovs-save
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/ovs-vtep
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/ovs-ctl
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/ovs-kmod-ctl
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/ovs-systemd-reload
Open vSwitch CI 70cc8f
%config %{_datadir}/openvswitch/local-config.ovsschema
Open vSwitch CI 70cc8f
%config %{_datadir}/openvswitch/vswitch.ovsschema
Open vSwitch CI 70cc8f
%config %{_datadir}/openvswitch/vtep.ovsschema
Open vSwitch CI 70cc8f
%{_bindir}/ovs-appctl
Open vSwitch CI 70cc8f
%{_bindir}/ovs-dpctl
Open vSwitch CI 70cc8f
%{_bindir}/ovs-ofctl
Open vSwitch CI 70cc8f
%{_bindir}/ovs-vsctl
Open vSwitch CI 70cc8f
%{_bindir}/ovsdb-client
Open vSwitch CI 70cc8f
%{_bindir}/ovsdb-tool
Open vSwitch CI 70cc8f
%{_bindir}/ovs-pki
Open vSwitch CI 70cc8f
%{_bindir}/vtep-ctl
Open vSwitch CI 70cc8f
%{_libdir}/*.so.*
Open vSwitch CI 70cc8f
%{_sbindir}/ovs-vswitchd
Open vSwitch CI 70cc8f
%{_sbindir}/ovsdb-server
Open vSwitch CI 70cc8f
%{_mandir}/man1/ovsdb-client.1*
Open vSwitch CI 70cc8f
%{_mandir}/man1/ovsdb-server.1*
Open vSwitch CI 70cc8f
%{_mandir}/man1/ovsdb-tool.1*
Open vSwitch CI 70cc8f
%{_mandir}/man5/ovsdb.5*
Open vSwitch CI 70cc8f
%{_mandir}/man5/ovsdb.local-config.5*
Open vSwitch CI 70cc8f
%{_mandir}/man5/ovsdb-server.5.*
Open vSwitch CI 70cc8f
%{_mandir}/man5/ovs-vswitchd.conf.db.5*
Open vSwitch CI 70cc8f
%{_mandir}/man5/vtep.5*
Open vSwitch CI 70cc8f
%{_mandir}/man7/ovsdb-server.7*
Open vSwitch CI 70cc8f
%{_mandir}/man7/ovsdb.7*
Open vSwitch CI 70cc8f
%{_mandir}/man7/ovs-actions.7*
Open vSwitch CI 70cc8f
%{_mandir}/man7/ovs-fields.7*
Open vSwitch CI 70cc8f
%{_mandir}/man8/vtep-ctl.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-appctl.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-ctl.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-dpctl.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-kmod-ctl.8.*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-ofctl.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-pki.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-vsctl.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-vswitchd.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-parse-backtrace.8*
Open vSwitch CI 70cc8f
%{_udevrulesdir}/91-vfio.rules
Open vSwitch CI 70cc8f
%doc LICENSE NOTICE README.rst NEWS rhel/README.RHEL.rst
Open vSwitch CI 70cc8f
%ifarch %{dpdkarches}
Open vSwitch CI 70cc8f
%doc %{dpdkdir}/README.DPDK-PMDS
Open vSwitch CI 70cc8f
%attr(750,openvswitch,hugetlbfs) %verify(not owner group) /var/log/openvswitch
Open vSwitch CI 70cc8f
%else
Open vSwitch CI 70cc8f
%attr(750,openvswitch,openvswitch) %verify(not owner group) /var/log/openvswitch
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
/var/lib/openvswitch
Open vSwitch CI 70cc8f
%ghost %attr(755,root,root) %verify(not owner group) %{_rundir}/openvswitch
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/bugtool-plugins/
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/ovs-bugtool-*
Open vSwitch CI 70cc8f
%{_bindir}/ovs-dpctl-top
Open vSwitch CI 70cc8f
%{_sbindir}/ovs-bugtool
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-dpctl-top.8*
Open vSwitch CI 70cc8f
%{_mandir}/man8/ovs-bugtool.8*
Open vSwitch CI 70cc8f
%if (0%{?rhel} && 0%{?rhel} <= 7) || (0%{?fedora} && 0%{?fedora} < 29)
Open vSwitch CI 70cc8f
%{_sysconfdir}/sysconfig/network-scripts/ifup-ovs
Open vSwitch CI 70cc8f
%{_sysconfdir}/sysconfig/network-scripts/ifdown-ovs
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
%{_sysusersdir}/openvswitch.conf
Open vSwitch CI 70cc8f
%ifarch %{dpdkarches}
Open vSwitch CI 70cc8f
%{_sysusersdir}/openvswitch-hugetlbfs.conf
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%if %{with ipsec}
Open vSwitch CI 70cc8f
%files ipsec
Open vSwitch CI 70cc8f
%{_datadir}/openvswitch/scripts/ovs-monitor-ipsec
Open vSwitch CI 70cc8f
%{_unitdir}/openvswitch-ipsec.service
Open vSwitch CI 70cc8f
%endif
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
%changelog
Open vSwitch CI 1ce680
* Thu Feb 20 2025 Timothy Redaelli <tredaelli@redhat.com> - 3.5.0-4
Open vSwitch CI 1ce680
- Add include.mk that points to official 3.5.0 [RH git: c4891390f4]
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
Open vSwitch CI 1ce680
* Thu Feb 20 2025 Timothy Redaelli <tredaelli@redhat.com> - 3.5.0-3
Open vSwitch CI 1ce680
- Use symlink for README.rst [RH git: 38d5bb1954]
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
Open vSwitch CI 1ce680
* Thu Feb 20 2025 Timothy Redaelli <tredaelli@redhat.com> - 3.5.0-2
Open vSwitch CI 1ce680
- Add 'redhat/' from commit 'a57d7e61afd486bb49c0298ba6db7100b746669f' [RH git: 9037a1c926]
Open vSwitch CI 1ce680
    git-subtree-dir: redhat
Open vSwitch CI 1ce680
    git-subtree-mainline: 4f55f49a25ad2f6be49b62301a486c9d6cf9cf28
Open vSwitch CI 1ce680
    git-subtree-split: a57d7e61afd486bb49c0298ba6db7100b746669f
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f
Open vSwitch CI 1ce680
* Thu Feb 20 2025 Timothy Redaelli <tredaelli@redhat.com> - 3.5.0-1
Open vSwitch CI 1ce680
- Remove redhat/ [RH git: 4f55f49a25]
Open vSwitch CI 70cc8f
Open vSwitch CI 70cc8f