add luaposix crypt support (and darwin_compile patch for patch compatibility reasons)
git-svn-id: svn://svn.openwrt.org/openwrt/packages@11327 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
cdeb958207
commit
075fe11e80
@ -39,7 +39,8 @@ define Build/Compile
|
||||
AR="$(TARGET_CROSS)ar rcu" \
|
||||
RANLIB="$(TARGET_CROSS)ranlib" \
|
||||
INSTALL_ROOT=/usr \
|
||||
LUAINC=$(STAGING_DIR)/usr/include
|
||||
LUAINC=$(STAGING_DIR)/usr/include \
|
||||
OS=Linux
|
||||
$(STRIP) $(PKG_BUILD_DIR)/posix.so
|
||||
endef
|
||||
|
||||
|
27
lang/luaposix/patches/100-darwin_compile.patch
Normal file
27
lang/luaposix/patches/100-darwin_compile.patch
Normal file
@ -0,0 +1,27 @@
|
||||
Index: luaposix-5.1.2/Makefile
|
||||
===================================================================
|
||||
--- luaposix-5.1.2.orig/Makefile 2008-01-29 14:49:27.000000000 +0100
|
||||
+++ luaposix-5.1.2/Makefile 2008-05-28 14:15:30.000000000 +0200
|
||||
@@ -34,6 +34,13 @@
|
||||
|
||||
T= $(MYLIB).so
|
||||
|
||||
+OS=$(shell uname)
|
||||
+ifeq ($(OS),Darwin)
|
||||
+ LDFLAGS_SHARED=-bundle -undefined dynamic_lookup
|
||||
+else
|
||||
+ LDFLAGS_SHARED=-shared
|
||||
+endif
|
||||
+
|
||||
# targets
|
||||
phony += all
|
||||
all: $T
|
||||
@@ -43,7 +50,7 @@
|
||||
$(LUA) test.lua
|
||||
|
||||
$T: $(OBJS)
|
||||
- $(CC) $(LDFLAGS) -o $@ -shared $(OBJS)
|
||||
+ $(CC) $(LDFLAGS) -o $@ $(LDFLAGS_SHARED) $(OBJS)
|
||||
|
||||
$(OBJS): modemuncher.c
|
||||
|
66
lang/luaposix/patches/200-crypt.patch
Normal file
66
lang/luaposix/patches/200-crypt.patch
Normal file
@ -0,0 +1,66 @@
|
||||
Index: luaposix-5.1.2/lposix.c
|
||||
===================================================================
|
||||
--- luaposix-5.1.2.orig/lposix.c 2008-06-02 17:35:21.000000000 +0200
|
||||
+++ luaposix-5.1.2/lposix.c 2008-06-02 17:35:26.000000000 +0200
|
||||
@@ -1006,6 +1006,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},
|
||||
@@ -1013,6 +1036,7 @@
|
||||
{"chdir", Pchdir},
|
||||
{"chmod", Pchmod},
|
||||
{"chown", Pchown},
|
||||
+ {"crypt", Pcrypt},
|
||||
{"ctermid", Pctermid},
|
||||
{"dirname", Pdirname},
|
||||
{"dir", Pdir},
|
||||
Index: luaposix-5.1.2/Makefile
|
||||
===================================================================
|
||||
--- luaposix-5.1.2.orig/Makefile 2008-06-02 17:35:26.000000000 +0200
|
||||
+++ luaposix-5.1.2/Makefile 2008-06-02 17:35:18.000000000 +0200
|
||||
@@ -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…
x
Reference in New Issue
Block a user