summaryrefslogtreecommitdiff
path: root/mk/check/check-shlibs-elf.awk
diff options
context:
space:
mode:
authorobache <obache>2012-06-15 14:46:53 +0000
committerobache <obache>2012-06-15 14:46:53 +0000
commit0a816948c7819fbeb0ce5a4661921cf497e739ac (patch)
tree664b42654ccd2b8b3e7875b4f672cac29954a727 /mk/check/check-shlibs-elf.awk
parent42a07379ff58bbc6fa10ce5f91f01bcc676c526f (diff)
downloadpkgsrc-0a816948c7819fbeb0ce5a4661921cf497e739ac.tar.gz
allow DSO in not only non-full dependency packages but also indirect full dependency.
Diffstat (limited to 'mk/check/check-shlibs-elf.awk')
-rw-r--r--mk/check/check-shlibs-elf.awk19
1 files changed, 17 insertions, 2 deletions
diff --git a/mk/check/check-shlibs-elf.awk b/mk/check/check-shlibs-elf.awk
index e7eca5903ca..32f44c9a477 100644
--- a/mk/check/check-shlibs-elf.awk
+++ b/mk/check/check-shlibs-elf.awk
@@ -1,4 +1,4 @@
-# $NetBSD: check-shlibs-elf.awk,v 1.3 2010/02/02 23:35:36 joerg Exp $
+# $NetBSD: check-shlibs-elf.awk,v 1.4 2012/06/15 14:46:53 obache Exp $
#
# Copyright (c) 2007 Joerg Sonnenberger <joerg@NetBSD.org>.
# All rights reserved.
@@ -89,11 +89,26 @@ function check_pkg(DSO, pkg, found) {
return 0
}
}
+ close(depends_file)
+ if (found) {
+ req_cmd = pkg_info_cmd " -qr " shquote(pkg) " 2> /dev/null"
+ while ((req_cmd | getline) > 0) {
+ dpkg = $0
+ while((getline < depends_file) > 0) {
+ if ($3 == dpkg && $1 == "full") {
+ close(depends_file)
+ close(req_cmd)
+ return 0
+ }
+ }
+ close(depends_file)
+ }
+ close(req_cmd)
+ }
if (found)
print DSO ": " pkg " is not a runtime dependency"
# Not yet:
# print DSO ": " pkg " is not a dependency"
- close(depends_file)
}
function checkshlib(DSO, needed, rpath, found, dso_rath, got_rpath) {