[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