From dfe009868bce02b9cf4fc8d37f511706422eface Mon Sep 17 00:00:00 2001 From: Romain Naour Date: Sat, 6 Sep 2025 19:24:08 +0200 Subject: [PATCH] package/lua-utf8: fix missing header Backport an upstream patch adding missing limits.h. https://gitlab.com/buildroot.org/buildroot/-/jobs/11176774630 (TestLuajitUtf8) Signed-off-by: Romain Naour Signed-off-by: Julien Olivain (cherry picked from commit f255b90afcc0e9c163a711bfe483cdf39e45e672) Signed-off-by: Thomas Perale --- ...de-limits.h-instead-of-transitively-.patch | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 package/lua-utf8/0001-Explicitly-include-limits.h-instead-of-transitively-.patch diff --git a/package/lua-utf8/0001-Explicitly-include-limits.h-instead-of-transitively-.patch b/package/lua-utf8/0001-Explicitly-include-limits.h-instead-of-transitively-.patch new file mode 100644 index 0000000000..f87930e6a9 --- /dev/null +++ b/package/lua-utf8/0001-Explicitly-include-limits.h-instead-of-transitively-.patch @@ -0,0 +1,58 @@ +From feda38c6b7ef4c564f77213037dc20768c638d9c Mon Sep 17 00:00:00 2001 +From: Caleb Maclennan +Date: Thu, 2 Jan 2025 15:42:05 +0300 +Subject: [PATCH] Explicitly include limits.h instead of transitively assuming + it +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Recent upstream releases of LuaJIT have broken building this Lua Rock +entirely. PUC Lua and LuaJIT builds up to a certain point included this +header in lua.h, which meant that it was always around as a transitive +dependency. Recent upstream LuaJIT builds no longer include the header +since they aren't using it directly any more, but that means things that +include lua.h don't get it for free any more. It should never have been +assumed anyway, but that's been the status quo for a while. + +This fixes build errors when using LuaJIT headers instead of PUC Lua: + +``` +lutf8lib.c: In function ‘Lutf8_codepoint’: +lutf8lib.c:398:22: error: ‘INT_MAX’ undeclared (first use in this function) + 398 | if (pose - posi >= INT_MAX) /* (lua_Integer -> int) overflow? */ + | ^~~~~~~ +lutf8lib.c:12:1: note: ‘INT_MAX’ is defined in header ‘’; did you forget to ‘#include ’? + 11 | #include "unidata.h" + +++ |+#include + 12 | +lutf8lib.c:398:22: note: each undeclared identifier is reported only once for each function it appears in + 398 | if (pose - posi >= INT_MAX) /* (lua_Integer -> int) overflow? */ + | ^~~~~~~ +``` + +This is because `INT_MAX` is defined appropriately for a given platfrom +in in limits.h. + +Upstream: 1bb70d45208d4033dcc75efee968be70534dd3ab +[Romain: rebase on 0.1.5] +Signed-off-by: Romain Naour +--- + luautf8-0.1.5/lutf8lib.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/luautf8-0.1.5/lutf8lib.c b/luautf8-0.1.5/lutf8lib.c +index 522599e..71f2f42 100644 +--- a/luautf8-0.1.5/lutf8lib.c ++++ b/luautf8-0.1.5/lutf8lib.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + + #include "unidata.h" + +-- +2.51.0 +