Bug 616260

Summary: libds-admin-serv linking fails due to unresolved link-time dependencies
Product: [Retired] 389 Reporter: Ulf Weltman <ulf.weltman>
Component: AdminAssignee: Rich Megginson <rmeggins>
Status: CLOSED CURRENTRELEASE QA Contact: Viktor Ashirov <vashirov>
Severity: medium Docs Contact:
Priority: low    
Version: 1.2.6CC: amsharma, jgalipea, nhosoi
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Other   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-12-07 16:42:42 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 434915, 576869    
Attachments:
Description Flags
patch proposal
none
AS: git patch file (master) nkinder: review+

Description Ulf Weltman 2010-07-19 23:03:43 UTC
adminserver's libds-admin-serv is now being linked with libadminutil and libadmsslutil and those two are linked with NSS, NSPR, LDAP SDK, SASL, and ICU.  Out of those only NSPR was added to library search path.

Comment 1 Ulf Weltman 2010-07-19 23:04:30 UTC
Created attachment 433030 [details]
patch proposal

Comment 2 Rich Megginson 2010-08-04 21:11:52 UTC
Comment on attachment 433030 [details]
patch proposal

should patch Makefile.am - Makefile.in is generated by autogen.sh from configure.ac and Makefile.am

Also, not sure why we are using @adminutil_lib@ etc. - we should be using the $(XXX_LINK) macros instead - we should change DEFAULT_LIBS_NOCGI and libds_admin_serv_la_LIBADD to use those instead.

Comment 4 Noriko Hosoi 2011-02-04 01:51:28 UTC
Created attachment 476923 [details]
AS: git patch file (master)

Description:
1) Do not use nodist_property_DATA for ICU resource files, but
   use BUILT_SOURCES to keep them just in the built source area
   and directly copy them to the install location using the
   script defined in install-data-hook.
2) Added macros ADMINUTIL_LINK, NSPR_LINK, NSS_LINK, SASL_LINK
   and ICU_LINK, and let DEFAULT_LIBS_NOCGI and libds_admin_
   serv_la_LIBADD use them.  ADMINUTIL_LINK now contains
   adminutil, NSS, NSPR, SASL, LDAPSDK/OPENLDAP, ICU in the
   library search path.

Note: patch contains diffs of the following files.  Only Makefile.am was manually modified, and the rest are automatically generated.
 Makefile.am  |   35 +-
 Makefile.in  | 1343 ++-
 aclocal.m4   | 6879 +-----------
 compile      |   21 +-
 config.guess |  302 +-
 config.h.in  |   12 +-
 config.sub   |  232 +-
 configure    |36271 ++++++++++++++++++++++++----------------------------------
 depcomp      |  172 +-
 install-sh   |  517 +-
 ltmain.sh    |13199 ++++++++++++----------
 missing      |  104 +-

Comment 5 Noriko Hosoi 2011-02-04 21:27:06 UTC
Reviewed by Nathan (Thank you!!!)

Pushed to master.

$ git merge 616260
Updating 82e8a28..fe73cc2
Fast-forward
 Makefile.am  |   35 +-
 Makefile.in  | 1343 ++-
 aclocal.m4   | 6879 +-----------
 compile      |   21 +-
 config.guess |  302 +-
 config.h.in  |   12 +-
 config.sub   |  232 +-
 configure    |36271 ++++++++++++++++++++++++----------------------------------
 depcomp      |  172 +-
 install-sh   |  517 +-
 ltmain.sh    |13199 ++++++++++++----------
 missing      |  104 +-
 12 files changed, 24600 insertions(+), 34487 deletions(-)
 mode change 100644 => 100755 ltmain.sh

$ git push
Counting objects: 27, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (14/14), done.
Writing objects: 100% (14/14), 130.16 KiB, done.
Total 14 (delta 12), reused 0 (delta 0)
To ssh://git.fedorahosted.org/git/389/admin.git
   82e8a28..fe73cc2  master -> master

Comment 7 Noriko Hosoi 2011-07-20 20:58:58 UTC
Compared Makefile.am in the git source tree with the one in patch.
Verified that they are identical.

ldd /usr/lib/libds-admin-serv.so.0
	linux-gate.so.1 =>  (0x0044d000)
	libadmsslutil.so.1 => /usr/lib/libadmsslutil.so.1 (0x00b90000)
	libadminutil.so.1 => /usr/lib/libadminutil.so.1 (0x00bd7000)
	libplc4.so => /lib/libplc4.so (0x00935000)
	libplds4.so => /lib/libplds4.so (0x0093c000)
	libnspr4.so => /lib/libnspr4.so (0x03e8a000)
	libc.so.6 => /lib/libc.so.6 (0x00973000)
	libssl3.so => /usr/lib/libssl3.so (0x03783000)
	libnss3.so => /usr/lib/libnss3.so (0x0393d000)
	libldap-2.4.so.2 => /usr/lib/libldap-2.4.so.2 (0x0340f000)
	libicui18n.so.44 => /usr/lib/libicui18n.so.44 (0x0562c000)
	libicuuc.so.44 => /usr/lib/libicuuc.so.44 (0x054e3000)
	libicudata.so.44 => /usr/lib/libicudata.so.44 (0x04690000)
	libpthread.so.0 => /lib/libpthread.so.0 (0x00aff000)
	libdl.so.2 => /lib/libdl.so.2 (0x00b1c000)
	/lib/ld-linux.so.2 (0x00952000)
	libnssutil3.so => /usr/lib/libnssutil3.so (0x00918000)
	libz.so.1 => /lib/libz.so.1 (0x00b23000)
	liblber-2.4.so.2 => /usr/lib/liblber-2.4.so.2 (0x0345d000)
	libresolv.so.2 => /lib/libresolv.so.2 (0x00cc1000)
	libsmime3.so => /usr/lib/libsmime3.so (0x00725000)
	libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x03378000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00752000)
	libm.so.6 => /lib/libm.so.6 (0x00b3a000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00b71000)
	libcrypt.so.1 => /lib/libcrypt.so.1 (0x008df000)
	libfreebl3.so => /lib/libfreebl3.so (0x02ee8000)

Comment 8 Rich Megginson 2011-07-25 18:26:44 UTC
Really, the fact that Admin Server and Console work at all is enough to verify this bug.