Rev 12001: Revive tim's swig code. in file:///home/jelmer/bzr.samba/python/

Jelmer Vernooij jelmer at samba.org
Tue Apr 24 15:41:59 GMT 2007


At file:///home/jelmer/bzr.samba/python/

------------------------------------------------------------
revno: 12001
revision-id: jelmer at samba.org-20070424154133-u0ap6lyl1de8la2m
parent: jelmer at samba.org-20070424134531-39e76umhgztflk5b
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: python
timestamp: Tue 2007-04-24 17:41:33 +0200
message:
  Revive tim's swig code.
removed:
  source/libcli/config.m4        svn-v2:15395 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2flibcli%2fconfig.m4
  source/scripting/swig/config.m4 svn-v2:14906 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2fscripting%2fswig%2fconfig.m4
modified:
  .bzrignore                     svn-v2:17811 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-.bzrignore
  source/build/smb_build/config_mk.pm svn-v2:3690 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2fbuild%2fsmb_build%2fconfig_mk.pm
  source/build/smb_build/input.pm svn-v2:3690 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2fbuild%2fsmb_build%2finput.pm
  source/build/smb_build/main.pl svn-v2:8826 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2fbuild%2fsmb_build%2fmain.pl
  source/configure.ac            svn-v2:15565 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2fconfigure.ac
  source/lib/ldb/config.mk       svn-v2:665 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2flib%2fldb%2fconfig.mk
  source/lib/ldb/libldb.m4       svn-v2:18109 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2flib%2fldb%2flibldb.m4
  source/lib/ldb/swig/ldb.i      svn-v2:14968 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2flib%2fldb%2fswig%2fldb.i
  source/lib/python/config.m4    configure.in-20070423105804-3mrp9flhlt8pjj8v-11
  source/lib/tdb/config.mk       svn-v2:728 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2flib%2ftdb%2fconfig.mk
  source/libcli/config.mk        svn-v2:1436 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2flibcli%2fconfig.mk
  source/scripting/swig/config.mk svn-v2:14906 at 0c0555d6-39d7-0310-84fc-f1cc0bd64818-branches%2fSAMBA_4_0-source%2fscripting%2fswig%2fconfig.mk
=== removed file 'source/libcli/config.m4'
--- a/source/libcli/config.m4	2007-04-24 10:52:53 +0000
+++ b/source/libcli/config.m4	1970-01-01 00:00:00 +0000
@@ -1,3 +0,0 @@
-AC_MSG_CHECKING([for Python (libcli_nbt)])
-
-SMB_ENABLE(swig_libcli_nbt, NO)

=== removed file 'source/scripting/swig/config.m4'
--- a/source/scripting/swig/config.m4	2007-04-24 10:52:53 +0000
+++ b/source/scripting/swig/config.m4	1970-01-01 00:00:00 +0000
@@ -1,6 +0,0 @@
-dnl # Scripting subsystem
-
-# Check for python support
-
-SMB_ENABLE(swig_dcerpc, NO)
-

=== modified file '.bzrignore'
--- a/.bzrignore	2007-04-23 17:05:15 +0000
+++ b/.bzrignore	2007-04-24 15:41:33 +0000
@@ -176,3 +176,5 @@
 source/lib/python/Modules/Setup.local
 source/lib/python/Modules/Setup
 source/lib/python/Modules/Setup.config
+lib/ldb/swig/ldb.py
+source/lib/ldb/swig/ldb.py

=== modified file 'source/build/smb_build/config_mk.pm'
--- a/source/build/smb_build/config_mk.pm	2007-04-22 10:37:51 +0000
+++ b/source/build/smb_build/config_mk.pm	2007-04-24 15:41:33 +0000
@@ -19,6 +19,12 @@
 		"CPPFLAGS"		=> "list",
 		"LDFLAGS"		=> "list",
 		},
+	"SWIG" => {
+		SWIG_FILE => "string",
+		"PRIVATE_DEPENDENCIES"	=> "list",
+		"PUBLIC_DEPENDENCIES"	=> "list",
+		"ENABLE"		=> "bool",
+	},
 	"SUBSYSTEM" => {
 		"OBJ_FILES"		=> "list",
 

=== modified file 'source/build/smb_build/input.pm'
--- a/source/build/smb_build/input.pm	2007-04-22 11:40:11 +0000
+++ b/source/build/smb_build/input.pm	2007-04-24 15:41:33 +0000
@@ -8,6 +8,7 @@
 use smb_build::config;
 use strict;
 package smb_build::input;
+use File::Basename;
 
 my $srcdir = $config::config{srcdir};
 
@@ -130,6 +131,22 @@
 	add_libreplace($lib);
 }
 
+sub check_swig($$)
+{
+	my ($INPUT, $swig) = @_;
+
+	return if ($swig->{ENABLE} ne "YES");
+	
+	my $dirname = dirname($swig->{SWIG_FILE});
+	my $basename = basename($swig->{SWIG_FILE}, ".i");
+
+	$swig->{OUTPUT_TYPE} = ["SHARED_LIBRARY"];
+	$swig->{LIBRARY_REALNAME} = "$dirname/_$basename.\$(SHLIBEXT)";
+	$swig->{OBJ_FILES} = ["$dirname/$basename\_wrap\.o"];
+
+	check_library($INPUT, $swig, ["SHARED_LIBRARY"]);
+}
+
 sub check_binary($$)
 {
 	my ($INPUT, $bin) = @_;
@@ -230,10 +247,20 @@
 		$part->{LINK_FLAGS} = [];
 		$part->{FULL_OBJ_LIST} = ["\$($part->{TYPE}_$part->{NAME}_OBJ_LIST)"];
 
-		check_subsystem($INPUT, $part, $subsys_ot) if ($part->{TYPE} eq "SUBSYSTEM");
-		check_module($INPUT, $part, $module_ot) if ($part->{TYPE} eq "MODULE");
-		check_library($INPUT, $part, $lib_ot) if ($part->{TYPE} eq "LIBRARY");
-		check_binary($INPUT, $part) if ($part->{TYPE} eq "BINARY");
+		if ($part->{TYPE} eq "SUBSYSTEM") { 
+			check_subsystem($INPUT, $part, $subsys_ot);
+		} elsif ($part->{TYPE} eq "MODULE") {
+			check_module($INPUT, $part, $module_ot);
+		} elsif ($part->{TYPE} eq "LIBRARY") {
+			check_library($INPUT, $part, $lib_ot);
+		} elsif ($part->{TYPE} eq "BINARY") {
+			check_binary($INPUT, $part);
+		} elsif ($part->{TYPE} eq "SWIG") {
+			check_swig($INPUT, $part);
+		} elsif ($part->{TYPE} eq "EXT_LIB") {
+		} else {
+			die("Unknown type $part->{TYPE}");
+		}
 	}
 
 	foreach my $part (values %$INPUT) {

=== modified file 'source/build/smb_build/main.pl'
--- a/source/build/smb_build/main.pl	2007-04-02 17:11:36 +0000
+++ b/source/build/smb_build/main.pl	2007-04-24 15:41:33 +0000
@@ -74,7 +74,6 @@
 cflags::create_cflags($OUTPUT, $config::config{srcdir},
 		    $config::config{builddir}, "extra_cflags.txt");
 
-
 summary::show($OUTPUT, \%config::config);
 
 1;

=== modified file 'source/configure.ac'
--- a/source/configure.ac	2007-04-23 11:41:38 +0000
+++ b/source/configure.ac	2007-04-24 15:41:33 +0000
@@ -37,7 +37,6 @@
 m4_include(lib/python/config.m4)
 m4_include(auth/gensec/config.m4)
 m4_include(smbd/process_model.m4)
-m4_include(scripting/swig/config.m4)
 m4_include(ntvfs/posix/config.m4)
 m4_include(ntvfs/unixuid/config.m4)
 m4_include(lib/socket_wrapper/config.m4)
@@ -46,7 +45,6 @@
 m4_include(ntvfs/sysdep/config.m4)
 m4_include(lib/appweb/config.m4)
 m4_include(nsswitch/config.m4)
-m4_include(libcli/config.m4)
 
 #################################################
 # add *_CFLAGS only for the real build

=== modified file 'source/lib/ldb/config.mk'
--- a/source/lib/ldb/config.mk	2007-04-20 11:00:20 +0000
+++ b/source/lib/ldb/config.mk	2007-04-24 15:41:33 +0000
@@ -304,9 +304,9 @@
 
 #######################
 # Start LIBRARY swig_ldb
-[LIBRARY::swig_ldb]
-PUBLIC_DEPENDENCIES = ldb DYNCONFIG
-LIBRARY_REALNAME = swig/_ldb.$(SHLIBEXT)
-OBJ_FILES = swig/ldb_wrap.o
+[SWIG::swig_ldb]
+PUBLIC_DEPENDENCIES = ldb DYNCONFIG LIBPYTHON 
+PRIVATE_DEPENDENCIES = gensec
+SWIG_FILE = swig/ldb.i
 # End LIBRARY swig_ldb
 #######################

=== modified file 'source/lib/ldb/libldb.m4'
--- a/source/lib/ldb/libldb.m4	2007-04-24 10:52:53 +0000
+++ b/source/lib/ldb/libldb.m4	2007-04-24 15:41:33 +0000
@@ -5,5 +5,3 @@
 if test x"$with_sqlite3_support" = x"yes"; then
 	SMB_ENABLE(ldb_sqlite3, YES)
 fi
-
-SMB_ENABLE(swig_ldb, NO)

=== modified file 'source/lib/ldb/swig/ldb.i'
--- a/source/lib/ldb/swig/ldb.i	2006-05-02 05:14:00 +0000
+++ b/source/lib/ldb/swig/ldb.i	2007-04-24 15:41:33 +0000
@@ -31,14 +31,12 @@
 
 /* Some typedefs to help swig along */
 
-typedef unsigned char uint8_t;
-typedef unsigned long long uint64_t;
-typedef long long int64_t;
-
 /* Include headers */
 
+#include <stdint.h>
+#include <stdbool.h>
+#include "lib/talloc/talloc.h"
 #include "lib/ldb/include/ldb.h"
-#include "lib/talloc/talloc.h"
 
 %}
 
@@ -179,7 +177,6 @@
 	struct ldb_dn *dn;
 	unsigned int num_elements;
 	struct ldb_message_element *elements;
-	void *private_data;
 };
 
 /*
@@ -227,14 +224,8 @@
 
 struct ldb_message_element *ldb_msg_find_element(const struct ldb_message *msg, const char *attr_name);
 
-int ldb_msg_add_value(struct ldb_message *msg, const char *attr_name, const struct ldb_val *INPUT);
+int ldb_msg_add_value(struct ldb_message *msg, const char *attr_name, const struct ldb_val *INPUT, struct ldb_message_element **return_el);
 
 void ldb_msg_remove_attr(struct ldb_message *msg, const char *attr);
 
-int ldb_msg_sanity_check(struct ldb_message *msg);
-
-/* DN operations */
-
-struct ldb_dn *ldb_dn_explode(void *mem_ctx, const char *dn);
-
-char *ldb_dn_linearize(void *mem_ctx, const struct ldb_dn *dn);
+int ldb_msg_sanity_check(struct ldb_context *ctx, const struct ldb_message *msg);

=== modified file 'source/lib/python/config.m4'
--- a/source/lib/python/config.m4	2007-04-24 10:52:53 +0000
+++ b/source/lib/python/config.m4	2007-04-24 15:41:33 +0000
@@ -1519,7 +1519,7 @@
 fi
 
 AC_DEFINE_UNQUOTED(PLATFORM, $MACHDEP, [Platforms])
-SMB_SUBSYSTEM(LIBPYTHON, [], [INTERNAL_PYTHON])
+SMB_SUBSYSTEM(LIBPYTHON, [], [INTERNAL_PYTHON], [-Ilib/python/Include -Ilib/python])
 SMB_ENABLE(python)
 SMB_ENABLE(pgen)
 PYTHON="$builddir/bin/python"

=== modified file 'source/lib/tdb/config.mk'
--- a/source/lib/tdb/config.mk	2007-04-17 17:24:02 +0000
+++ b/source/lib/tdb/config.mk	2007-04-24 15:41:33 +0000
@@ -60,9 +60,8 @@
 
 #######################
 # Start LIBRARY swig_tdb
-[LIBRARY::swig_tdb]
-LIBRARY_REALNAME = swig/_tdb.$(SHLIBEXT)
-OBJ_FILES = swig/tdb_wrap.o
+[SWIG::swig_tdb]
+SWIG_FILE = swig/tdb.i
 PUBLIC_DEPENDENCIES = LIBTDB DYNCONFIG
 # End LIBRARY swig_tdb
 #######################

=== modified file 'source/libcli/config.mk'
--- a/source/libcli/config.mk	2006-11-12 02:49:05 +0000
+++ b/source/libcli/config.mk	2007-04-24 15:41:33 +0000
@@ -56,9 +56,8 @@
 PUBLIC_DEPENDENCIES = LIBNDR NDR_NBT LIBCLI_COMPOSITE LIBEVENTS \
 	NDR_SECURITY samba-socket LIBSAMBA-UTIL
 
-[LIBRARY::swig_libcli_nbt]
-LIBRARY_REALNAME = swig/_libcli_nbt.$(SHLIBEXT)
-OBJ_FILES = swig/libcli_nbt_wrap.o
+[SWIG::swig_libcli_nbt]
+SWIG_FILE = swig/libcli_nbt.i
 PUBLIC_DEPENDENCIES = LIBCLI_NBT DYNCONFIG LIBSAMBA-CONFIG
 
 [SUBSYSTEM::LIBCLI_DGRAM]

=== modified file 'source/scripting/swig/config.mk'
--- a/source/scripting/swig/config.mk	2007-02-26 16:18:23 +0000
+++ b/source/scripting/swig/config.mk	2007-04-24 15:41:33 +0000
@@ -1,9 +1,8 @@
 #######################
 # Start LIBRARY swig_dcerpc
-[LIBRARY::swig_dcerpc]
-LIBRARY_REALNAME = _dcerpc.$(SHLIBEXT)
+[SWIG::swig_dcerpc]
+SWIG_FILE = dcerpc.i
 PUBLIC_DEPENDENCIES = LIBCLI_SMB NDR_MISC LIBSAMBA-UTIL LIBSAMBA-CONFIG dcerpc_samr RPC_NDR_LSA DYNCONFIG
-OBJ_FILES = dcerpc_wrap.o
 # End LIBRARY swig_dcerpc
 #######################
 



More information about the samba-cvs mailing list