Hi, Currently, when out-of-date(1) is used, with packages installed from "mystuff" directory, these packages are reported as "not found in the official ports tree".
I don't know if I miss-used out-of-date or not... In doubt I ask. Feel free to correct me if need. Here, a naive proposal to include support of mystuff directory in out-of-date(1). Index: out-of-date =================================================================== RCS file: /cvs/ports/infrastructure/bin/out-of-date,v retrieving revision 1.5 diff -u -p -r1.5 out-of-date --- out-of-date 7 May 2012 15:57:51 -0000 1.5 +++ out-of-date 16 Dec 2012 10:56:36 -0000 @@ -82,6 +82,8 @@ sub collect_port_versions my ($dir) = split(/,/, $subdir); if (-d "$portsdir/$dir") { push(@subdirs, $subdir); + } elsif (-d "$portsdir/mystuff/$dir") { + push(@subdirs, $subdir); } else { push(@$notfound, $subdir); } An other proposal is to skip any directory existence test, and push $subdir in @$notfound, during the parsing of make output. It would allow to used out-of-date(1) in conjonction with some customized mk.conf (usage of PORTSDIR_PATH for example, and "mystuff" directory in particular). Index: out-of-date =================================================================== RCS file: /cvs/ports/infrastructure/bin/out-of-date,v retrieving revision 1.5 diff -u -p -r1.5 out-of-date --- out-of-date 7 May 2012 15:57:51 -0000 1.5 +++ out-of-date 16 Dec 2012 13:10:55 -0000 @@ -77,24 +77,14 @@ sub collect_port_versions { my ($pkg, $portsdir, $notfound) = @_; - my @subdirs = (); - for my $subdir (keys %$pkg) { - my ($dir) = split(/,/, $subdir); - if (-d "$portsdir/$dir") { - push(@subdirs, $subdir); - } else { - push(@$notfound, $subdir); - } - } - - my $cmd = "cd $portsdir && SUBDIR=\"".join(' ', @subdirs) + my $cmd = "cd $portsdir && SUBDIR=\"".join(' ', keys %$pkg) ."\" FULLPATH=Yes REPORT_PROBLEM=true make ".'show=FULLPKGNAME\${SUBPACKAGE} ' ."2>&1"; my $port = {}; my $error = {}; my $count = 0; - my $total = scalar @subdirs; + my $total = scalar keys %$pkg; $state->progress->set_header("Collecting port versions"); my $fh = open_cmd($cmd); @@ -105,6 +95,12 @@ sub collect_port_versions $subdir = $1; $count++; $state->progress->show($count, $total); + next; + } + if (/^\>\> Broken dependency:\s+(\S+)\s+non existent/) { + $count++; + $state->progress->show($count, $total); + push(@$notfound, $1); next; } next unless $_ or $subdir; -- Sébastien Marie