Hello community,

here is the log from the commit of package awesome for openSUSE:Factory checked 
in at 2020-07-24 09:58:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/awesome (Old)
 and      /work/SRC/openSUSE:Factory/.awesome.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "awesome"

Fri Jul 24 09:58:34 2020 rev:26 rq:822181 version:4.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/awesome/awesome.changes  2019-02-11 
21:25:49.831066190 +0100
+++ /work/SRC/openSUSE:Factory/.awesome.new.3592/awesome.changes        
2020-07-24 10:00:03.985649192 +0200
@@ -1,0 +2,7 @@
+Sat Jul 18 21:23:16 UTC 2020 - Brice DEKANY <brice.dek...@suse.com>
+
+- Added 001-extern-vars-declaration-fix-gcc10.patch: Move variable
+  declarations from header to C file to fix build with GCC 10 
+  See https://github.com/awesomeWM/awesome/pull/3065
+
+-------------------------------------------------------------------

New:
----
  001-extern-vars-declaration-fix-gcc10.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ awesome.spec ++++++
--- /var/tmp/diff_new_pack.1qzdSS/_old  2020-07-24 10:00:05.741650827 +0200
+++ /var/tmp/diff_new_pack.1qzdSS/_new  2020-07-24 10:00:05.745650831 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package awesome
 #
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -26,6 +26,7 @@
 Source:         
https://github.com/awesomeWM/awesome-releases/raw/master/%{name}-%{version}.tar.xz
 Source1:        
https://github.com/awesomeWM/awesome-releases/raw/master/%{name}-%{version}.tar.xz.asc
 Source2:        %{name}.keyring
+Patch0:         001-extern-vars-declaration-fix-gcc10.patch
 BuildRequires:  ImageMagick
 BuildRequires:  cmake
 BuildRequires:  doxygen
@@ -95,6 +96,9 @@
 sed -i 's/nano/vi/g' %{name}rc.lua
 sed -i 's/^\(Type=\).*$/\1XSession/' %{name}.desktop
 sed -i 's/#!\/usr\/bin\/env bash/#!\/bin\/bash/' ./utils/awesome-client
+%if 0%{?suse_version} >= 1500
+%patch0 -p1
+%endif
 
 %build
 %cmake \

++++++ 001-extern-vars-declaration-fix-gcc10.patch ++++++
>From d256d9055095f27a33696e0aeda4ee20ed4fb1a0 Mon Sep 17 00:00:00 2001
From: Reiner Herrmann <rei...@reiner-h.de>
Date: Fri, 17 Apr 2020 19:25:40 +0200
Subject: [PATCH] Move variable declarations from header to C file to fix build
 with GCC 10

GCC 10 builds with -fno-common by default, which causes linker errors when
variables are declared in header files and included in multiple places.

See also: https://gcc.gnu.org/gcc-10/porting_to.html
---
 common/lualib.c  | 2 ++
 common/lualib.h  | 2 +-
 luaa.c           | 2 ++
 luaa.h           | 2 +-
 objects/button.c | 2 ++
 objects/button.h | 2 +-
 objects/client.c | 2 ++
 objects/client.h | 2 +-
 objects/drawin.c | 2 ++
 objects/drawin.h | 2 +-
 objects/key.c    | 2 ++
 objects/key.h    | 2 +-
 objects/tag.c    | 2 ++
 objects/tag.h    | 2 +-
 objects/window.c | 1 +
 objects/window.h | 2 +-
 16 files changed, 23 insertions(+), 8 deletions(-)

diff --git a/common/lualib.c b/common/lualib.c
index 312fb2d594..bb110ac716 100644
--- a/common/lualib.c
+++ b/common/lualib.c
@@ -20,6 +20,8 @@
 #include "common/lualib.h"
 #include "luaa.h"
 
+lua_CFunction lualib_dofunction_on_error;
+
 void luaA_checkfunction(lua_State *L, int idx)
 {
     if(!lua_isfunction(L, idx))
diff --git a/common/lualib.h b/common/lualib.h
index 8a3ef089d7..a91261843c 100644
--- a/common/lualib.h
+++ b/common/lualib.h
@@ -28,7 +28,7 @@
 #include "common/util.h"
 
 /** Lua function to call on dofunction() error */
-lua_CFunction lualib_dofunction_on_error;
+extern lua_CFunction lualib_dofunction_on_error;
 
 void luaA_checkfunction(lua_State *, int);
 void luaA_checktable(lua_State *, int);
diff --git a/luaa.c b/luaa.c
index 419a8c2eb2..aeaba9cd1f 100644
--- a/luaa.c
+++ b/luaa.c
@@ -77,6 +77,8 @@
 extern const struct luaL_Reg awesome_mouse_methods[];
 extern const struct luaL_Reg awesome_mouse_meta[];

+signal_array_t global_signals;
+
 /** A call into the Lua code aborted with an error.
  *
  * This signal is used in the example configuration, @{05-awesomerc.md},
diff --git a/luaa.h b/luaa.h
index e159258348..d26c437691 100644
--- a/luaa.h
+++ b/luaa.h
@@ -317,7 +317,7 @@ const char *luaA_find_config(xdgHandle *, const char *, 
luaA_config_callback *);
 bool luaA_parserc(xdgHandle *, const char *);
 
 /** Global signals */
-signal_array_t global_signals;
+extern signal_array_t global_signals;
 
 int luaA_class_index_miss_property(lua_State *, lua_object_t *);
 int luaA_class_newindex_miss_property(lua_State *, lua_object_t *);
diff --git a/objects/button.c b/objects/button.c
index 892347a928..5ffdcd4432 100644
--- a/objects/button.c
+++ b/objects/button.c
@@ -35,6 +35,8 @@
 
 #include "button.h"
 
+lua_class_t button_class;
+
 /** Button object.
  *
  * @tfield int button The mouse button number, or 0 for any button.
diff --git a/objects/button.h b/objects/button.h
index fb8bb8da28..8f0b894305 100644
--- a/objects/button.h
+++ b/objects/button.h
@@ -39,7 +39,7 @@ typedef struct button_t
     xcb_button_t button;
 } button_t;
 
-lua_class_t button_class;
+extern lua_class_t button_class;
 LUA_OBJECT_FUNCS(button_class, button_t, button)
 ARRAY_FUNCS(button_t *, button, DO_NOTHING)
 
diff --git a/objects/client.c b/objects/client.c
index 7b2d3a2022..b617a9e7a9 100644
--- a/objects/client.c
+++ b/objects/client.c
@@ -108,6 +108,8 @@
 #include <xcb/shape.h>
 #include <cairo-xcb.h>
 
+lua_class_t client_class;
+
 /** Client class.
  *
  * This table allow to add more dynamic properties to the clients. For example,
diff --git a/objects/client.h b/objects/client.h
index 74a23131c5..387e7c2aea 100644
--- a/objects/client.h
+++ b/objects/client.h
@@ -200,7 +200,7 @@ struct client_t
 ARRAY_FUNCS(client_t *, client, DO_NOTHING)
 
 /** Client class */
-lua_class_t client_class;
+extern lua_class_t client_class;
 
 LUA_OBJECT_FUNCS(client_class, client_t, client)
 
diff --git a/objects/drawin.c b/objects/drawin.c
index 3fd1cc4350..3bbd93179c 100644
--- a/objects/drawin.c
+++ b/objects/drawin.c
@@ -46,6 +46,8 @@
 #include <cairo-xcb.h>
 #include <xcb/shape.h>
 
+lua_class_t drawin_class;
+
 /** Drawin object.
  *
  * @field border_width Border width.
diff --git a/objects/drawin.h b/objects/drawin.h
index 31f315aac5..2f8887d944 100644
--- a/objects/drawin.h
+++ b/objects/drawin.h
@@ -52,7 +52,7 @@ void luaA_drawin_systray_kickout(lua_State *);
 
 void drawin_class_setup(lua_State *);
 
-lua_class_t drawin_class;
+extern lua_class_t drawin_class;
 
 #endif
 // vim: filetype=c:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
diff --git a/objects/key.c b/objects/key.c
index c42f7446d8..365ba998cc 100644
--- a/objects/key.c
+++ b/objects/key.c
@@ -43,6 +43,8 @@
 #include <xkbcommon/xkbcommon.h>
 #include <glib.h>
 
+lua_class_t key_class;
+
 /** Key object.
  *
  * @tfield string key The key to trigger an event.
diff --git a/objects/key.h b/objects/key.h
index 8aa07ffe3d..45f23cac79 100644
--- a/objects/key.h
+++ b/objects/key.h
@@ -36,7 +36,7 @@ typedef struct keyb_t
     xcb_keycode_t keycode;
 } keyb_t;
 
-lua_class_t key_class;
+extern lua_class_t key_class;
 LUA_OBJECT_FUNCS(key_class, keyb_t, key)
 DO_ARRAY(keyb_t *, key, DO_NOTHING)
 
diff --git a/objects/tag.c b/objects/tag.c
index a0050cc2a9..1b1a135762 100644
--- a/objects/tag.c
+++ b/objects/tag.c
@@ -190,6 +190,8 @@
 #include "ewmh.h"
 #include "luaa.h"

+lua_class_t tag_class;
+
 /**
  * @signal request::select
  */
diff --git a/objects/tag.h b/objects/tag.h
index d6bb40e0d8..f830b1e2c5 100644
--- a/objects/tag.h
+++ b/objects/tag.h
@@ -46,7 +46,7 @@ struct tag
     client_array_t clients;
 };
 
-lua_class_t tag_class;
+extern lua_class_t tag_class;
 LUA_OBJECT_FUNCS(tag_class, tag_t, tag)
 
 void tag_class_setup(lua_State *);
diff --git a/objects/window.c b/objects/window.c
index 440970f3d0..371d06bcd3 100644
--- a/objects/window.c
+++ b/objects/window.c
@@ -59,6 +59,7 @@
 #include "property.h"
 #include "xwindow.h"
 
+lua_class_t window_class;
 LUA_CLASS_FUNCS(window, window_class)
 
 static xcb_window_t
diff --git a/objects/window.h b/objects/window.h
index 5386fafead..fbc5296cf5 100644
--- a/objects/window.h
+++ b/objects/window.h
@@ -80,7 +80,7 @@ typedef struct
     WINDOW_OBJECT_HEADER
 } window_t;
 
-lua_class_t window_class;
+extern lua_class_t window_class;
 
 void window_class_setup(lua_State *);
 


Reply via email to