svn commit: r225778 - in head: . kerberos5/lib/libasn1 kerberos5/lib/libgssapi_krb5 kerberos5/lib/libgssapi_ntlm kerberos5/lib/libgssapi_spnego kerberos5/lib/libhdb kerberos5/lib/libheimntlm kerber...

Stanislav Sedov stas at FreeBSD.org
Tue Sep 27 07:14:13 UTC 2011


Author: stas
Date: Tue Sep 27 07:14:12 2011
New Revision: 225778
URL: http://svn.freebsd.org/changeset/base/225778

Log:
  - Add missing interdependencies to kerberos libraries.  Some of the
    kerberos libraries were not linked properly (missing dependencies),
    which causes 3rd party applications linking to fail when --as-needed
    ld flag is used.  I also added the --no-undefined ld(1) flag to make
    sure that there're no missing dependencies.
  
  MFC after:	3 days

Modified:
  head/Makefile.inc1
  head/kerberos5/lib/libasn1/Makefile
  head/kerberos5/lib/libgssapi_krb5/Makefile
  head/kerberos5/lib/libgssapi_ntlm/Makefile
  head/kerberos5/lib/libgssapi_spnego/Makefile
  head/kerberos5/lib/libhdb/Makefile
  head/kerberos5/lib/libheimntlm/Makefile
  head/kerberos5/lib/libhx509/Makefile
  head/kerberos5/lib/libkadm5clnt/Makefile
  head/kerberos5/lib/libkadm5srv/Makefile
  head/kerberos5/lib/libkafs5/Makefile
  head/kerberos5/lib/libkrb5/Makefile
  head/kerberos5/lib/libroken/Makefile
  head/tools/make_libdeps.sh

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/Makefile.inc1	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1218,7 +1218,8 @@ _startup_libs+=	lib/libc
 
 gnu/lib/libgcc__L: lib/libc__L
 
-_prebuild_libs=	${_kerberos5_lib_libasn1} ${_kerberos5_lib_libheimntlm} \
+_prebuild_libs=	${_kerberos5_lib_libasn1} ${_kerberos5_lib_libhdb} \
+		${_kerberos5_lib_libheimntlm} \
 		${_kerberos5_lib_libhx509} ${_kerberos5_lib_libkrb5} \
 		${_kerberos5_lib_libroken} \
 		lib/libbz2 lib/libcom_err lib/libcrypt \
@@ -1268,6 +1269,19 @@ secure/lib/libssh__L: lib/libgssapi__L k
 _secure_lib=	secure/lib
 .endif
 
+.if ${MK_KERBEROS} != "no"
+kerberos5/lib/libasn1__L: lib/libcom_err__L kerberos5/lib/libroken__L
+kerberos5/lib/libhdb__L: kerberos5/lib/libasn1__L lib/libcom_err__L \
+    kerberos5/lib/libkrb5__L kerberos5/lib/libroken__L
+kerberos5/lib/libheimntlm__L: secure/lib/libcrypto__L kerberos5/lib/libkrb5__L
+kerberos5/lib/libhx509__L: kerberos5/lib/libasn1__L lib/libcom_err__L \
+    secure/lib/libcrypto__L kerberos5/lib/libroken__L
+kerberos5/lib/libkrb5__L: kerberos5/lib/libasn1__L lib/libcom_err__L \
+    lib/libcrypt__L secure/lib/libcrypto__L kerberos5/lib/libhx509__L \
+    kerberos5/lib/libroken__L
+kerberos5/lib/libroken__L: lib/libcrypt__L
+.endif
+
 .if ${MK_GSSAPI} != "no"
 _lib_libgssapi=	lib/libgssapi
 .endif
@@ -1279,6 +1293,7 @@ _lib_libipx=	lib/libipx
 .if ${MK_KERBEROS} != "no"
 _kerberos5_lib=	kerberos5/lib
 _kerberos5_lib_libasn1= kerberos5/lib/libasn1
+_kerberos5_lib_libhdb= kerberos5/lib/libhdb
 _kerberos5_lib_libkrb5= kerberos5/lib/libkrb5
 _kerberos5_lib_libhx509= kerberos5/lib/libhx509
 _kerberos5_lib_libroken= kerberos5/lib/libroken

Modified: head/kerberos5/lib/libasn1/Makefile
==============================================================================
--- head/kerberos5/lib/libasn1/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libasn1/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,7 +1,10 @@
 # $FreeBSD$
 
 LIB=	asn1
+LDFLAGS=	-Wl,--no-undefined
 INCS=	asn1_err.h heim_asn1.h
+LDADD=	-lcom_err -lroken
+DPADD=	${LIBCOM_ERR} ${LIBROKEN}
 
 SRCS=	asn1_err.c \
 	asn1_err.h \

Modified: head/kerberos5/lib/libgssapi_krb5/Makefile
==============================================================================
--- head/kerberos5/lib/libgssapi_krb5/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libgssapi_krb5/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,7 +1,7 @@
 # $FreeBSD$
 
 LIB=	gssapi_krb5
-LDFLAGS= -Wl,-Bsymbolic
+LDFLAGS= -Wl,-Bsymbolic -Wl,--no-undefined
 LDADD=	-lgssapi -lkrb5 -lhx509 -lcrypto -lroken -lasn1 -lcom_err -lcrypt
 DPADD=	${LIBGSSAPI} ${LIBKRB5} ${LIBHX509} ${LIBCRYPTO} ${LIBROKEN} ${LIBASN1} \
 	${LIBCOM_ERR} ${LIBCRYPT}

Modified: head/kerberos5/lib/libgssapi_ntlm/Makefile
==============================================================================
--- head/kerberos5/lib/libgssapi_ntlm/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libgssapi_ntlm/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,9 +1,9 @@
 # $FreeBSD$
 
 LIB=	gssapi_ntlm
-LDFLAGS= -Wl,-Bsymbolic
-LDADD=	-lkrb5 -lhx509 -lheimntlm -lroken
-DPADD=	${LIBKRB5} ${LIBHX509} ${LIBHEIMNTLM} ${LIBROKEN}
+LDFLAGS= -Wl,-Bsymbolic -Wl,--no-undefined
+LDADD=	-lcrypto -lgssapi -lkrb5 -lhx509 -lheimntlm -lroken
+DPADD=	${LIBCRYPTO} ${LIBGSSAPI} ${LIBKRB5} ${LIBHX509} ${LIBHEIMNTLM} ${LIBROKEN}
 
 SRCS=	accept_sec_context.c \
 	acquire_cred.c \

Modified: head/kerberos5/lib/libgssapi_spnego/Makefile
==============================================================================
--- head/kerberos5/lib/libgssapi_spnego/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libgssapi_spnego/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,9 +1,9 @@
 # $FreeBSD$
 
 LIB=	gssapi_spnego
-LDFLAGS= -Wl,-Bsymbolic
-LDADD=	-lgssapi -lasn1
-DPADD=	${LIBGSSAPI} ${LIBASN1}
+LDFLAGS= -Wl,-Bsymbolic -Wl,--no-undefined
+LDADD=	-lgssapi -lasn1 -lroken
+DPADD=	${LIBGSSAPI} ${LIBASN1} ${LIBROKEN}
 
 SRCS=	accept_sec_context.c \
 	compat.c \

Modified: head/kerberos5/lib/libhdb/Makefile
==============================================================================
--- head/kerberos5/lib/libhdb/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libhdb/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,6 +1,9 @@
 # $FreeBSD$
 
 LIB=	hdb
+LDFLAGS=	-Wl,--no-undefined
+LDADD=	-lasn1 -lcom_err -lkrb5 -lroken
+DPADD=	${LIBASN1} ${LIBCOM_ERR} ${LIBKRB5} ${LIBROKEN}
 
 INCS=	hdb-private.h \
 	hdb-protos.h \

Modified: head/kerberos5/lib/libheimntlm/Makefile
==============================================================================
--- head/kerberos5/lib/libheimntlm/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libheimntlm/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,6 +1,9 @@
 # $FreeBSD$
 
 LIB=	heimntlm
+LDFLAGS=	-Wl,--no-undefined
+LDADD=	-lcrypto -lkrb5
+DPADD=	${LIBCRYPTO} ${LIBKRB5}
 SRCS=	ntlm.c
 INCS=	heimntlm.h heimntlm-protos.h
 CFLAGS+=-I${KRB5DIR}/lib/ntlm

Modified: head/kerberos5/lib/libhx509/Makefile
==============================================================================
--- head/kerberos5/lib/libhx509/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libhx509/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,7 +1,10 @@
 # $FreeBSD$
 
 LIB=	hx509
+LDFLAGS=	-Wl,--no-undefined
 VERSION_MAP= ${KRB5DIR}/lib/hx509/version-script.map
+LDADD=	-lasn1 -lcom_err -lcrypto -lroken
+DPADD=	${LIBASN1} ${LIBCOM_ERR} ${LIBCRYPTO} ${LIBROKEN}
 
 INCS=	hx509-private.h \
 	hx509-protos.h \

Modified: head/kerberos5/lib/libkadm5clnt/Makefile
==============================================================================
--- head/kerberos5/lib/libkadm5clnt/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libkadm5clnt/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,6 +1,9 @@
 # $FreeBSD$
 
 LIB=	kadm5clnt
+LDFLAGS=	-Wl,--no-undefined
+LDADD=	-lcom_err -lkrb5 -lroken
+DPADD=	${LIBCOM_ERR} ${LIBKRB5} ${LIBROKEN}
 
 INCS=	admin.h \
 	kadm5-private.h \

Modified: head/kerberos5/lib/libkadm5srv/Makefile
==============================================================================
--- head/kerberos5/lib/libkadm5srv/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libkadm5srv/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,6 +1,9 @@
 # $FreeBSD$
 
 LIB=	kadm5srv
+LDFLAGS=	-Wl,--no-undefined
+LDADD=	-lcom_err -lhdb -lkrb5 -lroken
+DPADD=	${LIBCOM_ERR} ${LIBHDB} ${LIBKRB5} ${LIBROKEN}
 VERSION_MAP= ${KRB5DIR}/lib/kadm5/version-script.map
 
 SRCS=	acl.c \

Modified: head/kerberos5/lib/libkafs5/Makefile
==============================================================================
--- head/kerberos5/lib/libkafs5/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libkafs5/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,6 +1,9 @@
 # $FreeBSD$
 
 LIB=	kafs5
+LDFLAGS=	-Wl,--no-undefined
+LDADD=	-lasn1 -lkrb5 -lroken
+DPADD=	${LIBASN1} ${LIBKRB5} ${LIBROKEN}
 INCS=	kafs.h
 MAN=	kafs5.3
 

Modified: head/kerberos5/lib/libkrb5/Makefile
==============================================================================
--- head/kerberos5/lib/libkrb5/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libkrb5/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,7 +1,10 @@
 # $FreeBSD$
 
 LIB=	krb5
+LDFLAGS=	-Wl,--no-undefined
 VERSION_MAP= ${KRB5DIR}/lib/krb5/version-script.map
+LDADD=	-lasn1 -lcom_err -lcrypt -lcrypto -lhx509 -lroken
+DPADD=	${LIBASN1} ${LIBCOM_ERR} ${LIBCRYPT} ${LIBCRYPTO} ${LIBHX509} ${LIBROKEN}
 
 INCS=	heim_err.h \
 	heim_threads.h \

Modified: head/kerberos5/lib/libroken/Makefile
==============================================================================
--- head/kerberos5/lib/libroken/Makefile	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/kerberos5/lib/libroken/Makefile	Tue Sep 27 07:14:12 2011	(r225778)
@@ -1,6 +1,8 @@
 # $FreeBSD$
 
 LIB=	roken
+LDADD=	-lcrypt
+DPADD=	${LIBCRYPT}
 INCS=	roken.h roken-common.h
 
 SRCS=	base64.c \

Modified: head/tools/make_libdeps.sh
==============================================================================
--- head/tools/make_libdeps.sh	Tue Sep 27 07:06:02 2011	(r225777)
+++ head/tools/make_libdeps.sh	Tue Sep 27 07:14:12 2011	(r225778)
@@ -52,7 +52,7 @@ sed -E
     -e's;-l(ncurses|termcap)!;lib/ncurses/ncurses;g'
     -e's;-l(gcc)!;gnu/lib/lib\1;g'
     -e's;-lssp_nonshared!;gnu/lib/libssp/libssp_nonshared;g'
-    -e's;-l(asn1|heimntlm|hx509|krb5|roken)!;kerberos5/lib/lib\1;g'
+    -e's;-l(asn1|hdb|heimntlm|hx509|krb5|roken)!;kerberos5/lib/lib\1;g'
     -e's;-l(crypto|ssh|ssl)!;secure/lib/lib\1;g'
     -e's;-l([^!]+)!;lib/lib\1;g'
 "


More information about the svn-src-head mailing list