patch: Fix build failure with gcc -fno-common

Resolves: #1796384

Signed-off-by: Martin Kutlak <mkutlak@redhat.com>
This commit is contained in:
Martin Kutlak 2020-01-30 15:15:01 +01:00
parent 91e270b38a
commit 064381a640
2 changed files with 300 additions and 1 deletions

View File

@ -0,0 +1,294 @@
From 0af82291c7c80cc0a1b486882242774211e5d8d4 Mon Sep 17 00:00:00 2001
From: Michal Fabik <mfabik@redhat.com>
Date: Tue, 28 Jan 2020 08:59:36 +0100
Subject: [PATCH] Fix build failure with gcc -fno-common
Definitions of the extern symbols are found in the existing versions of the corresponding .c files.
Signed-off-by: Michal Fabik <mfabik@redhat.com>
---
python/py_core_frame.h | 2 +-
python/py_core_stacktrace.h | 2 +-
python/py_core_thread.h | 2 +-
python/py_gdb_frame.h | 2 +-
python/py_gdb_stacktrace.h | 2 +-
python/py_gdb_thread.h | 2 +-
python/py_java_frame.h | 2 +-
python/py_java_stacktrace.h | 2 +-
python/py_java_thread.h | 2 +-
python/py_js_frame.h | 2 +-
python/py_js_stacktrace.h | 2 +-
python/py_koops_frame.h | 2 +-
python/py_koops_stacktrace.h | 2 +-
python/py_operating_system.h | 2 +-
python/py_python_frame.h | 2 +-
python/py_python_stacktrace.h | 2 +-
python/py_report.h | 2 +-
python/py_rpm_package.h | 2 +-
python/py_ruby_frame.h | 2 +-
python/py_ruby_stacktrace.h | 2 +-
20 files changed, 20 insertions(+), 20 deletions(-)
diff --git a/python/py_core_frame.h b/python/py_core_frame.h
index dc4a3a2..bc002e6 100644
--- a/python/py_core_frame.h
+++ b/python/py_core_frame.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_core_frame_type;
+extern PyTypeObject sr_py_core_frame_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_frame.
diff --git a/python/py_core_stacktrace.h b/python/py_core_stacktrace.h
index f458a23..6d91e40 100644
--- a/python/py_core_stacktrace.h
+++ b/python/py_core_stacktrace.h
@@ -35,7 +35,7 @@ extern "C" {
struct sr_py_core_frame;
struct sr_py_core_thread;
-PyTypeObject sr_py_core_stacktrace_type;
+extern PyTypeObject sr_py_core_stacktrace_type;
/* The beginning of this structure has to have the same layout as
* sr_py_multi_thread_stacktrace.
diff --git a/python/py_core_thread.h b/python/py_core_thread.h
index 2890ff1..c400fb0 100644
--- a/python/py_core_thread.h
+++ b/python/py_core_thread.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_core_thread_type;
+extern PyTypeObject sr_py_core_thread_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_thread.
diff --git a/python/py_gdb_frame.h b/python/py_gdb_frame.h
index a5f6911..64d49b2 100644
--- a/python/py_gdb_frame.h
+++ b/python/py_gdb_frame.h
@@ -33,7 +33,7 @@ extern "C" {
#include <structmember.h>
#include "gdb/frame.h"
-PyTypeObject sr_py_gdb_frame_type;
+extern PyTypeObject sr_py_gdb_frame_type;
typedef sr_gdb_frame_address_t sr_py_gdb_frame_address_t;
diff --git a/python/py_gdb_stacktrace.h b/python/py_gdb_stacktrace.h
index f5a1765..6c977be 100644
--- a/python/py_gdb_stacktrace.h
+++ b/python/py_gdb_stacktrace.h
@@ -35,7 +35,7 @@ extern "C" {
struct sr_py_gdb_frame;
struct sr_py_gdb_thread;
-PyTypeObject sr_py_gdb_stacktrace_type;
+extern PyTypeObject sr_py_gdb_stacktrace_type;
/* The beginning of this structure has to have the same layout as
* sr_py_multi_thread_stacktrace.
diff --git a/python/py_gdb_thread.h b/python/py_gdb_thread.h
index 39d5163..f518fd8 100644
--- a/python/py_gdb_thread.h
+++ b/python/py_gdb_thread.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_gdb_thread_type;
+extern PyTypeObject sr_py_gdb_thread_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_thread.
diff --git a/python/py_java_frame.h b/python/py_java_frame.h
index 9f30eb5..ce77cd2 100644
--- a/python/py_java_frame.h
+++ b/python/py_java_frame.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_java_frame_type;
+extern PyTypeObject sr_py_java_frame_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_frame.
diff --git a/python/py_java_stacktrace.h b/python/py_java_stacktrace.h
index 9cbe80a..1ddf412 100644
--- a/python/py_java_stacktrace.h
+++ b/python/py_java_stacktrace.h
@@ -35,7 +35,7 @@ extern "C" {
struct sr_py_java_frame;
struct sr_py_java_thread;
-PyTypeObject sr_py_java_stacktrace_type;
+extern PyTypeObject sr_py_java_stacktrace_type;
/* The beginning of this structure has to have the same layout as
* sr_py_multi_thread_stacktrace.
diff --git a/python/py_java_thread.h b/python/py_java_thread.h
index 0abe8bc..d95438f 100644
--- a/python/py_java_thread.h
+++ b/python/py_java_thread.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_java_thread_type;
+extern PyTypeObject sr_py_java_thread_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_thread.
diff --git a/python/py_js_frame.h b/python/py_js_frame.h
index 4374f17..8ce154e 100644
--- a/python/py_js_frame.h
+++ b/python/py_js_frame.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_js_frame_type;
+extern PyTypeObject sr_py_js_frame_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_frame.
diff --git a/python/py_js_stacktrace.h b/python/py_js_stacktrace.h
index 4c24476..14f6c36 100644
--- a/python/py_js_stacktrace.h
+++ b/python/py_js_stacktrace.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_js_stacktrace_type;
+extern PyTypeObject sr_py_js_stacktrace_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_thread.
diff --git a/python/py_koops_frame.h b/python/py_koops_frame.h
index 81174de..7d658d7 100644
--- a/python/py_koops_frame.h
+++ b/python/py_koops_frame.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_koops_frame_type;
+extern PyTypeObject sr_py_koops_frame_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_frame.
diff --git a/python/py_koops_stacktrace.h b/python/py_koops_stacktrace.h
index e72ab54..bea12c9 100644
--- a/python/py_koops_stacktrace.h
+++ b/python/py_koops_stacktrace.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_koops_stacktrace_type;
+extern PyTypeObject sr_py_koops_stacktrace_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_thread.
diff --git a/python/py_operating_system.h b/python/py_operating_system.h
index bcd8e7f..dbfa024 100644
--- a/python/py_operating_system.h
+++ b/python/py_operating_system.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_operating_system_type;
+extern PyTypeObject sr_py_operating_system_type;
struct sr_py_operating_system
{
diff --git a/python/py_python_frame.h b/python/py_python_frame.h
index 6b4b63f..6cdde88 100644
--- a/python/py_python_frame.h
+++ b/python/py_python_frame.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_python_frame_type;
+extern PyTypeObject sr_py_python_frame_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_frame.
diff --git a/python/py_python_stacktrace.h b/python/py_python_stacktrace.h
index a89ad8f..fff51c4 100644
--- a/python/py_python_stacktrace.h
+++ b/python/py_python_stacktrace.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_python_stacktrace_type;
+extern PyTypeObject sr_py_python_stacktrace_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_thread.
diff --git a/python/py_report.h b/python/py_report.h
index 88ec30f..2c5bb8d 100644
--- a/python/py_report.h
+++ b/python/py_report.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_report_type;
+extern PyTypeObject sr_py_report_type;
struct sr_py_report
{
diff --git a/python/py_rpm_package.h b/python/py_rpm_package.h
index 0a00d8d..363acd6 100644
--- a/python/py_rpm_package.h
+++ b/python/py_rpm_package.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_rpm_package_type;
+extern PyTypeObject sr_py_rpm_package_type;
struct sr_py_rpm_package
{
diff --git a/python/py_ruby_frame.h b/python/py_ruby_frame.h
index 7f460ff..e7aa568 100644
--- a/python/py_ruby_frame.h
+++ b/python/py_ruby_frame.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_ruby_frame_type;
+extern PyTypeObject sr_py_ruby_frame_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_frame.
diff --git a/python/py_ruby_stacktrace.h b/python/py_ruby_stacktrace.h
index f4eebce..59d866b 100644
--- a/python/py_ruby_stacktrace.h
+++ b/python/py_ruby_stacktrace.h
@@ -32,7 +32,7 @@ extern "C" {
#include <Python.h>
#include <structmember.h>
-PyTypeObject sr_py_ruby_stacktrace_type;
+extern PyTypeObject sr_py_ruby_stacktrace_type;
/* The beginning of this structure has to have the same layout as
* sr_py_base_thread.
--
2.24.1

View File

@ -15,7 +15,7 @@
Name: satyr
Version: 0.29
Release: 2%{?dist}
Release: 3%{?dist}
Summary: Tools to create anonymous, machine-friendly problem reports
License: GPLv2+
URL: https://github.com/abrt/satyr
@ -46,6 +46,7 @@ Requires: json-c
BuildRequires: git
Patch0: 0001-lib-koops_stacktrace-Don-t-parse-register-as-module.patch
Patch1: 0002-Fix-build-failure-with-gcc-fno-common.patch
%description
Satyr is a library that can be used to create and process microreports.
@ -133,6 +134,10 @@ make check|| {
%endif
%changelog
* Thu Jan 30 2020 Martin Kutlak <mkutlak@redhat.com> - 0.29-3
- Add patch to fix build failure with gcc -fno-common
- Resolves: #1796384
* Mon Nov 11 2019 Ernestas Kulik <ekulik@redhat.com> - 0.29-2
- Add patch for https://bugzilla.redhat.com/show_bug.cgi?id=1518943