From 4834f1d5bb603f3f2731c2a203ba6251045de0a5 Mon Sep 17 00:00:00 2001 From: obache Date: Fri, 15 Jun 2012 14:46:53 +0000 Subject: allow DSO in not only non-full dependency packages but also indirect full dependency. --- mk/check/check-shlibs-elf.awk | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'mk/check') 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 . # 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) { -- cgit v1.2.3