contrib/package: Add luaposix to OpenWRT feed
This commit is contained in:
parent
fe1bbe8ce7
commit
47774572e0
2 changed files with 105 additions and 0 deletions
43
contrib/package/luaposix/Makefile
Normal file
43
contrib/package/luaposix/Makefile
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
# Copyright (C) 2008 OpenWrt.org
|
||||||
|
#
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=luaposix
|
||||||
|
PKG_VERSION:=5.1.3
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
|
PKG_SOURCE_URL:=http://luaforge.net/frs/download.php/3449
|
||||||
|
PKG_MD5SUM:=4271f321c39d0560d9fbe6ca882a67aa
|
||||||
|
|
||||||
|
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||||
|
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
define Package/luaposix
|
||||||
|
SECTION:=lang
|
||||||
|
CATEGORY:=Languages
|
||||||
|
SUBMENU:=LUA
|
||||||
|
TITLE:=Posix library for Lua
|
||||||
|
URL:=http://luaforge.net/projects/luaposix/
|
||||||
|
DEPENDS:=+liblua
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Build/Configure
|
||||||
|
endef
|
||||||
|
|
||||||
|
MAKE_FLAGS += \
|
||||||
|
OS=Linux
|
||||||
|
|
||||||
|
define Package/luaposix/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib/lua
|
||||||
|
$(CP) $(PKG_BUILD_DIR)/posix.so $(1)/usr/lib/lua
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,luaposix))
|
62
contrib/package/luaposix/patches/200-crypt.patch
Normal file
62
contrib/package/luaposix/patches/200-crypt.patch
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
--- a/lposix.c
|
||||||
|
+++ b/lposix.c
|
||||||
|
@@ -1016,6 +1016,29 @@
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+/*
|
||||||
|
+ * XXX: GNU and BSD handle the forward declaration of crypt() in different
|
||||||
|
+ * and annoying ways (especially GNU). Declare it here just to make sure
|
||||||
|
+ * that it's there
|
||||||
|
+ */
|
||||||
|
+char *crypt(const char *, const char *);
|
||||||
|
+
|
||||||
|
+static int Pcrypt(lua_State *L)
|
||||||
|
+{
|
||||||
|
+ const char *str, *salt;
|
||||||
|
+ char *res;
|
||||||
|
+
|
||||||
|
+ str = luaL_checkstring(L, 1);
|
||||||
|
+ salt = luaL_checkstring(L, 2);
|
||||||
|
+ if (strlen(salt) < 2)
|
||||||
|
+ luaL_error(L, "not enough salt");
|
||||||
|
+
|
||||||
|
+ res = crypt(str, salt);
|
||||||
|
+ lua_pushstring(L, res);
|
||||||
|
+
|
||||||
|
+ return 1;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
static const luaL_reg R[] =
|
||||||
|
{
|
||||||
|
{"access", Paccess},
|
||||||
|
@@ -1023,6 +1046,7 @@
|
||||||
|
{"chdir", Pchdir},
|
||||||
|
{"chmod", Pchmod},
|
||||||
|
{"chown", Pchown},
|
||||||
|
+ {"crypt", Pcrypt},
|
||||||
|
{"ctermid", Pctermid},
|
||||||
|
{"dirname", Pdirname},
|
||||||
|
{"dir", Pdir},
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -37,8 +37,10 @@
|
||||||
|
OS=$(shell uname)
|
||||||
|
ifeq ($(OS),Darwin)
|
||||||
|
LDFLAGS_SHARED=-bundle -undefined dynamic_lookup
|
||||||
|
+ LIBS=
|
||||||
|
else
|
||||||
|
LDFLAGS_SHARED=-shared
|
||||||
|
+ LIBS=-lcrypt
|
||||||
|
endif
|
||||||
|
|
||||||
|
# targets
|
||||||
|
@@ -50,7 +52,7 @@
|
||||||
|
$(LUA) test.lua
|
||||||
|
|
||||||
|
$T: $(OBJS)
|
||||||
|
- $(CC) $(LDFLAGS) -o $@ $(LDFLAGS_SHARED) $(OBJS)
|
||||||
|
+ $(CC) $(LDFLAGS) -o $@ $(LDFLAGS_SHARED) $(OBJS) $(LIBS)
|
||||||
|
|
||||||
|
$(OBJS): modemuncher.c
|
||||||
|
|
Loading…
Reference in a new issue