summaryrefslogtreecommitdiffstats
path: root/perl-install
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install')
-rw-r--r--perl-install/Makefile2
-rw-r--r--perl-install/keyboard.pm14
2 files changed, 10 insertions, 6 deletions
diff --git a/perl-install/Makefile b/perl-install/Makefile
index 1143fbd0b..7e4ebb940 100644
--- a/perl-install/Makefile
+++ b/perl-install/Makefile
@@ -64,7 +64,7 @@ get_needed_files: $(DIRS)
find auto -follow -name "*.so" >> /tmp/list
for i in $(LOCALFILES) `cat /tmp/list` ; do \
- ldd $$i 2>/dev/null | grep -v "not a dynamic" | sed -e 's/.*=> //' -e 's/ .*//' | uniq | sort >> /tmp/list; \
+ ldd $$i 2>/dev/null | grep "=>" | sed -e 's/.*=> //' -e 's/ .*//' | uniq | sort >> /tmp/list; \
done
install -d $(DEST)/etc
diff --git a/perl-install/keyboard.pm b/perl-install/keyboard.pm
index 61f7c5467..b312fc85a 100644
--- a/perl-install/keyboard.pm
+++ b/perl-install/keyboard.pm
@@ -176,15 +176,19 @@ sub loadkeys_files {
my $p = "/usr/lib/kbd/keymaps/i386/*";
my $post = ".kmap.gz";
my %trans = ("cz-latin2" => "cz-lat2");
- my @l;
+ my (@l, %l);
foreach (values %keyboards) {
local $_ = $trans{$_->[1]} || $_->[1];
my ($l) = glob("$p/$_$post");
$l or /(..)/ and ($l) = glob("$p/$1$post");
- push @l, $l if $l;
- print STDERR "unknown $_\n" if $_[0] && !$l;
- }
- @l;
+ print STDERR "unknown $_\n" if $_[0] && !$l; $l or next;
+ push @l, $l;
+ foreach (`zgrep include $l | grep "^include"`) {
+ /include\s+"(.*)"/ or die "bad line $_";
+ @l{glob("$p/$1.inc.gz")} = ();
+ }
+ }
+ @l, keys %l, map { glob("$p/$_.inc.gz") } qw(compose euro windowkeys linux-keys-bare);
}
sub lang2keyboard($) {