1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180
|
Author: Reiner Herrmann <reiner@reiner-h.de>
Description: Fix build with GCC 10
Bug-Debian: https://bugs.debian.org/957027
Forwarded: https://github.com/awesomeWM/awesome/pull/3065
--- 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))
--- 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);
--- 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},
--- a/luaa.h
+++ b/luaa.h
@@ -311,7 +311,7 @@
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 *);
--- 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.
--- a/objects/button.h
+++ b/objects/button.h
@@ -39,7 +39,7 @@
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)
--- a/objects/client.c
+++ b/objects/client.c
@@ -106,6 +106,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,
--- a/objects/client.h
+++ b/objects/client.h
@@ -192,7 +192,7 @@
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)
--- 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.
--- a/objects/drawin.h
+++ b/objects/drawin.h
@@ -52,7 +52,7 @@
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
--- 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.
--- a/objects/key.h
+++ b/objects/key.h
@@ -36,7 +36,7 @@
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)
--- 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
*/
--- a/objects/tag.h
+++ b/objects/tag.h
@@ -46,7 +46,7 @@
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 *);
--- 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
--- a/objects/window.h
+++ b/objects/window.h
@@ -80,7 +80,7 @@
WINDOW_OBJECT_HEADER
} window_t;
-lua_class_t window_class;
+extern lua_class_t window_class;
void window_class_setup(lua_State *);
|