luaposix: import from packages 8/head
authorMaxim Storchak <m.storchak@gmail.com>
Wed, 11 Jun 2014 05:55:54 +0000 (08:55 +0300)
committerMaxim Storchak <m.storchak@gmail.com>
Wed, 11 Jun 2014 05:55:54 +0000 (08:55 +0300)
Signed-off-by: Maxim Storchak <m.storchak@gmail.com>
lang/luaposix/Makefile [new file with mode: 0644]
lang/luaposix/patches/100-eglibc-compat.patch [new file with mode: 0644]

diff --git a/lang/luaposix/Makefile b/lang/luaposix/Makefile
new file mode 100644 (file)
index 0000000..e82e31d
--- /dev/null
@@ -0,0 +1,53 @@
+#
+# Copyright (C) 2011 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=luaposix
+PKG_VERSION:=v31
+PKG_RELEASE:=1
+
+PKG_SOURCE:=release-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://github.com/luaposix/luaposix/archive/
+PKG_MD5SUM:=a25ff76d54bbbebf7a1f3b20c9806ee3
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-release-$(PKG_VERSION)
+PKG_REMOVE_FILES:=aclocal.m4
+PKG_FIXUP:=autoreconf
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/luaposix
+  SUBMENU:=Lua
+  SECTION:=lang
+  CATEGORY:=Languages
+  TITLE:=luaposix
+  URL:=http://luaforge.net/projects/luaposix/
+  DEPENDS:=+lua +librt +luabitop
+  PKG_BUILD_DEPENDS:=+lua/host
+endef
+
+define Package/luaposix/description
+  luaposix is a general POSIX library for Lua providing access
+  to various low level libc functions.
+endef
+
+TARGET_CFLAGS += -DLUA_USE_LINUX $(FPIC) -std=gnu99
+
+ifneq ($(CONFIG_USE_EGLIBC),)
+  ifeq ($(CONFIG_EGLIBC_OPTION_EGLIBC_UTMP),)
+    TARGET_CFLAGS += -DNO_GETLOGIN
+  endif
+endif
+
+
+define Package/luaposix/install
+       $(INSTALL_DIR) $(1)/usr/lib/lua
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/ext/posix/.libs/posix_c.so $(1)/usr/lib/lua
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/posix.lua $(1)/usr/lib/lua
+endef
+
+$(eval $(call BuildPackage,luaposix))
diff --git a/lang/luaposix/patches/100-eglibc-compat.patch b/lang/luaposix/patches/100-eglibc-compat.patch
new file mode 100644 (file)
index 0000000..0cdff83
--- /dev/null
@@ -0,0 +1,28 @@
+--- a/ext/posix/posix.c
++++ b/ext/posix/posix.c
+@@ -1970,6 +1970,7 @@ static int Pctermid(lua_State *L)
+       return 1;
+ }
++#ifndef NO_GETLOGIN
+ /***
+ Current logged-in user.
+ @see getlogin(3)
+@@ -1980,6 +1981,7 @@ static int Pgetlogin(lua_State *L)
+       lua_pushstring(L, getlogin());
+       return 1;
+ }
++#endif
+ static void Fgetpasswd(lua_State *L, int i, const void *data)
+ {
+@@ -3786,7 +3788,9 @@ static const luaL_Reg R[] =
+ #if _POSIX_VERSION >= 200112L
+       MENTRY( Pgetgroups      ),
+ #endif
++#ifndef NO_GETLOGIN
+       MENTRY( Pgetlogin       ),
++#endif
+       MENTRY( Pgetopt         ),
+       MENTRY( Pgetpasswd      ),
+       MENTRY( Pgetpid         ),