[Buildroot] [git commit] package/lua-utf8: fix missing header
Julien Olivain
ju.o at free.fr
Sat Sep 6 17:57:24 UTC 2025
commit: https://git.buildroot.net/buildroot/commit/?id=f255b90afcc0e9c163a711bfe483cdf39e45e672
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
Backport an upstream patch adding missing limits.h.
https://gitlab.com/buildroot.org/buildroot/-/jobs/11176774630 (TestLuajitUtf8)
Signed-off-by: Romain Naour <romain.naour at smile.fr>
Signed-off-by: Julien Olivain <ju.o at free.fr>
---
...include-limits.h-instead-of-transitively-.patch | 58 ++++++++++++++++++++++
1 file changed, 58 insertions(+)
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 <caleb at alerque.com>
+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 â<limits.h>â; did you forget to â#include <limits.h>â?
+ 11 | #include "unidata.h"
+ +++ |+#include <limits.h>
+ 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 <romain.naour at smile.fr>
+---
+ 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 <assert.h>
+ #include <string.h>
+ #include <stdint.h>
++#include <limits.h>
+
+ #include "unidata.h"
+
+--
+2.51.0
+
More information about the buildroot
mailing list