[SCM] Samba Shared Repository - branch master updated - 09e6dfb8e8d1447306951e34e4e2211037edb9be

Volker Lendecke vlendec at samba.org
Wed Dec 17 11:58:02 GMT 2008


The branch, master has been updated
       via  09e6dfb8e8d1447306951e34e4e2211037edb9be (commit)
       via  5659f18b86bf1c60fba2bfd76d16e155ae1fb41c (commit)
       via  390f19b649b85a8f8ab762c6a4e9d1a3d23d3f47 (commit)
      from  081f8883bafc11ca7c08f868ec19f1ea32071837 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 09e6dfb8e8d1447306951e34e4e2211037edb9be
Author: Volker Lendecke <vl at samba.org>
Date:   Sun Sep 14 15:44:57 2008 +0200

    net lua
    
    This adds a lua command line interpreter with some sample code how to build
    your own data types based on our internal data types.
    
    Not meant as the final word, but as a playground for experiments for people.
    Might be removed later when we find this turns out to be too awkward.

commit 5659f18b86bf1c60fba2bfd76d16e155ae1fb41c
Author: Volker Lendecke <vl at samba.org>
Date:   Sun Sep 14 15:30:57 2008 +0200

    Compile liblua

commit 390f19b649b85a8f8ab762c6a4e9d1a3d23d3f47
Author: Volker Lendecke <vl at samba.org>
Date:   Fri Sep 19 08:01:23 2008 +0200

    Add the Lua distibution from http://www.lua.org/ftp/lua-5.1.4.tar.gz
    
    Available under the MIT license.
    
    Adding it to see how the build farm likes it. They claim to be 100% pure
    ANSI C and compile everywhere. Lets see. If it breaks badly, we can remove
    it again.

-----------------------------------------------------------------------

Summary of changes:
 source3/Makefile.in                      |   83 +-
 source3/configure.in                     |    1 +
 source3/exports/liblua.syms              |    5 +
 source3/lua-5.1.4/COPYRIGHT              |   34 +
 source3/lua-5.1.4/HISTORY                |  183 +
 source3/lua-5.1.4/INSTALL                |   99 +
 source3/lua-5.1.4/Makefile               |  128 +
 source3/lua-5.1.4/README                 |   37 +
 source3/lua-5.1.4/doc/amazon.gif         |  Bin 0 -> 797 bytes
 source3/lua-5.1.4/doc/contents.html      |  499 ++
 source3/lua-5.1.4/doc/cover.png          |  Bin 0 -> 3305 bytes
 source3/lua-5.1.4/doc/logo.gif           |  Bin 0 -> 4232 bytes
 source3/lua-5.1.4/doc/lua.css            |   40 +
 source3/lua-5.1.4/doc/lua.html           |  172 +
 source3/lua-5.1.4/doc/luac.html          |  145 +
 source3/lua-5.1.4/doc/manual.css         |   12 +
 source3/lua-5.1.4/doc/manual.html        | 8800 ++++++++++++++++++++++++++++++
 source3/lua-5.1.4/doc/readme.html        |   40 +
 source3/lua-5.1.4/etc/Makefile           |   44 +
 source3/lua-5.1.4/etc/README             |   36 +
 source3/lua-5.1.4/etc/all.c              |   38 +
 source3/lua-5.1.4/etc/lua.hpp            |    9 +
 source3/lua-5.1.4/etc/lua.ico            |  Bin 0 -> 1078 bytes
 source3/lua-5.1.4/etc/luavs.bat          |   28 +
 source3/lua-5.1.4/etc/min.c              |   39 +
 source3/lua-5.1.4/etc/noparser.c         |   50 +
 source3/lua-5.1.4/etc/strict.lua         |   40 +
 source3/lua-5.1.4/src/Makefile           |  182 +
 source3/lua-5.1.4/src/lapi.c             | 1086 ++++
 source3/lua-5.1.4/src/lapi.h             |   16 +
 source3/lua-5.1.4/src/lauxlib.c          |  651 +++
 source3/lua-5.1.4/src/lauxlib.h          |  172 +
 source3/lua-5.1.4/src/lbaselib.c         |  652 +++
 source3/lua-5.1.4/src/lcode.c            |  838 +++
 source3/lua-5.1.4/src/lcode.h            |   76 +
 source3/lua-5.1.4/src/ldblib.c           |  396 ++
 source3/lua-5.1.4/src/ldebug.c           |  637 +++
 source3/lua-5.1.4/src/ldebug.h           |   33 +
 source3/lua-5.1.4/src/ldo.c              |  516 ++
 source3/lua-5.1.4/src/ldo.h              |   56 +
 source3/lua-5.1.4/src/ldump.c            |  164 +
 source3/lua-5.1.4/src/lfunc.c            |  173 +
 source3/lua-5.1.4/src/lfunc.h            |   34 +
 source3/lua-5.1.4/src/lgc.c              |  710 +++
 source3/lua-5.1.4/src/lgc.h              |  110 +
 source3/lua-5.1.4/src/linit.c            |   37 +
 source3/lua-5.1.4/src/liolib.c           |  552 ++
 source3/lua-5.1.4/src/llex.c             |  460 ++
 source3/lua-5.1.4/src/llex.h             |   81 +
 source3/lua-5.1.4/src/llimits.h          |  128 +
 source3/lua-5.1.4/src/lmathlib.c         |  262 +
 source3/lua-5.1.4/src/lmem.c             |   85 +
 source3/lua-5.1.4/src/lmem.h             |   48 +
 source3/lua-5.1.4/src/loadlib.c          |  665 +++
 source3/lua-5.1.4/src/lobject.c          |  214 +
 source3/lua-5.1.4/src/lobject.h          |  380 ++
 source3/lua-5.1.4/src/lopcodes.c         |  101 +
 source3/lua-5.1.4/src/lopcodes.h         |  268 +
 source3/lua-5.1.4/src/loslib.c           |  242 +
 source3/lua-5.1.4/src/lparser.c          | 1339 +++++
 source3/lua-5.1.4/src/lparser.h          |   82 +
 source3/lua-5.1.4/src/lstate.c           |  213 +
 source3/lua-5.1.4/src/lstate.h           |  168 +
 source3/lua-5.1.4/src/lstring.c          |  110 +
 source3/lua-5.1.4/src/lstring.h          |   31 +
 source3/lua-5.1.4/src/lstrlib.c          |  868 +++
 source3/lua-5.1.4/src/ltable.c           |  588 ++
 source3/lua-5.1.4/src/ltable.h           |   40 +
 source3/lua-5.1.4/src/ltablib.c          |  286 +
 source3/lua-5.1.4/src/ltm.c              |   74 +
 source3/lua-5.1.4/src/ltm.h              |   54 +
 source3/lua-5.1.4/src/lua.c              |  391 ++
 source3/lua-5.1.4/src/lua.h              |  388 ++
 source3/lua-5.1.4/src/luac.c             |  200 +
 source3/lua-5.1.4/src/luaconf.h          |  762 +++
 source3/lua-5.1.4/src/lualib.h           |   53 +
 source3/lua-5.1.4/src/lundump.c          |  227 +
 source3/lua-5.1.4/src/lundump.h          |   36 +
 source3/lua-5.1.4/src/lvm.c              |  762 +++
 source3/lua-5.1.4/src/lvm.h              |   36 +
 source3/lua-5.1.4/src/lzio.c             |   80 +
 source3/lua-5.1.4/src/lzio.h             |   67 +
 source3/lua-5.1.4/src/print.c            |  227 +
 source3/lua-5.1.4/test/README            |   25 +
 source3/lua-5.1.4/test/bisect.lua        |   27 +
 source3/lua-5.1.4/test/cf.lua            |   16 +
 source3/lua-5.1.4/test/echo.lua          |    5 +
 source3/lua-5.1.4/test/env.lua           |    7 +
 source3/lua-5.1.4/test/factorial.lua     |   32 +
 source3/lua-5.1.4/test/fib.lua           |   40 +
 source3/lua-5.1.4/test/fibfor.lua        |   13 +
 source3/lua-5.1.4/test/globals.lua       |   13 +
 source3/lua-5.1.4/test/hello.lua         |    3 +
 source3/lua-5.1.4/test/life.lua          |  111 +
 source3/lua-5.1.4/test/luac.lua          |    7 +
 source3/lua-5.1.4/test/printf.lua        |    7 +
 source3/lua-5.1.4/test/readonly.lua      |   12 +
 source3/lua-5.1.4/test/sieve.lua         |   29 +
 source3/lua-5.1.4/test/sort.lua          |   66 +
 source3/lua-5.1.4/test/table.lua         |   12 +
 source3/lua-5.1.4/test/trace-calls.lua   |   32 +
 source3/lua-5.1.4/test/trace-globals.lua |   38 +
 source3/lua-5.1.4/test/xd.lua            |   14 +
 source3/utils/net.c                      |    7 +
 source3/utils/net_lua.c                  |  384 ++
 source3/utils/net_proto.h                |    5 +
 106 files changed, 28571 insertions(+), 3 deletions(-)
 create mode 100644 source3/exports/liblua.syms
 create mode 100644 source3/lua-5.1.4/COPYRIGHT
 create mode 100644 source3/lua-5.1.4/HISTORY
 create mode 100644 source3/lua-5.1.4/INSTALL
 create mode 100644 source3/lua-5.1.4/Makefile
 create mode 100644 source3/lua-5.1.4/README
 create mode 100644 source3/lua-5.1.4/doc/amazon.gif
 create mode 100644 source3/lua-5.1.4/doc/contents.html
 create mode 100644 source3/lua-5.1.4/doc/cover.png
 create mode 100644 source3/lua-5.1.4/doc/logo.gif
 create mode 100644 source3/lua-5.1.4/doc/lua.css
 create mode 100644 source3/lua-5.1.4/doc/lua.html
 create mode 100644 source3/lua-5.1.4/doc/luac.html
 create mode 100644 source3/lua-5.1.4/doc/manual.css
 create mode 100644 source3/lua-5.1.4/doc/manual.html
 create mode 100644 source3/lua-5.1.4/doc/readme.html
 create mode 100644 source3/lua-5.1.4/etc/Makefile
 create mode 100644 source3/lua-5.1.4/etc/README
 create mode 100644 source3/lua-5.1.4/etc/all.c
 create mode 100644 source3/lua-5.1.4/etc/lua.hpp
 create mode 100644 source3/lua-5.1.4/etc/lua.ico
 create mode 100644 source3/lua-5.1.4/etc/luavs.bat
 create mode 100644 source3/lua-5.1.4/etc/min.c
 create mode 100644 source3/lua-5.1.4/etc/noparser.c
 create mode 100644 source3/lua-5.1.4/etc/strict.lua
 create mode 100644 source3/lua-5.1.4/src/Makefile
 create mode 100644 source3/lua-5.1.4/src/lapi.c
 create mode 100644 source3/lua-5.1.4/src/lapi.h
 create mode 100644 source3/lua-5.1.4/src/lauxlib.c
 create mode 100644 source3/lua-5.1.4/src/lauxlib.h
 create mode 100644 source3/lua-5.1.4/src/lbaselib.c
 create mode 100644 source3/lua-5.1.4/src/lcode.c
 create mode 100644 source3/lua-5.1.4/src/lcode.h
 create mode 100644 source3/lua-5.1.4/src/ldblib.c
 create mode 100644 source3/lua-5.1.4/src/ldebug.c
 create mode 100644 source3/lua-5.1.4/src/ldebug.h
 create mode 100644 source3/lua-5.1.4/src/ldo.c
 create mode 100644 source3/lua-5.1.4/src/ldo.h
 create mode 100644 source3/lua-5.1.4/src/ldump.c
 create mode 100644 source3/lua-5.1.4/src/lfunc.c
 create mode 100644 source3/lua-5.1.4/src/lfunc.h
 create mode 100644 source3/lua-5.1.4/src/lgc.c
 create mode 100644 source3/lua-5.1.4/src/lgc.h
 create mode 100644 source3/lua-5.1.4/src/linit.c
 create mode 100644 source3/lua-5.1.4/src/liolib.c
 create mode 100644 source3/lua-5.1.4/src/llex.c
 create mode 100644 source3/lua-5.1.4/src/llex.h
 create mode 100644 source3/lua-5.1.4/src/llimits.h
 create mode 100644 source3/lua-5.1.4/src/lmathlib.c
 create mode 100644 source3/lua-5.1.4/src/lmem.c
 create mode 100644 source3/lua-5.1.4/src/lmem.h
 create mode 100644 source3/lua-5.1.4/src/loadlib.c
 create mode 100644 source3/lua-5.1.4/src/lobject.c
 create mode 100644 source3/lua-5.1.4/src/lobject.h
 create mode 100644 source3/lua-5.1.4/src/lopcodes.c
 create mode 100644 source3/lua-5.1.4/src/lopcodes.h
 create mode 100644 source3/lua-5.1.4/src/loslib.c
 create mode 100644 source3/lua-5.1.4/src/lparser.c
 create mode 100644 source3/lua-5.1.4/src/lparser.h
 create mode 100644 source3/lua-5.1.4/src/lstate.c
 create mode 100644 source3/lua-5.1.4/src/lstate.h
 create mode 100644 source3/lua-5.1.4/src/lstring.c
 create mode 100644 source3/lua-5.1.4/src/lstring.h
 create mode 100644 source3/lua-5.1.4/src/lstrlib.c
 create mode 100644 source3/lua-5.1.4/src/ltable.c
 create mode 100644 source3/lua-5.1.4/src/ltable.h
 create mode 100644 source3/lua-5.1.4/src/ltablib.c
 create mode 100644 source3/lua-5.1.4/src/ltm.c
 create mode 100644 source3/lua-5.1.4/src/ltm.h
 create mode 100644 source3/lua-5.1.4/src/lua.c
 create mode 100644 source3/lua-5.1.4/src/lua.h
 create mode 100644 source3/lua-5.1.4/src/luac.c
 create mode 100644 source3/lua-5.1.4/src/luaconf.h
 create mode 100644 source3/lua-5.1.4/src/lualib.h
 create mode 100644 source3/lua-5.1.4/src/lundump.c
 create mode 100644 source3/lua-5.1.4/src/lundump.h
 create mode 100644 source3/lua-5.1.4/src/lvm.c
 create mode 100644 source3/lua-5.1.4/src/lvm.h
 create mode 100644 source3/lua-5.1.4/src/lzio.c
 create mode 100644 source3/lua-5.1.4/src/lzio.h
 create mode 100644 source3/lua-5.1.4/src/print.c
 create mode 100644 source3/lua-5.1.4/test/README
 create mode 100644 source3/lua-5.1.4/test/bisect.lua
 create mode 100644 source3/lua-5.1.4/test/cf.lua
 create mode 100644 source3/lua-5.1.4/test/echo.lua
 create mode 100644 source3/lua-5.1.4/test/env.lua
 create mode 100644 source3/lua-5.1.4/test/factorial.lua
 create mode 100644 source3/lua-5.1.4/test/fib.lua
 create mode 100644 source3/lua-5.1.4/test/fibfor.lua
 create mode 100644 source3/lua-5.1.4/test/globals.lua
 create mode 100644 source3/lua-5.1.4/test/hello.lua
 create mode 100644 source3/lua-5.1.4/test/life.lua
 create mode 100644 source3/lua-5.1.4/test/luac.lua
 create mode 100644 source3/lua-5.1.4/test/printf.lua
 create mode 100644 source3/lua-5.1.4/test/readonly.lua
 create mode 100644 source3/lua-5.1.4/test/sieve.lua
 create mode 100644 source3/lua-5.1.4/test/sort.lua
 create mode 100644 source3/lua-5.1.4/test/table.lua
 create mode 100644 source3/lua-5.1.4/test/trace-calls.lua
 create mode 100644 source3/lua-5.1.4/test/trace-globals.lua
 create mode 100644 source3/lua-5.1.4/test/xd.lua
 create mode 100644 source3/utils/net_lua.c


Changeset truncated at 500 lines:

diff --git a/source3/Makefile.in b/source3/Makefile.in
index 0a2893a..e91bb90 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -75,6 +75,7 @@ POPT_LIBS=@POPTLIBS@
 LIBTALLOC_LIBS=@LIBTALLOC_LIBS@
 LIBTDB_LIBS=@LIBTDB_LIBS@
 LIBNETAPI_LIBS=@LIBNETAPI_LIBS@
+LIBLUA_LIBS=@LIBLUA_LIBS@
 
 INSTALLCMD=@INSTALL@
 INSTALLLIBCMD_SH=@INSTALLLIBCMD_SH@
@@ -891,7 +892,7 @@ NET_OBJ1 = utils/net.o utils/net_ads.o utils/net_help.o \
 	   $(PASSWD_UTIL_OBJ) utils/net_dns.o utils/net_ads_gpo.o \
 	   utils/net_conf.o utils/net_join.o utils/net_user.o \
 	   utils/net_group.o utils/net_file.o utils/net_registry.o \
-	   auth/token_util.o utils/net_dom.o utils/net_share.o
+	   auth/token_util.o utils/net_dom.o utils/net_share.o utils/net_lua.o
 
 # these are not processed by make proto
 NET_OBJ2 = utils/net_registry_util.o utils/net_help_common.o
@@ -1371,12 +1372,12 @@ bin/smbclient at EXEEXT@: $(BINARY_PREREQS) $(CLIENT_OBJ) @BUILD_POPT@ @LIBTALLOC_S
 		$(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) $(DNSSD_LIBS) \
 		$(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(WINBIND_LIBS) $(ZLIB_LIBS)
 
-bin/net at EXEEXT@: $(BINARY_PREREQS) $(NET_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@ @LIBNETAPI_SHARED@
+bin/net at EXEEXT@: $(BINARY_PREREQS) $(NET_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@ @LIBNETAPI_SHARED@ @LIBLUA_SHARED@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(NET_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
 		$(POPT_LIBS) $(KRB5LIBS) $(UUID_LIBS) $(LDAP_LIBS) \
 		$(PASSDB_LIBS) $(TERMLDFLAGS) $(TERMLIBS) $(NSCD_LIBS) \
-		@INIPARSERLIBS@ $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(WINBIND_LIBS) $(LIBNETAPI_LIBS) \
+		@INIPARSERLIBS@ $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(WINBIND_LIBS) $(LIBNETAPI_LIBS)  $(LIBLUA_LIBS) -lm \
 		$(ZLIB_LIBS)
 
 bin/profiles at EXEEXT@: $(BINARY_PREREQS) $(PROFILES_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIBTDB_SHARED@
@@ -2111,6 +2112,82 @@ bin/libbigballofmud. at SHLIBEXT@: $(BINARY_PREREQS) $(LIBBIGBALLOFMUD_OBJ) @LIBTAL
 # it can be fixed or if they just can't be called from a static
 # library.
 
+#-------------------------------------------------------------------
+#
+# libsmblua
+#
+#-------------------------------------------------------------------
+
+LIBLUA_OBJ0 = lua-5.1.4/src/lapi.o lua-5.1.4/src/lauxlib.o \
+	lua-5.1.4/src/lbaselib.o lua-5.1.4/src/lcode.o \
+	lua-5.1.4/src/ldblib.o lua-5.1.4/src/ldebug.o lua-5.1.4/src/ldo.o \
+	lua-5.1.4/src/ldump.o lua-5.1.4/src/lfunc.o lua-5.1.4/src/lgc.o \
+	lua-5.1.4/src/linit.o lua-5.1.4/src/liolib.o lua-5.1.4/src/llex.o \
+	lua-5.1.4/src/lmathlib.o lua-5.1.4/src/lmem.o \
+	lua-5.1.4/src/loadlib.o lua-5.1.4/src/lobject.o \
+	lua-5.1.4/src/lopcodes.o lua-5.1.4/src/loslib.o \
+	lua-5.1.4/src/lparser.o lua-5.1.4/src/lstate.o \
+	lua-5.1.4/src/lstring.o lua-5.1.4/src/lstrlib.o \
+	lua-5.1.4/src/ltable.o lua-5.1.4/src/ltablib.o lua-5.1.4/src/ltm.o \
+	lua-5.1.4/src/lundump.o lua-5.1.4/src/lvm.o \
+	lua-5.1.4/src/lzio.o lua-5.1.4/src/print.o
+
+LIBLUA_OBJ = $(LIBLUA_OBJ0)
+
+LIBLUA_SHARED_TARGET=@LIBLUA_SHARED_TARGET@
+LIBLUA_SOVER=@LIBLUA_SOVER@
+LIBLUA_SHARED_TARGET_SONAME=$(LIBLUA_SHARED_TARGET).$(LIBLUA_SOVER)
+LIBLUA_STATIC_TARGET=@LIBLUA_STATIC_TARGET@
+LIBLUA=$(LIBLUA_STATIC_TARGET) @LIBLUA_SHARED@
+LIBLUA_SYMS=$(srcdir)/exports/liblua. at SYMSEXT@
+LIBLUA_HEADERS=$(srcdir)/lua-5.1.4/src/lua.h
+
+$(LIBLUA_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBLUA_OBJ) $(LIBLUA_SYMS) @LIBTALLOC_SHARED@ @LIBTDB_SHARED@
+	@echo Linking shared library $@
+	@$(SHLD_DSO) $(LIBLUA_OBJ) \
+		$(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) \
+		$(KRB5LIBS) $(LDAP_LIBS) \
+		@SONAMEFLAG@`basename $@`
+
+$(LIBLUA_SHARED_TARGET): $(LIBLUA_SHARED_TARGET_SONAME)
+	@rm -f $@
+	@ln -s -f `basename $(LIBLUA_SHARED_TARGET_SONAME)` $@
+
+$(LIBLUA_STATIC_TARGET): $(BINARY_PREREQS) $(LIBLUA_OBJ0)
+	@echo Linking non-shared library $@
+	@-$(AR) -rc $@ $(LIBLUA_OBJ0)
+
+liblua: $(LIBLUA)
+
+cleanliblua::
+	-rm -f \
+		$(LIBLUA_SHARED_TARGET) \
+		$(LIBLUA_SHARED_TARGET_SONAME) \
+		$(LIBLUA_STATIC_TARGET)
+
+installliblua:: installdirs liblua
+	@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(LIBDIR)
+	-$(INSTALLLIBCMD_SH) $(LIBLUA_SHARED_TARGET_SONAME) $(DESTDIR)$(LIBDIR)
+	@rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_SHARED_TARGET)`
+	-if test -e $(LIBLUA_SHARED_TARGET_SONAME) ; then \
+		ln -s -f `basename $(LIBLUA_SHARED_TARGET_SONAME)` \
+			$(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_SHARED_TARGET)` ; \
+	fi
+	-$(INSTALLLIBCMD_A) $(LIBLUA_STATIC_TARGET) $(DESTDIR)$(LIBDIR)
+	@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) $(DESTDIR) ${prefix}/include
+	-$(INSTALLCMD) -m $(INSTALLPERMS_DATA) $(LIBLUA_HEADERS) $(DESTDIR)${prefix}/include
+
+uninstallliblua::
+	-rm -f $(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_SHARED_TARGET)`
+	-$(UNINSTALLLIBCMD_SH) $(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_SHARED_TARGET_SONAME)`
+	-$(UNINSTALLLIBCMD_A) $(DESTDIR)$(LIBDIR)/`basename $(LIBLUA_STATIC_TARGET)`
+	-rm -f $(DESTDIR)${prefix}/include/smb_share_modes.h
+
+libs:: liblua
+installlibs:: @INSTALL_LIBLUA@
+uninstalllibs:: @UNINSTALL_LIBLUA@
+cleanlibs:: cleanliblua
+shlibs test_shlibs: @LIBLUA_SHARED@
 
 
 #####################################################################
diff --git a/source3/configure.in b/source3/configure.in
index 42bdddf..a876133 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -4860,6 +4860,7 @@ SMB_LIBRARY(tdb, 1)
 SMB_LIBRARY(netapi, 0)
 SMB_LIBRARY(smbclient, 0)
 SMB_LIBRARY(smbsharemodes, 0)
+SMB_LIBRARY(lua, 0)
 SMB_LIBRARY(addns, 0, no, [undefined API])
 
 
diff --git a/source3/exports/liblua.syms b/source3/exports/liblua.syms
new file mode 100644
index 0000000..8f598f1
--- /dev/null
+++ b/source3/exports/liblua.syms
@@ -0,0 +1,5 @@
+{
+	global: *;
+
+	local: *;
+};
diff --git a/source3/lua-5.1.4/COPYRIGHT b/source3/lua-5.1.4/COPYRIGHT
new file mode 100644
index 0000000..3a53e74
--- /dev/null
+++ b/source3/lua-5.1.4/COPYRIGHT
@@ -0,0 +1,34 @@
+Lua License
+-----------
+
+Lua is licensed under the terms of the MIT license reproduced below.
+This means that Lua is free software and can be used for both academic
+and commercial purposes at absolutely no cost.
+
+For details and rationale, see http://www.lua.org/license.html .
+
+===============================================================================
+
+Copyright (C) 1994-2008 Lua.org, PUC-Rio.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+===============================================================================
+
+(end of COPYRIGHT)
diff --git a/source3/lua-5.1.4/HISTORY b/source3/lua-5.1.4/HISTORY
new file mode 100644
index 0000000..ce0c95b
--- /dev/null
+++ b/source3/lua-5.1.4/HISTORY
@@ -0,0 +1,183 @@
+HISTORY for Lua 5.1
+
+* Changes from version 5.0 to 5.1
+  -------------------------------
+  Language:
+  + new module system.
+  + new semantics for control variables of fors.
+  + new semantics for setn/getn.
+  + new syntax/semantics for varargs.
+  + new long strings and comments.
+  + new `mod' operator (`%')
+  + new length operator #t
+  + metatables for all types
+  API:
+  + new functions: lua_createtable, lua_get(set)field, lua_push(to)integer.
+  + user supplies memory allocator (lua_open becomes lua_newstate).
+  + luaopen_* functions must be called through Lua.
+  Implementation:
+  + new configuration scheme via luaconf.h.
+  + incremental garbage collection.
+  + better handling of end-of-line in the lexer.
+  + fully reentrant parser (new Lua function `load')
+  + better support for 64-bit machines.
+  + native loadlib support for Mac OS X.
+  + standard distribution in only one library (lualib.a merged into lua.a)
+
+* Changes from version 4.0 to 5.0
+  -------------------------------
+  Language:
+  + lexical scoping.
+  + Lua coroutines.
+  + standard libraries now packaged in tables.
+  + tags replaced by metatables and tag methods replaced by metamethods,
+    stored in metatables.
+  + proper tail calls.
+  + each function can have its own global table, which can be shared.
+  + new __newindex metamethod, called when we insert a new key into a table.
+  + new block comments: --[[ ... ]].
+  + new generic for.
+  + new weak tables.
+  + new boolean type.
+  + new syntax "local function".
+  + (f()) returns the first value returned by f.
+  + {f()} fills a table with all values returned by f.
+  + \n ignored in [[\n .
+  + fixed and-or priorities.
+  + more general syntax for function definition (e.g. function a.x.y:f()...end).
+  + more general syntax for function calls (e.g. (print or write)(9)).
+  + new functions (time/date, tmpfile, unpack, require, load*, etc.).
+  API:
+  + chunks are loaded by using lua_load; new luaL_loadfile and luaL_loadbuffer.
+  + introduced lightweight userdata, a simple "void*" without a metatable.
+  + new error handling protocol: the core no longer prints error messages;
+    all errors are reported to the caller on the stack.
+  + new lua_atpanic for host cleanup.
+  + new, signal-safe, hook scheme.
+  Implementation:
+  + new license: MIT.
+  + new, faster, register-based virtual machine.
+  + support for external multithreading and coroutines.
+  + new and consistent error message format.
+  + the core no longer needs "stdio.h" for anything (except for a single
+    use of sprintf to convert numbers to strings).
+  + lua.c now runs the environment variable LUA_INIT, if present. It can
+    be "@filename", to run a file, or the chunk itself.
+  + support for user extensions in lua.c.
+    sample implementation given for command line editing.
+  + new dynamic loading library, active by default on several platforms.
+  + safe garbage-collector metamethods.
+  + precompiled bytecodes checked for integrity (secure binary dostring).
+  + strings are fully aligned.
+  + position capture in string.find.
+  + read('*l') can read lines with embedded zeros.
+
+* Changes from version 3.2 to 4.0
+  -------------------------------
+  Language:
+  + new "break" and "for" statements (both numerical and for tables).
+  + uniform treatment of globals: globals are now stored in a Lua table.
+  + improved error messages.
+  + no more '$debug': full speed *and* full debug information.
+  + new read form: read(N) for next N bytes.
+  + general read patterns now deprecated.
+    (still available with -DCOMPAT_READPATTERNS.)
+  + all return values are passed as arguments for the last function
+    (old semantics still available with -DLUA_COMPAT_ARGRET)
+  + garbage collection tag methods for tables now deprecated.
+  + there is now only one tag method for order.
+  API:
+  + New API: fully re-entrant, simpler, and more efficient.
+  + New debug API.
+  Implementation:
+  + faster than ever: cleaner virtual machine and new hashing algorithm.
+  + non-recursive garbage-collector algorithm.
+  + reduced memory usage for programs with many strings.
+  + improved treatment for memory allocation errors.
+  + improved support for 16-bit machines (we hope).
+  + code now compiles unmodified as both ANSI C and C++.
+  + numbers in bases other than 10 are converted using strtoul.
+  + new -f option in Lua to support #! scripts.
+  + luac can now combine text and binaries.
+
+* Changes from version 3.1 to 3.2
+  -------------------------------
+  + redirected all output in Lua's core to _ERRORMESSAGE and _ALERT.
+  + increased limit on the number of constants and globals per function
+    (from 2^16 to 2^24).
+  + debugging info (lua_debug and hooks) moved into lua_state and new API
+    functions provided to get and set this info.
+  + new debug lib gives full debugging access within Lua.
+  + new table functions "foreachi", "sort", "tinsert", "tremove", "getn".
+  + new io functions "flush", "seek".
+
+* Changes from version 3.0 to 3.1
+  -------------------------------
+  + NEW FEATURE: anonymous functions with closures (via "upvalues").
+  + new syntax:
+    - local variables in chunks.
+    - better scope control with DO block END.
+    - constructors can now be also written: { record-part; list-part }.
+    - more general syntax for function calls and lvalues, e.g.:
+      f(x).y=1
+      o:f(x,y):g(z)
+      f"string" is sugar for f("string")
+  + strings may now contain arbitrary binary data (e.g., embedded zeros).
+  + major code re-organization and clean-up; reduced module interdependecies.
+  + no arbitrary limits on the total number of constants and globals.
+  + support for multiple global contexts.
+  + better syntax error messages.
+  + new traversal functions "foreach" and "foreachvar".
+  + the default for numbers is now double.
+    changing it to use floats or longs is easy.
+  + complete debug information stored in pre-compiled chunks.
+  + sample interpreter now prompts user when run interactively, and also
+    handles control-C interruptions gracefully.
+
+* Changes from version 2.5 to 3.0
+  -------------------------------
+  + NEW CONCEPT: "tag methods".
+    Tag methods replace fallbacks as the meta-mechanism for extending the
+    semantics of Lua. Whereas fallbacks had a global nature, tag methods
+    work on objects having the same tag (e.g., groups of tables).
+    Existing code that uses fallbacks should work without change.
+  + new, general syntax for constructors {[exp] = exp, ... }.
+  + support for handling variable number of arguments in functions (varargs).
+  + support for conditional compilation ($if ... $else ... $end).
+  + cleaner semantics in API simplifies host code.
+  + better support for writing libraries (auxlib.h).
+  + better type checking and error messages in the standard library.
+  + luac can now also undump.
+
+* Changes from version 2.4 to 2.5
+  -------------------------------
+  + io and string libraries are now based on pattern matching;
+    the old libraries are still available for compatibility
+  + dofile and dostring can now return values (via return statement)
+  + better support for 16- and 64-bit machines
+  + expanded documentation, with more examples
+
+* Changes from version 2.2 to 2.4
+  -------------------------------
+  + external compiler creates portable binary files that can be loaded faster
+  + interface for debugging and profiling
+  + new "getglobal" fallback
+  + new functions for handling references to Lua objects
+  + new functions in standard lib
+  + only one copy of each string is stored
+  + expanded documentation, with more examples
+
+* Changes from version 2.1 to 2.2
+  -------------------------------
+  + functions now may be declared with any "lvalue" as a name
+  + garbage collection of functions
+  + support for pipes
+
+* Changes from version 1.1 to 2.1
+  -------------------------------
+  + object-oriented support
+  + fallbacks
+  + simplified syntax for tables
+  + many internal improvements
+
+(end of HISTORY)
diff --git a/source3/lua-5.1.4/INSTALL b/source3/lua-5.1.4/INSTALL
new file mode 100644
index 0000000..17eb8ae
--- /dev/null
+++ b/source3/lua-5.1.4/INSTALL
@@ -0,0 +1,99 @@
+INSTALL for Lua 5.1
+
+* Building Lua
+  ------------
+  Lua is built in the src directory, but the build process can be
+  controlled from the top-level Makefile.
+
+  Building Lua on Unix systems should be very easy. First do "make" and
+  see if your platform is listed. If so, just do "make xxx", where xxx
+  is your platform name. The platforms currently supported are:
+    aix ansi bsd freebsd generic linux macosx mingw posix solaris
+
+  If your platform is not listed, try the closest one or posix, generic,
+  ansi, in this order.
+
+  See below for customization instructions and for instructions on how
+  to build with other Windows compilers.
+
+  If you want to check that Lua has been built correctly, do "make test"
+  after building Lua. Also, have a look at the example programs in test.
+
+* Installing Lua
+  --------------
+  Once you have built Lua, you may want to install it in an official
+  place in your system. In this case, do "make install". The official
+  place and the way to install files are defined in Makefile. You must
+  have the right permissions to install files.
+
+  If you want to build and install Lua in one step, do "make xxx install",
+  where xxx is your platform name.
+
+  If you want to install Lua locally, then do "make local". This will
+  create directories bin, include, lib, man, and install Lua there as
+  follows:
+
+    bin:	lua luac
+    include:	lua.h luaconf.h lualib.h lauxlib.h lua.hpp
+    lib:	liblua.a
+    man/man1:	lua.1 luac.1
+
+  These are the only directories you need for development.
+
+  There are man pages for lua and luac, in both nroff and html, and a
+  reference manual in html in doc, some sample code in test, and some
+  useful stuff in etc. You don't need these directories for development.
+
+  If you want to install Lua locally, but in some other directory, do
+  "make install INSTALL_TOP=xxx", where xxx is your chosen directory.
+
+  See below for instructions for Windows and other systems.
+
+* Customization
+  -------------
+  Three things can be customized by editing a file:
+    - Where and how to install Lua -- edit Makefile.
+    - How to build Lua -- edit src/Makefile.
+    - Lua features -- edit src/luaconf.h.
+
+  You don't actually need to edit the Makefiles because you may set the
+  relevant variables when invoking make.
+
+  On the other hand, if you need to select some Lua features, you'll need
+  to edit src/luaconf.h. The edited file will be the one installed, and
+  it will be used by any Lua clients that you build, to ensure consistency.
+
+  We strongly recommend that you enable dynamic loading. This is done
+  automatically for all platforms listed above that have this feature
+  (and also Windows). See src/luaconf.h and also src/Makefile.
+
+* Building Lua on Windows and other systems
+  -----------------------------------------
+  If you're not using the usual Unix tools, then the instructions for
+  building Lua depend on the compiler you use. You'll need to create
+  projects (or whatever your compiler uses) for building the library,
+  the interpreter, and the compiler, as follows:
+
+  library:	lapi.c lcode.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c
+		lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c
+		ltable.c ltm.c lundump.c lvm.c lzio.c
+		lauxlib.c lbaselib.c ldblib.c liolib.c lmathlib.c loslib.c
+		ltablib.c lstrlib.c loadlib.c linit.c
+
+  interpreter:	library, lua.c
+
+  compiler:	library, luac.c print.c
+
+  If you use Visual Studio .NET, you can use etc/luavs.bat in its
+  "Command Prompt".
+
+  If all you want is to build the Lua interpreter, you may put all .c files
+  in a single project, except for luac.c and print.c. Or just use etc/all.c.
+
+  To use Lua as a library in your own programs, you'll need to know how to
+  create and use libraries with your compiler.
+
+  As mentioned above, you may edit luaconf.h to select some features before
+  building Lua.
+
+(end of INSTALL)
diff --git a/source3/lua-5.1.4/Makefile b/source3/lua-5.1.4/Makefile
new file mode 100644
index 0000000..6e78f66
--- /dev/null
+++ b/source3/lua-5.1.4/Makefile
@@ -0,0 +1,128 @@
+# makefile for installing Lua
+# see INSTALL for installation instructions
+# see src/Makefile and src/luaconf.h for further customization
+
+# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT =======================
+
+# Your platform. See PLATS for possible values.
+PLAT= none
+
+# Where to install. The installation starts in the src and doc directories,
+# so take care if INSTALL_TOP is not an absolute path.
+INSTALL_TOP= /usr/local
+INSTALL_BIN= $(INSTALL_TOP)/bin
+INSTALL_INC= $(INSTALL_TOP)/include
+INSTALL_LIB= $(INSTALL_TOP)/lib
+INSTALL_MAN= $(INSTALL_TOP)/man/man1
+#
+# You probably want to make INSTALL_LMOD and INSTALL_CMOD consistent with


-- 
Samba Shared Repository


More information about the samba-cvs mailing list