[SCM] Samba Shared Repository - branch v4-0-test updated -
release-4-0-0alpha2-757-g7b93e43
Jelmer Vernooij
jelmer at samba.org
Tue Feb 12 00:22:22 GMT 2008
The branch, v4-0-test has been updated
via 7b93e43dad55454e9107a38e67764e08f51392d3 (commit)
via 056843a5c2ca9e0ec59fd7e371852ecb5362ee32 (commit)
via 94dfeb5e89a641e2af3d7426d9d25c87952198d2 (commit)
from 35c8ebdca2612b52cd3eb2aafd35041d17173722 (commit)
http://gitweb.samba.org/?samba.git;a=shortlog;h=v4-0-test
- Log -----------------------------------------------------------------
commit 7b93e43dad55454e9107a38e67764e08f51392d3
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Tue Feb 12 01:21:10 2008 +0100
Avoid using setup.py for intsallation.
commit 056843a5c2ca9e0ec59fd7e371852ecb5362ee32
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Tue Feb 12 00:49:36 2008 +0100
Manually compile python files rather than use setup.py.
commit 94dfeb5e89a641e2af3d7426d9d25c87952198d2
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Tue Feb 12 00:35:11 2008 +0100
Manually compile python files rather than using setup.py.
-----------------------------------------------------------------------
Summary of changes:
source/lib/ldb/Makefile.in | 3 ++-
source/lib/ldb/configure.ac | 4 ++++
source/lib/ldb/ldb.mk | 19 ++++++++++++-------
source/lib/ldb/setup.py | 15 ---------------
source/lib/ldb/tests/python/api.py | 3 +++
source/lib/tdb/Makefile.in | 6 +++++-
source/lib/tdb/configure.ac | 5 +++++
source/lib/tdb/python/tests/simple.py | 5 +++++
source/lib/tdb/setup.py | 11 -----------
source/lib/tdb/tdb.mk | 23 +++++++++++++----------
10 files changed, 49 insertions(+), 45 deletions(-)
delete mode 100755 source/lib/ldb/setup.py
delete mode 100755 source/lib/tdb/setup.py
Changeset truncated at 500 lines:
diff --git a/source/lib/ldb/Makefile.in b/source/lib/ldb/Makefile.in
index 738ffe1..d3e0274 100644
--- a/source/lib/ldb/Makefile.in
+++ b/source/lib/ldb/Makefile.in
@@ -19,6 +19,7 @@ SWIG = swig
EXTRA_OBJ=@EXTRA_OBJ@
TESTS=test-tdb.sh @TESTS@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PYTHON_CONFIG = @PYTHON_CONFIG@
tdbdir = @tdbdir@
ldbdir = $(srcdir)
tallocdir = @tallocdir@
@@ -121,7 +122,7 @@ distclean:: clean
realdistclean:: distclean
rm -f configure.in include/config.h.in
-check:: test
+check:: test @PYTHON_CHECK_TARGET@
check-soloading: sample_module.$(SHLIBEXT)
LDB_MODULES_PATH=$(builddir) $(srcdir)/tests/test-soloading.sh
diff --git a/source/lib/ldb/configure.ac b/source/lib/ldb/configure.ac
index 176cef0..4d9444a 100644
--- a/source/lib/ldb/configure.ac
+++ b/source/lib/ldb/configure.ac
@@ -78,14 +78,18 @@ AC_LIBREPLACE_MDLD_FLAGS
AC_LIBREPLACE_RUNTIME_LIB_PATH_VAR
AC_PATH_PROGS([PYTHON_CONFIG], [python2.6-config python2.5-config python2.4-config python-config])
+AC_PATH_PROGS([PYTHON], [python2.6 python2.5 python2.4 python])
PYTHON_BUILD_TARGET="build-python"
PYTHON_INSTALL_TARGET="install-python"
+PYTHON_CHECK_TARGET="check-python"
AC_SUBST(PYTHON_BUILD_TARGET)
AC_SUBST(PYTHON_INSTALL_TARGET)
+AC_SUBST(PYTHON_CHECK_TARGET)
if test -z "$PYTHON_CONFIG"; then
PYTHON_BUILD_TARGET=""
+ PYTHON_CHECK_TARGET=""
PYTHON_INSTALL_TARGET=""
fi
diff --git a/source/lib/ldb/ldb.mk b/source/lib/ldb/ldb.mk
index b9aa24b..6d0ad44 100644
--- a/source/lib/ldb/ldb.mk
+++ b/source/lib/ldb/ldb.mk
@@ -65,18 +65,23 @@ examples/ldifreader: examples/ldifreader.o $(LIBS)
$(CC) -o examples/ldifreader examples/ldifreader.o $(LIB_FLAGS)
# Python bindings
-build-python:: lib/libldb.$(SHLIBEXT) ldb_wrap.c
- $(ldbdir)/setup.py build
+build-python:: _ldb.$(SHLIBEXT)
+
+ldb_wrap.o: $(ldbdir)/ldb_wrap.c
+ $(CC) -c $(ldbdir)/ldb_wrap.c $(CFLAGS) `$(PYTHON_CONFIG) --cflags`
+
+_ldb.$(SHLIBEXT): $(LIBS) ldb_wrap.o
+ $(SHLD) $(SHLD_FLAGS) -o _ldb.$(SHLIBEXT) ldb_wrap.o $(LIB_FLAGS)
install-python:: build-python
- $(ldbdir)/setup.py install --prefix=$(DESTDIR)$(prefix)
+ cp $(ldbdir)/ldb.py $(DESTDIR)`$(PYTHON) -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(0)"`
+ cp _ldb.$(SHLIBEXT) $(DESTDIR)`$(PYTHON) -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1)"`
install-swig::
cp ldb.i `$(SWIG) -swiglib`
check-python:: build-python
- # FIXME: This isn't portable
- LD_LIBRARY_PATH=lib PYTHONPATH=.:build/lib.linux-i686-2.4/ trial tests/python/api.py
+ LD_LIBRARY_PATH=lib PYTHONPATH=.:$(ldbdir) $(PYTHON) $(ldbdir)/tests/python/api.py
-clean-python::
- $(ldbdir)/setup.py clean
+clean::
+ rm -f _ldb.$(SHLIBEXT)
diff --git a/source/lib/ldb/setup.py b/source/lib/ldb/setup.py
deleted file mode 100755
index b04f3b0..0000000
--- a/source/lib/ldb/setup.py
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/usr/bin/python
-from distutils.core import setup
-from distutils.extension import Extension
-
-setup(name="ldb",
- version="1.0",
- url="http://ldb.samba.org/",
- author="LDB Developers",
- author_email="ldb at samba.org",
- license="LGPLv3",
- keywords=["ldap","ldb","db","ldif"],
- py_modules=["ldb"],
- ext_modules=[Extension('_ldb', ['ldb_wrap.c'], include_dirs=['include'],
- library_dirs=["lib"], libraries=['ldb'])],
- )
diff --git a/source/lib/ldb/tests/python/api.py b/source/lib/ldb/tests/python/api.py
index d5346c3..5f3f727 100755
--- a/source/lib/ldb/tests/python/api.py
+++ b/source/lib/ldb/tests/python/api.py
@@ -418,3 +418,6 @@ class ModuleTests(unittest.TestCase):
def test_register_module(self):
ldb.register_module(ExampleModule())
+if __name__ == '__main__':
+ import unittest
+ unittest.TestProgram()
diff --git a/source/lib/tdb/Makefile.in b/source/lib/tdb/Makefile.in
index 9730dff..8c79f6e 100644
--- a/source/lib/tdb/Makefile.in
+++ b/source/lib/tdb/Makefile.in
@@ -22,8 +22,12 @@ PACKAGE_VERSION = @PACKAGE_VERSION@
PICFLAG = @PICFLAG@
SHLIBEXT = @SHLIBEXT@
SWIG = swig
+PYTHON = @PYTHON@
+PYTHON_CONFIG = @PYTHON_CONFIG@
PYTHON_BUILD_TARGET = @PYTHON_BUILD_TARGET@
PYTHON_INSTALL_TARGET = @PYTHON_INSTALL_TARGET@
+PYTHON_CHECK_TARGET = @PYTHON_CHECK_TARGET@
+LIB_PATH_VAR = @LIB_PATH_VAR@
tdbdir = @tdbdir@
TDB_OBJ = @TDB_OBJ@ @LIBREPLACEOBJ@
@@ -39,7 +43,7 @@ $(SOLIB): $(TDB_OBJ)
check: test
-test::
+test:: $(PYTHON_CHECK_TARGET)
installcheck:: test install
clean::
diff --git a/source/lib/tdb/configure.ac b/source/lib/tdb/configure.ac
index 5747107..9b16a82 100644
--- a/source/lib/tdb/configure.ac
+++ b/source/lib/tdb/configure.ac
@@ -11,15 +11,20 @@ AC_LD_PICFLAG
AC_LD_SHLIBEXT
AC_LIBREPLACE_SHLD
AC_LIBREPLACE_SHLD_FLAGS
+AC_LIBREPLACE_RUNTIME_LIB_PATH_VAR
m4_include(libtdb.m4)
AC_PATH_PROGS([PYTHON_CONFIG], [python2.6-config python2.5-config python2.4-config python-config])
+AC_PATH_PROGS([PYTHON], [python2.6 python2.5 python2.4 python])
PYTHON_BUILD_TARGET="build-python"
PYTHON_INSTALL_TARGET="install-python"
+PYTHON_CHECK_TARGET="check-python"
AC_SUBST(PYTHON_BUILD_TARGET)
AC_SUBST(PYTHON_INSTALL_TARGET)
+AC_SUBST(PYTHON_CHECK_TARGET)
if test -z "$PYTHON_CONFIG"; then
PYTHON_BUILD_TARGET=""
PYTHON_INSTALL_TARGET=""
+ PYTHON_CHECK_TARGET=""
fi
AC_OUTPUT(Makefile tdb.pc)
diff --git a/source/lib/tdb/python/tests/simple.py b/source/lib/tdb/python/tests/simple.py
index 1cc51ae..94407b6 100644
--- a/source/lib/tdb/python/tests/simple.py
+++ b/source/lib/tdb/python/tests/simple.py
@@ -142,3 +142,8 @@ class SimpleTdbTests(TestCase):
self.assertEquals(0, len(self.tdb))
self.tdb["entry"] = "value"
self.assertEquals(1, len(self.tdb))
+
+
+if __name__ == '__main__':
+ import unittest
+ unittest.TestProgram()
diff --git a/source/lib/tdb/setup.py b/source/lib/tdb/setup.py
deleted file mode 100755
index 8be0c67..0000000
--- a/source/lib/tdb/setup.py
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/python
-from distutils.core import setup
-from distutils.extension import Extension
-
-setup(name='tdb',
- version='1.0',
- url="http://tdb.samba.org/",
- py_modules=["tdb"],
- ext_modules=[Extension('_tdb', ['tdb_wrap.c'], include_dirs=['include'],
- library_dirs=["."], libraries=['tdb'])],
-)
diff --git a/source/lib/tdb/tdb.mk b/source/lib/tdb/tdb.mk
index d6118dd..976589f 100644
--- a/source/lib/tdb/tdb.mk
+++ b/source/lib/tdb/tdb.mk
@@ -33,25 +33,30 @@ clean::
rm -f $(SONAME) $(SOLIB) libtdb.a libtdb.$(SHLIBEXT)
rm -f $(ALL_PROGS) tdb.pc
-build-python:: libtdb.$(SHLIBEXT) tdb_wrap.c
- $(tdbdir)/setup.py build
+build-python:: _tdb.$(SHLIBEXT)
+
+tdb_wrap.o: $(tdbdir)/tdb_wrap.c
+ $(CC) -c $(tdbdir)/tdb_wrap.c $(CFLAGS) `$(PYTHON_CONFIG) --cflags`
+
+_tdb.$(SHLIBEXT): libtdb.$(SHLIBEXT) tdb_wrap.o
+ $(SHLD) $(SHLD_FLAGS) -o $@ tdb_wrap.o -L. -ltdb `$(PYTHON_CONFIG) --libs`
install:: installdirs installbin installheaders installlibs \
$(PYTHON_INSTALL_TARGET)
-installpython:: build-python
- ./setup.py install --prefix=$(DESTDIR)$(prefix)
+install-python:: build-python
+ cp $(tdbdir)/tdb.py $(DESTDIR)`$(PYTHON) -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(0)"`
+ cp _tdb.$(SHLIBEXT) $(DESTDIR)`$(PYTHON) -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1)"`
check-python:: build-python
- # FIXME: Should be more portable:
- LD_LIBRARY_PATH=. PYTHONPATH=.:build/lib.linux-i686-2.4 trial python/tests/simple.py
+ $(LIB_PATH_VAR)=. PYTHONPATH=".:$(tdbdir)" $(PYTHON) $(tdbdir)/python/tests/simple.py
install-swig::
mkdir -p $(DESTDIR)`$(SWIG) -swiglib`
cp tdb.i $(DESTDIR)`$(SWIG) -swiglib`
-clean-python::
- ./setup.py clean
+clean::
+ rm -f _tdb.$(SHLIBEXT)
installdirs::
mkdir -p $(DESTDIR)$(bindir)
@@ -77,5 +82,3 @@ libtdb.$(SHLIBEXT): $(SOLIB)
$(SONAME): $(SOLIB)
ln -fs $< $@
-
-
--
Samba Shared Repository
More information about the samba-cvs
mailing list