[SSSD] [PATCH] MAKE: Link libsss_ldap.so with ldap libraries

Lukas Slebodnik lslebodn at redhat.com
Thu May 29 12:15:35 UTC 2014


ehlo,

I was testing patch for building man pages on ubuntu and
there was problem with linking some tests and dlopen-test failed.

I was not able to reproduce the same problem on fedora with the same
linking flags and patched version of libtool.

We should link libsss_ldap_common.so with LDAP libraries.
nm --dynamic --undefined-only .libs/libsss_ldap_common.so  | grep -E "ldap_|ber_"
                 U ber_alloc_t
                 U ber_bvfree
                 U ber_flatten
                 U ber_free
                 U ber_memfree
                 U ber_printf
                 U ber_pvt_opt_on
                 U ber_sockbuf_alloc
                 U ber_sockbuf_ctrl
                 U ber_sockbuf_free
                 U ldap_abandon_ext
                 U ldap_control_create
//snip
                 U ldap_set_rebind_proc
                 U ldap_start_tls
                 U ldap_str2dn
                 U ldap_tls_inplace
                 U ldap_unbind_ext
                 U ldap_url_desc2str
                 U ldap_url_parse
                 U ldap_value_free_len

LS
-------------- next part --------------
>From 72d0a12766ab6b1b9d0bc5462e08dad530216122 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lslebodn at redhat.com>
Date: Thu, 29 May 2014 14:05:06 +0200
Subject: [PATCH] MAKE: Link libsss_ldap.so with ldap libraries

Tests ad_common_tests, test_search_bases, ad_access_filter_tests could not be
linked on ubuntu and dlopen test faild as well.

Running suite(s): dlopen
0%: Checks: 1, Failures: 1, Errors: 0
src/tests/dlopen-tests.c:143:F:dlopen:test_dlopen_base:0:
    Error opening libsss_ldap.so: [dlopen() failed: sssd-1.11.90/.libs/libsss_ldap_common.so:
                                   undefined symbol: ber_pvt_opt_on]
---
 Makefile.am | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index ac466a329e2e2c3f0a9a99adadb308c97000cdd5..eacaca07aa22ecd33a6e08073f2f42a1388596a6 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1995,6 +1995,7 @@ libsss_ldap_common_la_SOURCES = \
 libsss_ldap_common_la_CFLAGS = \
     $(KRB5_CFLAGS)
 libsss_ldap_common_la_LIBADD = \
+    $(OPENLDAP_LIBS) \
     $(KRB5_LIBS) \
     libsss_krb5_common.la \
     libsss_idmap.la
@@ -2600,7 +2601,7 @@ if GIT_CHECKOUT
 # When we're building RPMs from a git checkout,
 # we don't want to be bothered with translation
 # updates
-	git checkout $(srcdir)/po $(srcdir)/src/man/po
+	git --work-tree $(srcdir)/ checkout -f po src/man/po
 endif
 	cp $(builddir)/contrib/sssd.spec $(RPMBUILD)/SPECS
 	cp $(distdir).tar.gz $(RPMBUILD)/SOURCES
@@ -2612,7 +2613,7 @@ rpms: rpmbrprep
 if GIT_CHECKOUT
 prerelease-rpms:
 	cp $(srcdir)/version.m4 $(srcdir)/version.m4.orig
-	sed -e "s/m4_define(\[PRERELEASE_VERSION_NUMBER\], \[.*\])/m4_define(\[PRERELEASE_VERSION_NUMBER\], \[.`date +%Y%m%d.%H%M`.git`git log -1 --pretty=format:%h`\])/" < $(srcdir)/version.m4.orig > $(srcdir)/version.m4
+	sed -e "s/m4_define(\[PRERELEASE_VERSION_NUMBER\], \[.*\])/m4_define(\[PRERELEASE_VERSION_NUMBER\], \[.`date +%Y%m%d.%H%M`.git`git log -1 --pretty=format:%h`.`git symbolic-ref --short HEAD | sed -e 's/[-/~]/_/g' `\])/" < $(srcdir)/version.m4.orig > $(srcdir)/version.m4
 	$(MAKE) rpms
 	mv $(srcdir)/version.m4.orig $(srcdir)/version.m4
 endif
@@ -2627,7 +2628,7 @@ srpm: rpmbrprep
 if GIT_CHECKOUT
 prerelease-srpm:
 	cp $(srcdir)/version.m4 $(srcdir)/version.m4.orig
-	sed -e "s/m4_define(\[PRERELEASE_VERSION_NUMBER\], \[.*\])/m4_define(\[PRERELEASE_VERSION_NUMBER\], \[.`date +%Y%m%d.%H%M`.git`git log -1 --pretty=format:%h`\])/" < $(srcdir)/version.m4.orig > $(srcdir)/version.m4
+	sed -e "s/m4_define(\[PRERELEASE_VERSION_NUMBER\], \[.*\])/m4_define(\[PRERELEASE_VERSION_NUMBER\], \[.`date +%Y%m%d.%H%M`.git`git log -1 --pretty=format:%h`.`git symbolic-ref --short HEAD | sed -e 's/[-/~]/_/g' `\])/" < $(srcdir)/version.m4.orig > $(srcdir)/version.m4
 	$(MAKE) srpm
 	mv $(srcdir)/version.m4.orig $(srcdir)/version.m4
 endif
-- 
1.9.3



More information about the sssd-devel mailing list