xref: /OK3568_Linux_fs/buildroot/package/dump1090/0001-dump1090.h-fix-build-with-gcc-10.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFrom 02153cb0b2d1083dcd587798d9ef7ce963739622 Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Fabrice Fontaine <fontaine.fabrice@gmail.com>
3*4882a593SmuzhiyunDate: Wed, 19 Aug 2020 18:46:17 +0200
4*4882a593SmuzhiyunSubject: [PATCH] dump1090.h: fix build with gcc 10
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunFix the following build failures on gcc 10 (where -fno-common is enabled
7*4882a593Smuzhiyunby default):
8*4882a593Smuzhiyun
9*4882a593Smuzhiyun/home/test/autobuild/run/instance-0/output-1/per-package/dump1090/host/bin/../lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: interactive.o:/home/test/autobuild/run/instance-0/output-1/build/dump1090-bff92c4ad772a0a8d433f788d39dae97e00e4dbe/dump1090.h:373: multiple definition of `Modes'; /home/test/autobuild/run/instance-0/output-1/per-package/dump1090/host/bin/../lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: interactive.o:/home/test/autobuild/run/instance-0/output-1/build/dump1090-bff92c4ad772a0a8d433f788d39dae97e00e4dbe/dump1090.h:373: multiple definition of `Modes'; dump1090.o:/home/test/autobuild/run/instance-0/output-1/build/dump1090-bff92c4ad772a0a8d433f788d39dae97e00e4dbe/dump1090.h:373: first defined here
10*4882a593Smuzhiyun
11*4882a593Smuzhiyun/home/test/autobuild/run/instance-0/output-1/per-package/dump1090/host/bin/../lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: interactive.o:/home/test/autobuild/run/instance-0/output-1/build/dump1090-bff92c4ad772a0a8d433f788d39dae97e00e4dbe/dump1090.h:238: multiple definition of `tDF'; dump1090.o:/home/test/autobuild/run/instance-0/output-1/build/dump1090-bff92c4ad772a0a8d433f788d39dae97e00e4dbe/dump1090.h:238: first defined here
12*4882a593Smuzhiyun/home/test/autobuild/run/instance-0/output-1/per-package/dump1090/host/bin/../lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: view1090.o:/home/test/autobuild/run/instance-0/output-1/build/dump1090-bff92c4ad772a0a8d433f788d39dae97e00e4dbe/dump1090.h:373: first defined here
13*4882a593Smuzhiyun
14*4882a593SmuzhiyunFixes:
15*4882a593Smuzhiyun - http://autobuild.buildroot.org/results/88dc97fcaa649014edb3b54a5dd4bd8ec4715bbd
16*4882a593Smuzhiyun
17*4882a593SmuzhiyunSigned-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
18*4882a593Smuzhiyun[Upstream status: https://github.com/MalcolmRobb/dump1090/pull/96]
19*4882a593Smuzhiyun---
20*4882a593Smuzhiyun dump1090.c | 3 +++
21*4882a593Smuzhiyun dump1090.h | 4 ++--
22*4882a593Smuzhiyun view1090.c | 3 +++
23*4882a593Smuzhiyun 3 files changed, 8 insertions(+), 2 deletions(-)
24*4882a593Smuzhiyun
25*4882a593Smuzhiyundiff --git a/dump1090.c b/dump1090.c
26*4882a593Smuzhiyunindex 60882fc..1482224 100644
27*4882a593Smuzhiyun--- a/dump1090.c
28*4882a593Smuzhiyun+++ b/dump1090.c
29*4882a593Smuzhiyun@@ -29,6 +29,9 @@
30*4882a593Smuzhiyun //
31*4882a593Smuzhiyun #include "coaa.h"
32*4882a593Smuzhiyun #include "dump1090.h"
33*4882a593Smuzhiyun+
34*4882a593Smuzhiyun+struct modes Modes;
35*4882a593Smuzhiyun+
36*4882a593Smuzhiyun //
37*4882a593Smuzhiyun // ============================= Utility functions ==========================
38*4882a593Smuzhiyun //
39*4882a593Smuzhiyundiff --git a/dump1090.h b/dump1090.h
40*4882a593Smuzhiyunindex 9ad4de0..283e760 100644
41*4882a593Smuzhiyun--- a/dump1090.h
42*4882a593Smuzhiyun+++ b/dump1090.h
43*4882a593Smuzhiyun@@ -235,10 +235,10 @@ struct stDF {
44*4882a593Smuzhiyun     uint64_t         llTimestamp;                // Timestamp at which the this packet was received
45*4882a593Smuzhiyun     uint32_t         addr;                       // Timestamp at which the this packet was received
46*4882a593Smuzhiyun     unsigned char    msg[MODES_LONG_MSG_BYTES];  // the binary
47*4882a593Smuzhiyun-} tDF;
48*4882a593Smuzhiyun+};
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun // Program global state
51*4882a593Smuzhiyun-struct {                             // Internal state
52*4882a593Smuzhiyun+extern struct modes {                             // Internal state
53*4882a593Smuzhiyun     pthread_t       reader_thread;
54*4882a593Smuzhiyun
55*4882a593Smuzhiyun     pthread_mutex_t data_mutex;      // Mutex to synchronize buffer access
56*4882a593Smuzhiyundiff --git a/view1090.c b/view1090.c
57*4882a593Smuzhiyunindex 0b9b8b9..cc072fc 100644
58*4882a593Smuzhiyun--- a/view1090.c
59*4882a593Smuzhiyun+++ b/view1090.c
60*4882a593Smuzhiyun@@ -29,6 +29,9 @@
61*4882a593Smuzhiyun //
62*4882a593Smuzhiyun #include "coaa.h"
63*4882a593Smuzhiyun #include "view1090.h"
64*4882a593Smuzhiyun+
65*4882a593Smuzhiyun+struct modes Modes;
66*4882a593Smuzhiyun+
67*4882a593Smuzhiyun //
68*4882a593Smuzhiyun // ============================= Utility functions ==========================
69*4882a593Smuzhiyun //
70*4882a593Smuzhiyun--
71*4882a593Smuzhiyun2.27.0
72*4882a593Smuzhiyun
73