svn commit: samba r26700 - in branches/SAMBA_4_0: . source/lib/tdb

jelmer at samba.org jelmer at samba.org
Thu Jan 10 15:17:27 GMT 2008


Author: jelmer
Date: 2008-01-10 15:17:26 +0000 (Thu, 10 Jan 2008)
New Revision: 26700

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=26700

Log:
tdb: Build and install Python bindings when possible.

Modified:
   branches/SAMBA_4_0/
   branches/SAMBA_4_0/source/lib/tdb/Makefile.in
   branches/SAMBA_4_0/source/lib/tdb/configure.ac
   branches/SAMBA_4_0/source/lib/tdb/tdb.py
   branches/SAMBA_4_0/source/lib/tdb/tdb_wrap.c


Changeset:

Property changes on: branches/SAMBA_4_0
___________________________________________________________________
Name: bzr:revision-info
...skipped...
Name: bzr:revision-id:v3-trunk0
...skipped...

Modified: branches/SAMBA_4_0/source/lib/tdb/Makefile.in
===================================================================
--- branches/SAMBA_4_0/source/lib/tdb/Makefile.in	2008-01-09 11:28:53 UTC (rev 26699)
+++ branches/SAMBA_4_0/source/lib/tdb/Makefile.in	2008-01-10 15:17:26 UTC (rev 26700)
@@ -36,7 +36,7 @@
 SONAME = libtdb.$(SHLIBEXT).1
 SOLIB = libtdb.$(SHLIBEXT).$(PACKAGE_VERSION)
 
-all: showflags dirs $(PROGS) $(SOLIB) libtdb.a
+all: showflags dirs $(PROGS) $(SOLIB) libtdb.a @PYTHON_BUILD_TARGET@
 
 showflags:
 	@echo 'tdb will be compiled with flags:'
@@ -55,13 +55,21 @@
 dirs:
 	@mkdir -p $(DIRS)
 
-install: all
+install: all installdirs installbin installheaders installlibs @PYTHON_INSTALL_TARGET@
+
+installdirs:
 	mkdir -p $(DESTDIR)$(bindir)
 	mkdir -p $(DESTDIR)$(includedir)
 	mkdir -p $(DESTDIR)$(libdir) 
 	mkdir -p $(DESTDIR)$(libdir)/pkgconfig
+
+installbin: installdirs
 	cp $(PROGS) $(DESTDIR)$(bindir)
+
+installheaders: installdirs
 	cp $(srcdir)/include/tdb.h $(DESTDIR)$(includedir)
+
+installlibs: installdirs
 	cp tdb.pc $(DESTDIR)$(libdir)/pkgconfig
 	cp libtdb.a $(SOLIB) $(DESTDIR)$(libdir)
 
@@ -112,14 +120,16 @@
 realdistclean: distclean
 	rm -f configure include/config.h.in
 
-tdb_wrap.c tdb.py: tdb.i
-	$(SWIG) -O -Wall -python -keyword tdb.i
+.SUFFIXES: .i _wrap.c
 
-build-python: libtdb.$(SHLIBEXT) tdb_wrap.c tdb.py
+.i_wrap.c: 
+	$(SWIG) -O -Wall -python -keyword $<
+
+build-python: libtdb.$(SHLIBEXT) tdb_wrap.c
 	./setup.py build
 
-install-python:
-	./setup.py install --prefix=$(prefix)
+installpython: build-python
+	./setup.py install --prefix=$(DESTDIR)$(prefix)
 
 check-python: build-python
 	# FIXME: Should be more portable:

Modified: branches/SAMBA_4_0/source/lib/tdb/configure.ac
===================================================================
--- branches/SAMBA_4_0/source/lib/tdb/configure.ac	2008-01-09 11:28:53 UTC (rev 26699)
+++ branches/SAMBA_4_0/source/lib/tdb/configure.ac	2008-01-10 15:17:26 UTC (rev 26700)
@@ -12,4 +12,14 @@
 AC_LIBREPLACE_SHLD
 AC_LIBREPLACE_SHLD_FLAGS
 m4_include(libtdb.m4)
+AC_PATH_PROGS([PYTHON_CONFIG], [python2.6-config python2.5-config python2.4-config python-config])
+
+PYTHON_BUILD_TARGET="build-python"
+PYTHON_INSTALL_TARGET="install-python"
+AC_SUBST(PYTHON_BUILD_TARGET)
+AC_SUBST(PYTHON_INSTALL_TARGET)
+if test -z "$PYTHON_CONFIG"; then
+	PYTHON_BUILD_TARGET=""
+	PYTHON_INSTALL_TARGET=""
+fi
 AC_OUTPUT(Makefile tdb.pc)

Modified: branches/SAMBA_4_0/source/lib/tdb/tdb.py
===================================================================
--- branches/SAMBA_4_0/source/lib/tdb/tdb.py	2008-01-09 11:28:53 UTC (rev 26699)
+++ branches/SAMBA_4_0/source/lib/tdb/tdb.py	2008-01-10 15:17:26 UTC (rev 26700)
@@ -1,5 +1,5 @@
 # This file was automatically generated by SWIG (http://www.swig.org).
-# Version 1.3.31
+# Version 1.3.33
 #
 # Don't modify this file, modify the SWIG interface instead.
 

Modified: branches/SAMBA_4_0/source/lib/tdb/tdb_wrap.c
===================================================================
--- branches/SAMBA_4_0/source/lib/tdb/tdb_wrap.c	2008-01-09 11:28:53 UTC (rev 26699)
+++ branches/SAMBA_4_0/source/lib/tdb/tdb_wrap.c	2008-01-10 15:17:26 UTC (rev 26700)
@@ -1,6 +1,6 @@
 /* ----------------------------------------------------------------------------
  * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 1.3.31
+ * Version 1.3.33
  * 
  * This file is not intended to be easily readable and contains a number of 
  * coding conventions designed to improve portability and efficiency. Do not make
@@ -17,14 +17,14 @@
 
 /* template workaround for compilers that cannot correctly implement the C++ standard */
 #ifndef SWIGTEMPLATEDISAMBIGUATOR
-# if defined(__SUNPRO_CC)
-#   if (__SUNPRO_CC <= 0x560)
-#     define SWIGTEMPLATEDISAMBIGUATOR template
-#   else
-#     define SWIGTEMPLATEDISAMBIGUATOR 
-#   endif
+# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
+#  define SWIGTEMPLATEDISAMBIGUATOR template
+# elif defined(__HP_aCC)
+/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
+/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
+#  define SWIGTEMPLATEDISAMBIGUATOR template
 # else
-#   define SWIGTEMPLATEDISAMBIGUATOR 
+#  define SWIGTEMPLATEDISAMBIGUATOR
 # endif
 #endif
 
@@ -107,7 +107,13 @@
 # define _CRT_SECURE_NO_DEPRECATE
 #endif
 
+/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
+#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
+# define _SCL_SECURE_NO_DEPRECATE
+#endif
 
+
+
 /* Python.h has to appear first */
 #include <Python.h>
 
@@ -343,7 +349,7 @@
     while ((*f2 == ' ') && (f2 != l2)) ++f2;
     if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
   }
-  return (l1 - f1) - (l2 - f2);
+  return (int)((l1 - f1) - (l2 - f2));
 }
 
 /*
@@ -1090,14 +1096,14 @@
 /* Unpack the argument tuple */
 
 SWIGINTERN int
-SWIG_Python_UnpackTuple(PyObject *args, const char *name, int min, int max, PyObject **objs)
+SWIG_Python_UnpackTuple(PyObject *args, const char *name, Py_ssize_t min, Py_ssize_t max, PyObject **objs)
 {
   if (!args) {
     if (!min && !max) {
       return 1;
     } else {
       PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got none", 
-		   name, (min == max ? "" : "at least "), min);
+		   name, (min == max ? "" : "at least "), (int)min);
       return 0;
     }
   }  
@@ -1105,14 +1111,14 @@
     PyErr_SetString(PyExc_SystemError, "UnpackTuple() argument list is not a tuple");
     return 0;
   } else {
-    register int l = PyTuple_GET_SIZE(args);
+    register Py_ssize_t l = PyTuple_GET_SIZE(args);
     if (l < min) {
       PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d", 
-		   name, (min == max ? "" : "at least "), min, l);
+		   name, (min == max ? "" : "at least "), (int)min, (int)l);
       return 0;
     } else if (l > max) {
       PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d", 
-		   name, (min == max ? "" : "at most "), max, l);
+		   name, (min == max ? "" : "at most "), (int)max, (int)l);
       return 0;
     } else {
       register int i;
@@ -1591,9 +1597,11 @@
     (unaryfunc)0,                 /*nb_float*/
     (unaryfunc)PySwigObject_oct,  /*nb_oct*/
     (unaryfunc)PySwigObject_hex,  /*nb_hex*/
-#if PY_VERSION_HEX >= 0x02020000
-    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */ 
-#elif PY_VERSION_HEX >= 0x02000000
+#if PY_VERSION_HEX >= 0x02050000 /* 2.5.0 */
+    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_index */
+#elif PY_VERSION_HEX >= 0x02020000 /* 2.2.0 */
+    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */
+#elif PY_VERSION_HEX >= 0x02000000 /* 2.0.0 */
     0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_or */
 #endif
   };
@@ -2492,7 +2500,7 @@
 
 #define SWIG_name    "_tdb"
 
-#define SWIGVERSION 0x010331 
+#define SWIGVERSION 0x010333 
 #define SWIG_VERSION SWIGVERSION
 
 
@@ -2596,15 +2604,13 @@
 
 
 #include <limits.h>
-#ifndef LLONG_MIN
-# define LLONG_MIN	LONG_LONG_MIN
+#if !defined(SWIG_NO_LLONG_MAX)
+# if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
+#   define LLONG_MAX __LONG_LONG_MAX__
+#   define LLONG_MIN (-LLONG_MAX - 1LL)
+#   define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
+# endif
 #endif
-#ifndef LLONG_MAX
-# define LLONG_MAX	LONG_LONG_MAX
-#endif
-#ifndef ULLONG_MAX
-# define ULLONG_MAX	ULONG_LONG_MAX
-#endif
 
 
 SWIGINTERN int
@@ -3631,15 +3637,15 @@
 
 static swig_type_info _swigt__p_TDB_DATA = {"_p_TDB_DATA", "TDB_DATA *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_int = {"_p_int", "int *|mode_t *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_long_long = {"_p_long_long", "long long *|intmax_t *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_short = {"_p_short", "short *|int_least16_t *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_signed_char = {"_p_signed_char", "signed char *|int_fast8_t *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_int = {"_p_int", "intptr_t *|int *|int_least32_t *|int_fast32_t *|int32_t *|int_fast16_t *|mode_t *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_long_long = {"_p_long_long", "int_least64_t *|int_fast64_t *|int64_t *|long long *|intmax_t *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_short = {"_p_short", "short *|int_least16_t *|int16_t *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_signed_char = {"_p_signed_char", "signed char *|int_least8_t *|int_fast8_t *|int8_t *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_tdb_context = {"_p_tdb_context", "struct tdb_context *|tdb *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_unsigned_char = {"_p_unsigned_char", "unsigned char *|uint_fast8_t *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "unsigned int *|uintptr_t *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_unsigned_long_long = {"_p_unsigned_long_long", "unsigned long long *|uintmax_t *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_unsigned_short = {"_p_unsigned_short", "unsigned short *|uint_least16_t *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_unsigned_char = {"_p_unsigned_char", "unsigned char *|uint_least8_t *|uint_fast8_t *|uint8_t *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "uintptr_t *|uint_least32_t *|uint_fast32_t *|uint32_t *|unsigned int *|uint_fast16_t *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_unsigned_long_long = {"_p_unsigned_long_long", "uint_least64_t *|uint_fast64_t *|uint64_t *|unsigned long long *|uintmax_t *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_unsigned_short = {"_p_unsigned_short", "unsigned short *|uint_least16_t *|uint16_t *", 0, 0, (void*)0, 0};
 
 static swig_type_info *swig_type_initial[] = {
   &_swigt__p_TDB_DATA,



More information about the samba-cvs mailing list