summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/CHANGES4
-rw-r--r--mk/bsd.pkg.mk25
2 files changed, 27 insertions, 2 deletions
diff --git a/doc/CHANGES b/doc/CHANGES
index 0c5442ba6aa..e104c9d8a29 100644
--- a/doc/CHANGES
+++ b/doc/CHANGES
@@ -1,4 +1,4 @@
-$NetBSD: CHANGES,v 1.2856 2003/07/22 09:00:59 adam Exp $
+$NetBSD: CHANGES,v 1.2857 2003/07/22 10:14:16 agc Exp $
Changes to the packages collection and infrastructure in 2003:
@@ -2894,3 +2894,5 @@ Changes to the packages collection and infrastructure in 2003:
Updated dbh to 1.0.15 [martti 2003-07-22]
Updated gtkmm to 2.2.5 [adam 2003-07-22]
Updated cvsync to 0.24.1 [gehenna 2003-07-22]
+ bsd.pkg.mk: record the shared object "provides" and "requires"
+ information [agc 2003-07-22]
diff --git a/mk/bsd.pkg.mk b/mk/bsd.pkg.mk
index 5918b9107c0..0738e28ea3a 100644
--- a/mk/bsd.pkg.mk
+++ b/mk/bsd.pkg.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.pkg.mk,v 1.1218 2003/07/19 02:50:22 dmcmahill Exp $
+# $NetBSD: bsd.pkg.mk,v 1.1219 2003/07/22 10:12:47 agc Exp $
#
# This file is in the public domain.
#
@@ -4231,6 +4231,29 @@ fake-pkg: ${PLIST} ${DESCR} ${MESSAGE}
. ifdef USE_GMAKE
@${ECHO} "GMAKE=`${GMAKE} --version | ${GREP} Make`" >> ${BUILD_INFO_FILE}
. endif
+. if ${CHECK_SHLIBS} == "YES"
+ ${_PKG_SILENT}${_PKG_DEBUG} \
+ case "${OBJECT_FMT}" in \
+ ELF) bins=`${SETENV} PREFIX=${PREFIX} ${AWK} '/^(bin|sbin|libexec)\// { print ENVIRON["PREFIX"] "/" $$0 }' ${PLIST} || ${TRUE}`; \
+ libs=`${SETENV} PREFIX=${PREFIX} ${AWK} '/^lib\/lib.*\.so\.[0-9]+$$/ { print ENVIRON["PREFIX"] "/" $$0 }' ${PLIST} || ${TRUE}`; \
+ for i in "" $$libs; do \
+ ${TEST} "$$i" = "" && continue; \
+ ${ECHO} "PROVIDES=$$i" >> ${BUILD_INFO_FILE}; \
+ done; \
+ case "${LDD}" in \
+ "") ldd=`${TYPE} ldd | ${AWK} '{ print $$NF }'`;; \
+ *) ldd="${LDD}"; \
+ esac; \
+ if ${TEST} "$$bins" != "" -o "$$libs" != ""; then \
+ requires=`($$ldd $$bins $$libs || ${TRUE}) | ${AWK} 'NF == 3 { print $$3 }' | ${SORT} -u`; \
+ for req in "" $$requires; do \
+ ${TEST} "$$req" = "" && continue; \
+ ${ECHO} "REQUIRES=$$req" >> ${BUILD_INFO_FILE}; \
+ done; \
+ fi; \
+ ;; \
+ esac
+. endif
${_PKG_SILENT}${_PKG_DEBUG} \
${ECHO} "_PKGTOOLS_VER=${PKGTOOLS_VERSION}" >> ${BUILD_INFO_FILE}
${_PKG_SILENT}${_PKG_DEBUG} \