Accepting request 1178479 from home:jamborm:gcc14fixes
- GCC 14 started to advertise c_atomic extension, older versions didn't do that. Add check for __clang__, so GCC doesn't include headers designed for Clang (openvswitch-2.17.8-gcc14-build-fix.patch) [boo#1225906] OBS-URL: https://build.opensuse.org/request/show/1178479 OBS-URL: https://build.opensuse.org/package/show/network/openvswitch?expand=0&rev=259
This commit is contained in:
parent
d7664db00a
commit
656a62a896
38
openvswitch-2.17.8-gcc14-build-fix.patch
Normal file
38
openvswitch-2.17.8-gcc14-build-fix.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From 335a5deac3ff91448ca14651e92f39dfdd512fcf Mon Sep 17 00:00:00 2001
|
||||||
|
From: Ilya Maximets <i.maximets@ovn.org>
|
||||||
|
Date: Thu, 18 Jan 2024 15:59:05 +0100
|
||||||
|
Subject: [PATCH] ovs-atomic: Fix inclusion of Clang header by GCC 14.
|
||||||
|
|
||||||
|
GCC 14 started to advertise c_atomic extension, older versions didn't
|
||||||
|
do that. Add check for __clang__, so GCC doesn't include headers
|
||||||
|
designed for Clang.
|
||||||
|
|
||||||
|
Another option would be to prefer stdatomic implementation instead,
|
||||||
|
but some older versions of Clang are not able to use stdatomic.h
|
||||||
|
supplied by GCC as described in commit:
|
||||||
|
07ece367fb5f ("ovs-atomic: Prefer Clang intrinsics over <stdatomic.h>.")
|
||||||
|
|
||||||
|
This change fixes OVS build with GCC on Fedora Rawhide (40).
|
||||||
|
|
||||||
|
Reported-by: Jakob Meng <code@jakobmeng.de>
|
||||||
|
Acked-by: Jakob Meng <jmeng@redhat.com>
|
||||||
|
Acked-by: Eelco Chaudron <echaudro@redhat.com>
|
||||||
|
Acked-by: Simon Horman <horms@ovn.org>
|
||||||
|
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
|
||||||
|
---
|
||||||
|
lib/ovs-atomic.h | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/lib/ovs-atomic.h b/lib/ovs-atomic.h
|
||||||
|
index ab9ce6b2e0f..f140d25feba 100644
|
||||||
|
--- a/lib/ovs-atomic.h
|
||||||
|
+++ b/lib/ovs-atomic.h
|
||||||
|
@@ -328,7 +328,7 @@
|
||||||
|
#if __CHECKER__
|
||||||
|
/* sparse doesn't understand some GCC extensions we use. */
|
||||||
|
#include "ovs-atomic-pthreads.h"
|
||||||
|
- #elif __has_extension(c_atomic)
|
||||||
|
+ #elif __clang__ && __has_extension(c_atomic)
|
||||||
|
#include "ovs-atomic-clang.h"
|
||||||
|
#elif HAVE_ATOMIC && __cplusplus >= 201103L
|
||||||
|
#include "ovs-atomic-c++.h"
|
@ -1,3 +1,11 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jun 4 09:48:39 UTC 2024 - Martin Jambor <mjambor@suse.com>
|
||||||
|
|
||||||
|
- GCC 14 started to advertise c_atomic extension, older versions
|
||||||
|
didn't do that. Add check for __clang__, so GCC doesn't include
|
||||||
|
headers designed for Clang
|
||||||
|
(openvswitch-2.17.8-gcc14-build-fix.patch) [boo#1225906]
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Feb 26 12:38:17 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
|
Mon Feb 26 12:38:17 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
@ -83,6 +83,8 @@ Patch5: CVE-2023-1668.patch
|
|||||||
Patch6: CVE-2023-5366.patch
|
Patch6: CVE-2023-5366.patch
|
||||||
# Fix CVE-2023-3966 [bsc#1219465] -- Invalid memory access in Geneve with HW offload
|
# Fix CVE-2023-3966 [bsc#1219465] -- Invalid memory access in Geneve with HW offload
|
||||||
Patch7: openvswitch-CVE-2023-3966.patch
|
Patch7: openvswitch-CVE-2023-3966.patch
|
||||||
|
# boo#1225906: Restore build with gcc14
|
||||||
|
Patch8: openvswitch-2.17.8-gcc14-build-fix.patch
|
||||||
#OVN patches
|
#OVN patches
|
||||||
# PATCH-FIX-OPENSUSE: 0001-Run-ovn-as-openvswitch-openvswitch.patch
|
# PATCH-FIX-OPENSUSE: 0001-Run-ovn-as-openvswitch-openvswitch.patch
|
||||||
Patch20: 0001-Run-ovn-as-openvswitch-openvswitch.patch
|
Patch20: 0001-Run-ovn-as-openvswitch-openvswitch.patch
|
||||||
@ -133,9 +135,9 @@ BuildRequires: openssl-devel
|
|||||||
BuildRequires: python3-rpm-macros
|
BuildRequires: python3-rpm-macros
|
||||||
BuildRequires: systemd-units
|
BuildRequires: systemd-units
|
||||||
Requires(post): systemd-units
|
Requires(post): systemd-units
|
||||||
Requires(postun):systemd-units
|
Requires(postun): systemd-units
|
||||||
Requires(pre): shadow-utils
|
Requires(pre): shadow-utils
|
||||||
Requires(preun):systemd-units
|
Requires(preun): systemd-units
|
||||||
%endif
|
%endif
|
||||||
# Needed by the testsuite
|
# Needed by the testsuite
|
||||||
%if %{with check}
|
%if %{with check}
|
||||||
@ -425,6 +427,7 @@ Devel libraries and headers for Open Virtual Network.
|
|||||||
%patch -P 5 -p1
|
%patch -P 5 -p1
|
||||||
%patch -P 6 -p1
|
%patch -P 6 -p1
|
||||||
%patch -P 7 -p1
|
%patch -P 7 -p1
|
||||||
|
%patch -P 8 -p1
|
||||||
# remove python/ovs/dirs.py - this is generated from template to have proper paths
|
# remove python/ovs/dirs.py - this is generated from template to have proper paths
|
||||||
rm python/ovs/dirs.py
|
rm python/ovs/dirs.py
|
||||||
cd %{ovn_dir}
|
cd %{ovn_dir}
|
||||||
|
Loading…
Reference in New Issue
Block a user