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>
|
||||
|
||||
|
@ -83,6 +83,8 @@ Patch5: CVE-2023-1668.patch
|
||||
Patch6: CVE-2023-5366.patch
|
||||
# Fix CVE-2023-3966 [bsc#1219465] -- Invalid memory access in Geneve with HW offload
|
||||
Patch7: openvswitch-CVE-2023-3966.patch
|
||||
# boo#1225906: Restore build with gcc14
|
||||
Patch8: openvswitch-2.17.8-gcc14-build-fix.patch
|
||||
#OVN patches
|
||||
# PATCH-FIX-OPENSUSE: 0001-Run-ovn-as-openvswitch-openvswitch.patch
|
||||
Patch20: 0001-Run-ovn-as-openvswitch-openvswitch.patch
|
||||
@ -425,6 +427,7 @@ Devel libraries and headers for Open Virtual Network.
|
||||
%patch -P 5 -p1
|
||||
%patch -P 6 -p1
|
||||
%patch -P 7 -p1
|
||||
%patch -P 8 -p1
|
||||
# remove python/ovs/dirs.py - this is generated from template to have proper paths
|
||||
rm python/ovs/dirs.py
|
||||
cd %{ovn_dir}
|
||||
|
Loading…
Reference in New Issue
Block a user