From db9706138ece31fb5675aa51a4f9d3b3a9622b60 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 10 Jul 2020 15:51:22 -0400 Subject: [PATCH] fix build against lua 5.4 --- haproxy-2.2.0-lua-5.4.patch | 38 +++++++++++++++++++++++++++++++++++++ haproxy.spec | 8 +++++++- 2 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 haproxy-2.2.0-lua-5.4.patch diff --git a/haproxy-2.2.0-lua-5.4.patch b/haproxy-2.2.0-lua-5.4.patch new file mode 100644 index 0000000..183338d --- /dev/null +++ b/haproxy-2.2.0-lua-5.4.patch @@ -0,0 +1,38 @@ +diff -up haproxy-2.2.0/src/hlua.c.lua54 haproxy-2.2.0/src/hlua.c +--- haproxy-2.2.0/src/hlua.c.lua54 2020-07-07 10:33:14.000000000 -0400 ++++ haproxy-2.2.0/src/hlua.c 2020-07-10 15:21:50.415030526 -0400 +@@ -1069,6 +1069,9 @@ void hlua_hook(lua_State *L, lua_Debug * + */ + static enum hlua_exec hlua_ctx_resume(struct hlua *lua, int yield_allowed) + { ++#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 504 ++ int nres; ++#endif + int ret; + const char *msg; + const char *trace; +@@ -1100,7 +1103,11 @@ resume_execution: + lua->wake_time = TICK_ETERNITY; + + /* Call the function. */ ++#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 504 ++ ret = lua_resume(lua->T, gL.T, lua->nargs, &nres); ++#else + ret = lua_resume(lua->T, gL.T, lua->nargs); ++#endif + switch (ret) { + + case LUA_OK: +@@ -7844,10 +7851,12 @@ static int hlua_load(char **args, int se + memprintf(err, "Lua message handler error: %s\n", lua_tostring(gL.T, -1)); + lua_pop(gL.T, 1); + return -1; ++#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM <= 503 + case LUA_ERRGCMM: + memprintf(err, "Lua garbage collector error: %s\n", lua_tostring(gL.T, -1)); + lua_pop(gL.T, 1); + return -1; ++#endif + default: + memprintf(err, "Lua unknown error: %s\n", lua_tostring(gL.T, -1)); + lua_pop(gL.T, 1); diff --git a/haproxy.spec b/haproxy.spec index 51f0e2d..3e0468f 100644 --- a/haproxy.spec +++ b/haproxy.spec @@ -8,7 +8,7 @@ Name: haproxy Version: 2.2.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: HAProxy reverse proxy for high availability environments License: GPLv2+ @@ -21,6 +21,8 @@ Source3: %{name}.logrotate Source4: %{name}.sysconfig Source5: halog.1 +Patch0: haproxy-2.2.0-lua-5.4.patch + BuildRequires: gcc BuildRequires: lua-devel BuildRequires: pcre2-devel @@ -48,6 +50,7 @@ availability environments. Indeed, it can: %prep %setup -q +%patch0 -p1 -b .lua54 %build regparm_opts= @@ -132,6 +135,9 @@ exit 0 %{_mandir}/man1/* %changelog +* Fri Jul 10 2020 Tom Callaway - 2.2.0-2 +- fix build against lua 5.4 + * Thu Jul 09 2020 Ryan O'Hara - 2.2.0-0 - Update to 2.2.0 (#1854519)