summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-01-31 07:18:13 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-01-31 07:18:13 +0000
commit14011b1e81b06e094bc95ad4f45248190698d5d4 (patch)
treeea001b7220c10e15749e224997446b40554d1bd7
parent26f6351004554e84839259124a6a0ccd93d5d5da (diff)
fix lua compile with eglibc selected and utmp support disabled
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14298 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/lua/Makefile6
-rw-r--r--package/lua/patches/500-eglibc_config.patch26
2 files changed, 32 insertions, 0 deletions
diff --git a/package/lua/Makefile b/package/lua/Makefile
index aff52c3f2..eff31390a 100644
--- a/package/lua/Makefile
+++ b/package/lua/Makefile
@@ -86,6 +86,12 @@ endef
TARGET_CFLAGS += -DLUA_USE_LINUX $(FPIC)
+ifneq ($(CONFIG_USE_EGLIBC),)
+ ifeq ($(CONFIG_EGLIBC_OPTION_EGLIBC_UTMP),)
+ TARGET_CFLAGS += -DNO_GETLOGIN
+ endif
+endif
+
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
CC="$(TARGET_CROSS)gcc" \
diff --git a/package/lua/patches/500-eglibc_config.patch b/package/lua/patches/500-eglibc_config.patch
new file mode 100644
index 000000000..61d2b1d24
--- /dev/null
+++ b/package/lua/patches/500-eglibc_config.patch
@@ -0,0 +1,26 @@
+--- a/src/lposix.c
++++ b/src/lposix.c
+@@ -727,11 +727,13 @@ static int Pctermid(lua_State *L) /** c
+ }
+
+
++#ifndef NO_GETLOGIN
+ static int Pgetlogin(lua_State *L) /** getlogin() */
+ {
+ lua_pushstring(L, getlogin());
+ return 1;
+ }
++#endif
+
+
+ static void Fgetpasswd(lua_State *L, int i, const void *data)
+@@ -1052,7 +1054,9 @@ static const luaL_reg R[] =
+ {"getcwd", Pgetcwd},
+ {"getenv", Pgetenv},
+ {"getgroup", Pgetgroup},
++#ifndef NO_GETLOGIN
+ {"getlogin", Pgetlogin},
++#endif
+ {"getpasswd", Pgetpasswd},
+ {"getpid", Pgetpid},
+ {"glob", Pglob},