Author: jelmer
Date: 2007-11-06 16:23:18 +0000 (Tue, 06 Nov 2007)
New Revision: 25877

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

Log:
Add libreplace macro for soname flags.
Modified:
   branches/SAMBA_4_0/
   branches/SAMBA_4_0/source/build/m4/check_ld.m4
   branches/SAMBA_4_0/source/lib/ldb/Makefile.in
   branches/SAMBA_4_0/source/lib/ldb/configure.ac
   branches/SAMBA_4_0/source/lib/replace/libreplace_ld.m4


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/build/m4/check_ld.m4
===================================================================
--- branches/SAMBA_4_0/source/build/m4/check_ld.m4      2007-11-06 16:13:02 UTC 
(rev 25876)
+++ branches/SAMBA_4_0/source/build/m4/check_ld.m4      2007-11-06 16:23:18 UTC 
(rev 25877)
@@ -19,7 +19,6 @@
 AC_SUBST(LDFLAGS)
 AC_SUBST(SHLD)
 AC_SUBST(SHLD_UNDEF_FLAGS)
-AC_SUBST(SONAMEFLAG)
 
 # Assume non-shared by default and override below
 # these are the defaults, good for lots of systems
@@ -28,7 +27,6 @@
 BLDSHARED="false"
 LD="${CC}"
 SHLD="${CC}"
-SONAMEFLAG=""
 PICFLAG=""
 
 # allow for --with-hostld=gcc
@@ -50,13 +48,10 @@
                BLDSHARED="true"
                SHLD_UNDEF_FLAGS="-Wl,--allow-shlib-undefined"
                LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
-               SONAMEFLAG="-Wl,-soname="
                ;;
        *solaris*)
                BLDSHARED="true"
-               SONAMEFLAG="-h "
                if test "${GCC}" = "yes"; then
-                       SONAMEFLAG="-Wl,-soname="
                        if test "${ac_cv_prog_gnu_ld}" = "yes"; then
                                LDFLAGS="$LDFLAGS -Wl,-E"
                        fi
@@ -64,21 +59,17 @@
                ;;
        *sunos*)
                BLDSHARED="true"
-               SONAMEFLAG="-Wl,-h,"
                ;;
        *netbsd* | *freebsd* | *dragonfly* )  
                BLDSHARED="true"
                LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
-               SONAMEFLAG="-Wl,-soname,"
                ;;
        *openbsd*)
                BLDSHARED="true"
                LDFLAGS="$LDFLAGS -Wl,-Bdynamic"
-               SONAMEFLAG="-Wl,-soname,"
                ;;
        *irix*)
                BLDSHARED="true"
-               SONAMEFLAG="-soname "
                SHLD="${PROG_LD}"
                ;;
        *aix*)
@@ -88,8 +79,6 @@
        *hpux*)
                # Use special PIC flags for the native HP-UX compiler.
                if test $ac_cv_prog_cc_Ae = yes; then
-                       SONAMEFLAG="-Wl,+h "
-               elif test "${GCC}" = "yes"; then
                fi
                BLDSHARED="true" # I hope this is correct
                if test "$host_cpu" = "ia64"; then
@@ -100,11 +89,9 @@
                ;;
        *osf*)
                BLDSHARED="true"
-               SONAMEFLAG="-Wl,-soname,"
                ;;
        *unixware*)
                BLDSHARED="true"
-               SONAMEFLAG="-Wl,-soname,"
                ;;
        *darwin*)
                BLDSHARED="true"
@@ -129,6 +116,7 @@
 AC_LD_EXPORT_DYNAMIC
 AC_LD_SHLDFLAGS
 AC_LD_SHLIBEXT
+AC_LD_SONAMEFLAG
 
 AC_ARG_ENABLE(shared,
 [  --disable-shared        Disable testing for building shared libraries],

Modified: branches/SAMBA_4_0/source/lib/ldb/Makefile.in
===================================================================
--- branches/SAMBA_4_0/source/lib/ldb/Makefile.in       2007-11-06 16:13:02 UTC 
(rev 25876)
+++ branches/SAMBA_4_0/source/lib/ldb/Makefile.in       2007-11-06 16:23:18 UTC 
(rev 25877)
@@ -35,6 +35,7 @@
 LIBDL = @LIBDL@
 
 SHLIBEXT = @SHLIBEXT@
+SONAMEFLAG = @SONAMEFLAG@
 
 LD_EXPORT_DYNAMIC = @LD_EXPORT_DYNAMIC@
 SHLD_FLAGS = @SHLD_FLAGS@
@@ -47,7 +48,7 @@
        $(POPT_CFLAGS) $(TALLOC_CFLAGS) $(TDB_CFLAGS) \
        -DLIBDIR=\"$(libdir)\" -DSHLIBEXT=\"$(SHLIBEXT)\" -DUSE_MMAP=1 @CFLAGS@
 
-LIB_FLAGS=$(LDFLAGS) -Llib -lldb $(LIBS) $(POPT_LIBS) $(TALLOC_LIBS) \
+LIB_FLAGS=$(LDFLAGS) -Llib $(SOLIB) $(LIBS) $(POPT_LIBS) $(TALLOC_LIBS) \
                  $(TDB_LIBS) $(LDAP_LIBS) $(LIBDL)
 
 LDB_TDB_DIR=ldb_tdb
@@ -80,7 +81,7 @@
 
 BINS = bin/ldbadd bin/ldbsearch bin/ldbdel bin/ldbmodify bin/ldbedit 
bin/ldbrename bin/ldbtest bin/oLschema2ldif
 
-LIBS = $(LDB_LIB)
+LIBS = $(SOLIB)
 
 EXAMPLES = examples/ldbreader examples/ldifreader
 
@@ -93,8 +94,14 @@
 nssdir:
        @mkdir -p $(NSSDIR)
 
-all: showflags dirs $(OBJS) $(LDB_LIB) $(BINS) $(EXAMPLES) manpages
+SONAME = libldb.so.0
+SOLIB = lib/libldb.so.0.9.0
 
+$(SOLIB): $(OBJS)
+       $(CC) $(SHLD_FLAGS) $(SONAMEFLAG)$(SONAME) -o $@ $^ @LDFLAGS@ @LIBS@ 
$(TALLOC_LIBS) $(TDB_LIBS)
+
+all: showflags dirs $(OBJS) $(LDB_LIB) $(SOLIB) $(BINS) $(EXAMPLES) manpages
+
 showflags:
        @echo 'ldb will be compiled with flags:'
        @echo '  CFLAGS = $(CFLAGS)'
@@ -105,6 +112,11 @@
        @mkdir -p `dirname [EMAIL PROTECTED]
        @$(CC) $(CFLAGS) $(PICFLAG) -c $< -o $@
 
+.c.po:
+       @echo Compiling $*.c
+       @mkdir -p `dirname [EMAIL PROTECTED]
+       @$(CC) -fPIC $(CFLAGS) -c $< -o $@
+
 dirs:
        @mkdir -p $(DIRS)
 
@@ -148,7 +160,7 @@
 examples/ldifreader: examples/ldifreader.o $(LIBS)
        $(CC) -o examples/ldifreader examples/ldifreader.o $(LIB_FLAGS)
 
-.SUFFIXES: .1 .1.xml .3 .3.xml .xml .html
+.SUFFIXES: .1 .1.xml .3 .3.xml .xml .html .c .o
 
 manpages:
        @$(srcdir)/docs/builddocs.sh "$(XSLTPROC)" "$(srcdir)"
@@ -190,7 +202,7 @@
 install: all
        mkdir -p $(DESTDIR)$(includedir) $(DESTDIR)$(libdir)/pkgconfig 
$(DESTDIR)$(libdir) $(bindir)
        cp $(srcdir)/include/ldb.h $(srcdir)/include/ldb_errors.h 
$(DESTDIR)$(includedir)
-       cp $(LDB_LIB) $(DESTDIR)$(libdir)
+       cp $(LDB_LIB) $(SOLIB) $(DESTDIR)$(libdir)
        cp $(BINS) $(DESTDIR)$(bindir)
        cp ldb.pc $(DESTDIR)$(libdir)/pkgconfig
        $(srcdir)/docs/installdocs.sh $(DESTDIR)$(mandir)

Modified: branches/SAMBA_4_0/source/lib/ldb/configure.ac
===================================================================
--- branches/SAMBA_4_0/source/lib/ldb/configure.ac      2007-11-06 16:13:02 UTC 
(rev 25876)
+++ branches/SAMBA_4_0/source/lib/ldb/configure.ac      2007-11-06 16:23:18 UTC 
(rev 25877)
@@ -71,6 +71,7 @@
 AC_LD_PICFLAG
 AC_LD_SHLDFLAGS
 AC_LD_SHLIBEXT
+AC_LD_SONAMEFLAG
 
 m4_include(libldb.m4)
 AC_OUTPUT(Makefile ldb.pc)

Modified: branches/SAMBA_4_0/source/lib/replace/libreplace_ld.m4
===================================================================
--- branches/SAMBA_4_0/source/lib/replace/libreplace_ld.m4      2007-11-06 
16:13:02 UTC (rev 25876)
+++ branches/SAMBA_4_0/source/lib/replace/libreplace_ld.m4      2007-11-06 
16:23:18 UTC (rev 25877)
@@ -125,3 +125,44 @@
        esac
        AC_SUBST(SHLIBEXT)
 ])
+
+AC_DEFUN([AC_LD_SONAMEFLAG],
+[
+       AC_SUBST(SONAMEFLAG)
+       SONAMEFLAG=""
+       case "$host_os" in 
+               *linux*)
+                       SONAMEFLAG="-Wl,-soname="
+                       ;;
+               *solaris*)
+                       SONAMEFLAG="-h "
+                       if test "${GCC}" = "yes"; then
+                               SONAMEFLAG="-Wl,-soname="
+                       fi
+                       ;;
+               *sunos*)
+                       SONAMEFLAG="-Wl,-h,"
+                       ;;
+               *netbsd* | *freebsd* | *dragonfly* )
+                       SONAMEFLAG="-Wl,-soname,"
+                       ;;
+               *openbsd*)
+                       SONAMEFLAG="-Wl,-soname,"
+                       ;;
+               *irix*)
+                       SONAMEFLAG="-soname "
+                       ;;
+               *hpux*)
+                       SONAMEFLAG="-Wl,+h "
+                       ;;
+               *osf*)
+                       SONAMEFLAG="-Wl,-soname,"
+                       ;;
+               *unixware*)
+                       SONAMEFLAG="-Wl,-soname,"
+                       ;;
+               *darwin*)
+                       SONAMEFLAG="-Wl,-soname,"
+                       ;;
+               esac
+])

Reply via email to