summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libexec/makewhatis/OpenBSD/Makewhatis.pm53
-rw-r--r--libexec/makewhatis/OpenBSD/Makewhatis/Check.pm4
-rw-r--r--libexec/makewhatis/OpenBSD/Makewhatis/Find.pm16
-rw-r--r--libexec/makewhatis/OpenBSD/Makewhatis/Formated.pm6
-rw-r--r--libexec/makewhatis/OpenBSD/Makewhatis/Whatis.pm11
5 files changed, 52 insertions, 38 deletions
diff --git a/libexec/makewhatis/OpenBSD/Makewhatis.pm b/libexec/makewhatis/OpenBSD/Makewhatis.pm
index e62ee1d117f..3556c00737a 100644
--- a/libexec/makewhatis/OpenBSD/Makewhatis.pm
+++ b/libexec/makewhatis/OpenBSD/Makewhatis.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: Makewhatis.pm,v 1.4 2004/08/07 07:52:10 espie Exp $
+# $OpenBSD: Makewhatis.pm,v 1.5 2005/03/05 11:02:35 espie Exp $
# Copyright (c) 2000-2004 Marc Espie <espie@openbsd.org>
#
# Permission to use, copy, modify, and distribute this software for any
@@ -22,11 +22,11 @@ package OpenBSD::Makewhatis;
my ($picky, $testmode);
-# $subjects = scan_manpages($list)
+# $subjects = scan_manpages(\@list)
#
# scan a set of manpages, return list of subjects
#
-sub scan_manpages
+sub scan_manpages($)
{
my $list = shift;
local $_;
@@ -84,7 +84,7 @@ sub scan_manpages
#
# build index for $dir
#
-sub build_index
+sub build_index($)
{
require OpenBSD::Makewhatis::Find;
require OpenBSD::Makewhatis::Whatis;
@@ -95,7 +95,11 @@ sub build_index
OpenBSD::Makewhatis::Whatis::write($subjects, $dir);
}
-sub merge
+# merge($dir, \@pages)
+#
+# merge set of pages into directory index
+#
+sub merge($$)
{
require OpenBSD::Makewhatis::Whatis;
@@ -107,16 +111,20 @@ sub merge
my $whatis = "$mandir/whatis.db";
my $subjects = scan_manpages($args);
if (open(my $old, '<', $whatis)) {
- while (<$old>) {
- chomp;
- push(@$subjects, $_);
+ while (my $l = <$old>) {
+ chomp $l;
+ push(@$subjects, $l);
}
close($old);
}
OpenBSD::Makewhatis::Whatis::write($subjects, $mandir);
}
-sub remove
+# remove(dir, \@pages)
+#
+# remove set of pages from directory index
+#
+sub remove($$)
{
require OpenBSD::Makewhatis::Whatis;
@@ -126,33 +134,40 @@ sub remove
}
my $whatis = "$mandir/whatis.db";
open(my $old, '<', $whatis) or
- die "$0 $whatis to merge with";
+ die "$0: can't open $whatis to merge with: $!";
my $subjects = scan_manpages($args);
my %remove = map {$_ => 1 } @$subjects;
$subjects = [];
- while (<$old>) {
- chomp;
- push(@$subjects, $_) unless defined $remove{$_};
+ while (my $l = <$old>) {
+ chomp $l;
+ push(@$subjects, $l) unless defined $remove{$l};
}
close($old);
OpenBSD::Makewhatis::Whatis::write($subjects, $mandir);
}
-sub default_dirs
+# $dirs = default_dirs()
+#
+# read list of default directories from man.conf
+#
+sub default_dirs()
{
- local $_;
my $args=[];
open(my $conf, '<', '/etc/man.conf') or
die "$0: Can't open /etc/man.conf";
- while (<$conf>) {
- chomp;
- push(@$args, $1) if /^_whatdb\s+(.*)\/whatis\.db\s*$/;
+ while (my $l = <$conf>) {
+ chomp $l;
+ push(@$args, $1) if $l =~ m/^_whatdb\s+(.*)\/whatis\.db\s*$/;
}
close $conf;
return $args;
}
-sub makewhatis
+# makewhatis(\@args, \%opts)
+#
+# glue for front-end, see makewhatis(8)
+#
+sub makewhatis($$)
{
my ($args, $opts) = @_;
if (defined $opts->{'p'}) {
diff --git a/libexec/makewhatis/OpenBSD/Makewhatis/Check.pm b/libexec/makewhatis/OpenBSD/Makewhatis/Check.pm
index 66ee4ba12e9..96e7a574e76 100644
--- a/libexec/makewhatis/OpenBSD/Makewhatis/Check.pm
+++ b/libexec/makewhatis/OpenBSD/Makewhatis/Check.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: Check.pm,v 1.1 2004/08/06 12:05:08 espie Exp $
+# $OpenBSD: Check.pm,v 1.2 2005/03/05 11:02:35 espie Exp $
# Copyright (c) 2000-2004 Marc Espie <espie@openbsd.org>
#
# Permission to use, copy, modify, and distribute this software for any
@@ -46,7 +46,7 @@ sub found($$)
#
# reparse the subject we're about to add, and check whether it makes
# sense, e.g., is there a man page around.
-sub verify_subject
+sub verify_subject($$)
{
local $_ = shift;
my $filename = shift;
diff --git a/libexec/makewhatis/OpenBSD/Makewhatis/Find.pm b/libexec/makewhatis/OpenBSD/Makewhatis/Find.pm
index 2673b86e9c2..8d38b860637 100644
--- a/libexec/makewhatis/OpenBSD/Makewhatis/Find.pm
+++ b/libexec/makewhatis/OpenBSD/Makewhatis/Find.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: Find.pm,v 1.1 2004/08/06 12:05:08 espie Exp $
+# $OpenBSD: Find.pm,v 1.2 2005/03/05 11:02:35 espie Exp $
# Copyright (c) 2000-2004 Marc Espie <espie@openbsd.org>
#
# Permission to use, copy, modify, and distribute this software for any
@@ -25,19 +25,19 @@ use File::Find;
#
# find all manpages under $dir, trim some duplicates.
#
-sub find_manpages
+sub find_manpages($)
{
my $dir = shift;
my ($list, %nodes);
$list=[];
find(
sub {
- return unless /\.[\dln]\w*(?:\.Z|\.gz)?$/;
- return unless -f $_;
- my $unique = (stat _)[0]."/".(stat _)[1];
- return if defined $nodes{$unique};
- $nodes{$unique} = 1;
- push(@$list, $File::Find::name);
+ return unless m/\.[\dln]\w*(?:\.Z|\.gz)?$/;
+ return unless -f $_;
+ my $unique = (stat _)[0]."/".(stat _)[1];
+ return if defined $nodes{$unique};
+ $nodes{$unique} = 1;
+ push(@$list, $File::Find::name);
}, $dir);
return $list;
}
diff --git a/libexec/makewhatis/OpenBSD/Makewhatis/Formated.pm b/libexec/makewhatis/OpenBSD/Makewhatis/Formated.pm
index 127bf9681f6..f909fe08e5c 100644
--- a/libexec/makewhatis/OpenBSD/Makewhatis/Formated.pm
+++ b/libexec/makewhatis/OpenBSD/Makewhatis/Formated.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: Formated.pm,v 1.2 2004/12/24 00:00:04 espie Exp $
+# $OpenBSD: Formated.pm,v 1.3 2005/03/05 11:02:35 espie Exp $
# Copyright (c) 2000-2004 Marc Espie <espie@openbsd.org>
#
# Permission to use, copy, modify, and distribute this software for any
@@ -18,7 +18,7 @@ use strict;
use warnings;
package OpenBSD::Makewhatis::Formated;
-# add_formated_subject($subjects, $_, $section):
+# add_formated_subject($subjects, $_, $section, $filename, $picky):
# add subject $_ to the list of current $subjects, in section $section.
#
sub add_formated_subject
@@ -73,7 +73,7 @@ sub handle
my $foundname = 0;
while (<$file>) {
chomp;
- if (/^$/) {
+ if (m/^$/) {
# perl aggregates several subjects in one manpage
# so we don't stop after we've got one subject
add_formated_subject(\@lines, $subject, $section, $filename, $picky)
diff --git a/libexec/makewhatis/OpenBSD/Makewhatis/Whatis.pm b/libexec/makewhatis/OpenBSD/Makewhatis/Whatis.pm
index 7f5111fb179..308e7c7a9ab 100644
--- a/libexec/makewhatis/OpenBSD/Makewhatis/Whatis.pm
+++ b/libexec/makewhatis/OpenBSD/Makewhatis/Whatis.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: Whatis.pm,v 1.2 2004/08/24 08:29:30 espie Exp $
+# $OpenBSD: Whatis.pm,v 1.3 2005/03/05 11:02:35 espie Exp $
# Copyright (c) 2000-2004 Marc Espie <espie@openbsd.org>
#
# Permission to use, copy, modify, and distribute this software for any
@@ -33,7 +33,6 @@ sub write
{
my ($list, $dir) = @_;
my $f = "$dir/whatis.db";
- local $_;
my ($out, $tempname);
($out, $tempname) = tempfile('/tmp/makewhatis.XXXXXXXXXX') or die "$0: Can't open temporary file";
@@ -41,10 +40,10 @@ sub write
my @sorted = sort @$list;
my $last;
- while ($_ = shift @sorted) {
- next if length > MAXLINELEN;
- print $out $_, "\n" unless defined $last and $_ eq $last;
- $last = $_;
+ while (my $l = shift @sorted) {
+ next if length $l > MAXLINELEN;
+ print $out $l, "\n" unless defined $last and $l eq $last;
+ $last = $l;
}
close $out;
if (compare($tempname, $f) == 0) {