r26701: ldb: Build and install python modules when possible. v4-0-test
authorJelmer Vernooij <jelmer@samba.org>
Thu, 10 Jan 2008 21:36:35 +0000 (15:36 -0600)
committerStefan Metzmacher <metze@samba.org>
Thu, 10 Jan 2008 15:42:04 +0000 (09:42 -0600)
source/lib/ldb/Makefile.in
source/lib/ldb/configure.ac

index 4788c02598c95f3c87b4ff1b1bce67d774395f49..8be5d11958ae252076356ed69cdc1e023f7a96bc 100644 (file)
@@ -112,7 +112,8 @@ lib/libldb.$(SHLIBEXT): $(SOLIB)
 $(SOLIB): $(OBJS)
        $(SHLD) $(SHLD_FLAGS) -o $@ $(OBJS) $(LDFLAGS) $(LIBS) $(TALLOC_LIBS) $(TDB_LIBS) $(LIBDL) $(LDAP_LIBS) @SONAMEFLAG@$(SONAME)
 
-all: showflags dirs $(OBJS) $(STATICLIB) $(SOLIB) $(BINS) $(EXAMPLES) manpages
+all: showflags dirs $(OBJS) $(STATICLIB) $(SOLIB) $(BINS) $(EXAMPLES) manpages \
+       @PYTHON_BUILD_TARGET@
 
 showflags:
        @echo 'ldb will be compiled with flags:'
@@ -212,12 +213,23 @@ valgrindtest: all
 
 installcheck: install test
 
-install:: all
+install:: all installdirs installheaders installlibs installbin installdoc \
+               @PYTHON_INSTALL_TARGET@
+
+installdirs:
        mkdir -p $(DESTDIR)$(includedir) $(DESTDIR)$(libdir) $(DESTDIR)$(bindir) $(DESTDIR)$(libdir)/pkgconfig 
+
+installheaders: installdirs
        cp $(headers) $(DESTDIR)$(includedir)
+
+installlibs: installdirs
        cp $(STATICLIB) $(SOLIB) $(DESTDIR)$(libdir)
-       cp $(BINS) $(DESTDIR)$(bindir)
        cp ldb.pc $(DESTDIR)$(libdir)/pkgconfig
+
+installbin: installdirs
+       cp $(BINS) $(DESTDIR)$(bindir)
+
+installdocs: installdirs
        $(srcdir)/docs/installdocs.sh $(DESTDIR)$(mandir)
 
 gcov:
@@ -234,15 +246,17 @@ etags:
 ctags:
        ctags `find $(srcdir) -name "*.[ch]"`
 
-%_wrap.c %.py: %.i
-       $(SWIG) -O -Wall -python -keyword $<
+.SUFFIXES: _wrap.c .i
+
+.i_wrap.c:
+       [ "$(SWIG)" == "no" ] || $(SWIG) -O -Wall -python -keyword $<
 
 # Python bindings
-build-python: lib/libldb.$(SHLIBEXT) ldb_wrap.c ldb.py
+build-python: lib/libldb.$(SHLIBEXT) ldb_wrap.c
        ./setup.py build
 
 install-python: build-python
-       ./setup.py install --prefix=$(prefix)
+       ./setup.py install --prefix=$(DESTDIR)$(prefix)
 
 install-swig: 
        cp ldb.i `$(SWIG) -swiglib`
index 73966e8f93316243ecb632bbbe85526df34bdf92..62a840e561c3551134da6a0d6489da987110c701 100644 (file)
@@ -75,6 +75,19 @@ AC_LIBREPLACE_SHLD
 AC_LIBREPLACE_SHLD_FLAGS
 AC_LIBREPLACE_MDLD
 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])
+
+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
 
 m4_include(libldb.m4)
 AC_OUTPUT(Makefile ldb.pc)