- Add Add-missing-extern-keywords.patch to fix compilation with GCC10 (bsc#1160270)
OBS-URL: https://build.opensuse.org/package/show/science:HPC/infinipath-psm?expand=0&rev=27
This commit is contained in:
parent
8baec9b15c
commit
0622fb0398
101
Add-missing-extern-keywords.patch
Normal file
101
Add-missing-extern-keywords.patch
Normal file
@ -0,0 +1,101 @@
|
||||
commit 352e1547fde216e4e2302e4e6d4f62a678a1858c
|
||||
Author: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||
Date: Wed Jan 8 08:28:43 2020 +0100
|
||||
|
||||
Add missing extern keywords
|
||||
|
||||
Starting from the upcoming GCC release 10, the default of -fcommon option will change to -fno-common:
|
||||
In C, global variables with multiple tentative definitions will result in linker errors.
|
||||
Global variable accesses are also more efficient on various targets.
|
||||
|
||||
This fixes compilations errors with -fno-common enabled
|
||||
|
||||
Signed-off-by: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||
|
||||
diff --git psm_error.h psm_error.h
|
||||
index 21f5745c2d1f..886da8944161 100644
|
||||
--- psm_error.h
|
||||
+++ psm_error.h
|
||||
@@ -42,7 +42,7 @@
|
||||
#define PSMI_EP_NORETURN ((psm_ep_t) -2)
|
||||
#define PSMI_EP_LOGEVENT ((psm_ep_t) -3)
|
||||
|
||||
-psm_ep_errhandler_t psmi_errhandler_global;
|
||||
+extern psm_ep_errhandler_t psmi_errhandler_global;
|
||||
|
||||
psm_error_t psmi_handle_error(psm_ep_t ep, psm_error_t error,
|
||||
const char *buf, ...)
|
||||
diff --git psm_user.h psm_user.h
|
||||
index c9aadcc42516..75e5c16addb7 100644
|
||||
--- psm_user.h
|
||||
+++ psm_user.h
|
||||
@@ -100,7 +100,7 @@ psm_error_t psmi_mq_wait_internal(psm_mq_req_t *ireq);
|
||||
#endif
|
||||
|
||||
#ifdef PSMI_PLOCK_IS_SPINLOCK
|
||||
- psmi_spinlock_t psmi_progress_lock;
|
||||
+ extern psmi_spinlock_t psmi_progress_lock;
|
||||
#define PSMI_PLOCK_INIT() psmi_spin_init(&psmi_progress_lock)
|
||||
#define PSMI_PLOCK_TRY() psmi_spin_trylock(&psmi_progress_lock)
|
||||
#define PSMI_PLOCK() psmi_spin_lock(&psmi_progress_lock)
|
||||
@@ -109,8 +109,8 @@ psm_error_t psmi_mq_wait_internal(psm_mq_req_t *ireq);
|
||||
#define PSMI_PUNLOCK_ASSERT()
|
||||
#define PSMI_PLOCK_DISABLED 0
|
||||
#elif defined(PSMI_PLOCK_IS_MUTEXLOCK_DEBUG)
|
||||
- pthread_mutex_t psmi_progress_lock;
|
||||
- pthread_t psmi_progress_lock_owner;
|
||||
+ extern pthread_mutex_t psmi_progress_lock;
|
||||
+ extern pthread_t psmi_progress_lock_owner;
|
||||
#define PSMI_PLOCK_NO_OWNER ((pthread_t)(-1))
|
||||
|
||||
PSMI_ALWAYS_INLINE(
|
||||
diff --git psm_utils.h psm_utils.h
|
||||
index e6420e01ea62..6c2c5c3e054e 100644
|
||||
--- psm_utils.h
|
||||
+++ psm_utils.h
|
||||
@@ -254,7 +254,7 @@ int psmi_diags(void);
|
||||
* Fault injection
|
||||
*/
|
||||
struct psmi_faultinj_spec;
|
||||
-int psmi_faultinj_enabled; /* use macro to test */
|
||||
+extern int psmi_faultinj_enabled; /* use macro to test */
|
||||
#if 1 /* possible to disable at compile time */
|
||||
#define PSMI_FAULTINJ_ENABLED() (!!psmi_faultinj_enabled)
|
||||
#else
|
||||
diff --git ptl_am/ptl_fwd.h ptl_am/ptl_fwd.h
|
||||
index 3be8f5b37d80..bfb2715ff051 100644
|
||||
--- ptl_am/ptl_fwd.h
|
||||
+++ ptl_am/ptl_fwd.h
|
||||
@@ -47,7 +47,7 @@
|
||||
#endif
|
||||
|
||||
/* Symbol in am ptl */
|
||||
-struct ptl_ctl_init psmi_ptl_amsh;
|
||||
+extern struct ptl_ctl_init psmi_ptl_amsh;
|
||||
|
||||
/* Special non-ptl function exposed to pre-attach to shm segment */
|
||||
psm_error_t psmi_shm_attach(psm_ep_t ep, int *shmidx_o);
|
||||
diff --git ptl_ips/ptl_fwd.h ptl_ips/ptl_fwd.h
|
||||
index 08d4c53e1b12..5e9cd47a30d7 100644
|
||||
--- ptl_ips/ptl_fwd.h
|
||||
+++ ptl_ips/ptl_fwd.h
|
||||
@@ -38,5 +38,5 @@
|
||||
typedef struct ptl_epaddr ips_epaddr_t;
|
||||
|
||||
/* Symbol in ips ptl */
|
||||
-struct ptl_ctl_init psmi_ptl_ips;
|
||||
+extern struct ptl_ctl_init psmi_ptl_ips;
|
||||
#endif /* _PTL_FWD_IPS_H */
|
||||
diff --git ptl_self/ptl_fwd.h ptl_self/ptl_fwd.h
|
||||
index ff79c7e66779..32f9041b1f00 100644
|
||||
--- ptl_self/ptl_fwd.h
|
||||
+++ ptl_self/ptl_fwd.h
|
||||
@@ -35,7 +35,7 @@
|
||||
#define _PTL_FWD_SELF_H
|
||||
|
||||
/* Symbol in am ptl */
|
||||
-struct ptl_ctl_init psmi_ptl_self;
|
||||
+extern struct ptl_ctl_init psmi_ptl_self;
|
||||
|
||||
#endif
|
||||
|
@ -1,3 +1,8 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Apr 3 08:37:16 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
|
||||
|
||||
- Add Add-missing-extern-keywords.patch to fix compilation with GCC10 (bsc#1160270)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 24 09:44:50 UTC 2019 - Martin Liška <mliska@suse.cz>
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package infinipath-psm
|
||||
#
|
||||
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2020 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -24,7 +24,7 @@ Release: 0
|
||||
Summary: QLogic PSM Libraries
|
||||
License: BSD-2-Clause OR GPL-2.0-only
|
||||
Group: Productivity/Networking/System
|
||||
Url: http://www.qlogic.com/
|
||||
URL: http://www.qlogic.com/
|
||||
Source0: %{name}-%{version}%{git_ver}.tar.gz
|
||||
Source1: baselibs.conf
|
||||
# PATCH-FIX-UPSTREAM infinipath-psm-cflags.patch pth@suse.de
|
||||
@ -37,6 +37,8 @@ Patch3: infinipath-psm-executable_headers.patch
|
||||
Patch4: reproducible.patch
|
||||
# PATCH-FIX-UPSTREAM Include <sys/sysmacros.h> for minor
|
||||
Patch5: sysmacros.patch
|
||||
# PATCH-FIX-UPSTREAM FIx GCC10 support
|
||||
Patch6: Add-missing-extern-keywords.patch
|
||||
BuildRequires: libuuid-devel
|
||||
Conflicts: infinipath-libs
|
||||
ExclusiveArch: %ix86 x86_64
|
||||
@ -103,6 +105,7 @@ interfaces in parallel environments.
|
||||
%patch3
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6
|
||||
|
||||
%build
|
||||
%define _lto_cflags %{nil}
|
||||
|
Loading…
Reference in New Issue
Block a user