summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Adam <obnox@samba.org>2008-07-07 17:35:08 +0200
committerMichael Adam <obnox@samba.org>2008-07-07 20:34:04 +0200
commit576d1dc66d29d4a6265b3172052673cc4e5e869b (patch)
tree3aa2b5d0f1cc01a87865ac252dd92ba8dffea884
parentbf62ddc9e668f7798625096bc880132f4abdf775 (diff)
downloadsamba-576d1dc66d29d4a6265b3172052673cc4e5e869b.tar.gz
samba-576d1dc66d29d4a6265b3172052673cc4e5e869b.tar.bz2
samba-576d1dc66d29d4a6265b3172052673cc4e5e869b.zip
build: set SONAME version of libraries from configure, not using library-versions
This sets the library versions (previously gotten from library-versions file during make) already at configure time. For library "foo", the version is stored in the LIBFOO_SOVER configure variable. For all libraries except libwbclient, this is done through the call of SMB_LIBRARY(). NOTE: Currently the versions are hard-coded in the SMB_LIBRARY() calls in configure.in, but this change makes it easier to retrieve the version from the libraries source dir at configure time, e.g. for talloc and tdb. Michael (This used to be commit 3c300f9f8cffb5af32e291ec75007ab98fe96561)
-rw-r--r--source3/Makefile.in14
-rw-r--r--source3/configure.in21
2 files changed, 22 insertions, 13 deletions
diff --git a/source3/Makefile.in b/source3/Makefile.in
index 678e66aab9..04c4284c8d 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -1553,7 +1553,7 @@ LIBTALLOC_OBJ0 = $(TALLOC_OBJ)
LIBTALLOC_OBJ = $(LIBTALLOC_OBJ0) $(LIBREPLACE_OBJ)
LIBTALLOC_SHARED_TARGET=@LIBTALLOC_SHARED_TARGET@
-LIBTALLOC_SOVER=$(shell grep \^$(LIBTALLOC_SHARED_TARGET) $(builddir)/library-versions | cut -d: -f2)
+LIBTALLOC_SOVER=@LIBTALLOC_SOVER@
LIBTALLOC_SHARED_TARGET_SONAME=$(LIBTALLOC_SHARED_TARGET).$(LIBTALLOC_SOVER)
LIBTALLOC_STATIC_TARGET=@LIBTALLOC_STATIC_TARGET@
LIBTALLOC=$(LIBTALLOC_STATIC_TARGET) @LIBTALLOC_SHARED@
@@ -1613,7 +1613,7 @@ LIBTDB_OBJ0 = @TDB_OBJS@
LIBTDB_OBJ = $(LIBTDB_OBJ0) $(LIBREPLACE_OBJ)
LIBTDB_SHARED_TARGET=@LIBTDB_SHARED_TARGET@
-LIBTDB_SOVER=$(shell grep \^$(LIBTDB_SHARED_TARGET) $(builddir)/library-versions | cut -d: -f2)
+LIBTDB_SOVER=@LIBTDB_SOVER@
LIBTDB_SHARED_TARGET_SONAME=$(LIBTDB_SHARED_TARGET).$(LIBTDB_SOVER)
LIBTDB_STATIC_TARGET=@LIBTDB_STATIC_TARGET@
LIBTDB=$(LIBTDB_STATIC_TARGET) @LIBTDB_SHARED@
@@ -1682,7 +1682,7 @@ LIBWBCLIENT_OBJ = $(LIBWBCLIENT_OBJ0) \
@LIBTALLOC_STATIC@ $(LIBREPLACE_OBJ)
LIBWBCLIENT_SHARED_TARGET=@LIBWBCLIENT_SHARED_TARGET@
-LIBWBCLIENT_SOVER=$(shell grep \^$(LIBWBCLIENT_SHARED_TARGET) $(builddir)/library-versions | cut -d: -f2)
+LIBWBCLIENT_SOVER=@LIBWBCLIENT_SOVER@
LIBWBCLIENT_SHARED_TARGET_SONAME=$(LIBWBCLIENT_SHARED_TARGET).$(LIBWBCLIENT_SOVER)
LIBWBCLIENT_STATIC_TARGET=@LIBWBCLIENT_STATIC_TARGET@
LIBWBCLIENT=@LIBWBCLIENT_STATIC@ @LIBWBCLIENT_SHARED@
@@ -1740,7 +1740,7 @@ uninstalllibwbclient::
LIBADDNS_OBJ = $(LIBADDNS_OBJ0) @LIBTALLOC_STATIC@
LIBADDNS_SHARED_TARGET=@LIBADDNS_SHARED_TARGET@
-LIBADDNS_SOVER=$(shell grep \^$(LIBADDNS_SHARED_TARGET) $(builddir)/library-versions | cut -d: -f2)
+LIBADDNS_SOVER=@LIBADDNS_SOVER@
LIBADDNS_SHARED_TARGET_SONAME=$(LIBADDNS_SHARED_TARGET).$(LIBADDNS_SOVER)
LIBADDNS_STATIC_TARGET=@LIBADDNS_STATIC_TARGET@
LIBADDNS=$(LIBADDNS_STATIC_TARGET) @LIBADDNS_SHARED@
@@ -1813,7 +1813,7 @@ LIBNETAPI_OBJ = $(LIBNETAPI_OBJ1) $(LIBNET_OBJ) \
$(DCUTIL_OBJ) $(LIBADS_OBJ) $(PRIVILEGES_BASIC_OBJ)
LIBNETAPI_SHARED_TARGET=@LIBNETAPI_SHARED_TARGET@
-LIBNETAPI_SOVER=$(shell grep \^$(LIBNETAPI_SHARED_TARGET) $(builddir)/library-versions | cut -d: -f2)
+LIBNETAPI_SOVER=@LIBNETAPI_SOVER@
LIBNETAPI_SHARED_TARGET_SONAME=$(LIBNETAPI_SHARED_TARGET).$(LIBNETAPI_SOVER)
LIBNETAPI_STATIC_TARGET=@LIBNETAPI_STATIC_TARGET@
LIBNETAPI=$(LIBNETAPI_STATIC_TARGET) @LIBNETAPI_SHARED@
@@ -1893,7 +1893,7 @@ LIBSMBCLIENT_OBJ0 = \
LIBSMBCLIENT_OBJ = $(LIBSMBCLIENT_OBJ0) @LIBWBCLIENT_STATIC@
LIBSMBCLIENT_SHARED_TARGET=@LIBSMBCLIENT_SHARED_TARGET@
-LIBSMBCLIENT_SOVER=$(shell grep \^$(LIBSMBCLIENT_SHARED_TARGET) $(builddir)/library-versions | cut -d: -f2)
+LIBSMBCLIENT_SOVER=@LIBSMBCLIENT_SOVER@
LIBSMBCLIENT_SHARED_TARGET_SONAME=$(LIBSMBCLIENT_SHARED_TARGET).$(LIBSMBCLIENT_SOVER)
LIBSMBCLIENT_STATIC_TARGET=@LIBSMBCLIENT_STATIC_TARGET@
LIBSMBCLIENT=$(LIBSMBCLIENT_STATIC_TARGET) @LIBSMBCLIENT_SHARED@
@@ -1955,7 +1955,7 @@ uninstallclientlib:: uninstalllibsmbclient
LIBSMBSHAREMODES_OBJ = libsmb/smb_share_modes.o @LIBTDB_STATIC@
LIBSMBSHAREMODES_SHARED_TARGET=@LIBSMBSHAREMODES_SHARED_TARGET@
-LIBSMBSHAREMODES_SOVER=$(shell grep \^$(LIBSMBSHAREMODES_SHARED_TARGET) $(builddir)/library-versions | cut -d: -f2)
+LIBSMBSHAREMODES_SOVER=@LIBSMBSHAREMODES_SOVER@
LIBSMBSHAREMODES_SHARED_TARGET_SONAME=$(LIBSMBSHAREMODES_SHARED_TARGET).$(LIBSMBSHAREMODES_SOVER)
LIBSMBSHAREMODES_STATIC_TARGET=@LIBSMBSHAREMODES_STATIC_TARGET@
LIBSMBSHAREMODES=$(LIBSMBSHAREMODES_STATIC_TARGET) @LIBSMBSHAREMODES_SHARED@
diff --git a/source3/configure.in b/source3/configure.in
index 673bf3b91e..8d89fe50a3 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -86,6 +86,7 @@ AC_SUBST(LIBWBCLIENT_SHARED_TARGET)
AC_SUBST(LIBWBCLIENT_SHARED)
AC_SUBST(LIBWBCLIENT_STATIC_TARGET)
AC_SUBST(LIBWBCLIENT_STATIC)
+AC_SUBST(LIBWBCLIENT_SOVER)
AC_SUBST(LIBWBCLIENT)
AC_SUBST(WINBIND_LIBS)
@@ -4673,12 +4674,19 @@ LINK_LIBNETAPI=STATIC
LINK_LIBSMBCLIENT=STATIC
-SMB_LIBRARY(talloc)
-SMB_LIBRARY(tdb)
-SMB_LIBRARY(netapi)
-SMB_LIBRARY(smbclient)
-SMB_LIBRARY(smbsharemodes)
-SMB_LIBRARY(addns, no, [undefined API])
+#
+# The library versions are hardcoded here
+# and filled into the LIBFOO_SOVER variable.
+#
+# TODO: for talloc and tdb (at least), these should
+# be extracted from their respective source directories
+#
+SMB_LIBRARY(talloc, 1)
+SMB_LIBRARY(tdb, 1)
+SMB_LIBRARY(netapi, 0)
+SMB_LIBRARY(smbclient, 0)
+SMB_LIBRARY(smbsharemodes, 0)
+SMB_LIBRARY(addns, 0, no, [undefined API])
@@ -5615,6 +5623,7 @@ fi
LIBWBCLIENT_SHARED_TARGET=bin/libwbclient.$SHLIBEXT
LIBWBCLIENT_STATIC_TARGET=bin/libwbclient.a
+LIBWBCLIENT_SOVER=0
if test $BLDSHARED = true -a x"$HAVE_WINBIND" = x"yes" -a x"$BUILD_LIBWBCLIENT_SHARED" = x"yes"; then
NSS_MODULES="${WINBIND_NSS} ${WINBIND_WINS_NSS}"
## Only worry about libwbclient if we have shared library support