From d488dbbcf96a1ba339b663cfec33d74302d7a0f8 Mon Sep 17 00:00:00 2001 From: Olivier Blin Date: Mon, 11 Feb 2008 23:16:54 +0000 Subject: do not modify modules.dep to load nls modules for fat, but inline in code (to keep a "clean" modules.dep) --- kernel/modules.pl | 5 ++--- mdk-stage1/mount.c | 2 ++ perl-install/modules.pm | 1 + 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/kernel/modules.pl b/kernel/modules.pl index 0491e0c09..de6ce1b7b 100644 --- a/kernel/modules.pl +++ b/kernel/modules.pl @@ -37,7 +37,8 @@ my ($f, @para) = @ARGV; $::{$f}->(@para); sub modules() { - map { category2modules($_) } split(' ', $images_cat); + my @nls_modules = ('nls_cp437', 'nls_iso8859_1'); + @nls_modules, map { category2modules($_) } split(' ', $images_cat); } sub remove_unneeded_modules { @@ -73,8 +74,6 @@ sub filter_modules_dep { my ($module, @deps) = map { m!.*/(.*)\.k?o(\.gz)$! && $1 } $f, split(' ', $d); if (member($module, 'plip', 'ppa', 'imm')) { @deps = map { $_ eq 'parport' ? 'parport_pc' : $_ } @deps; - } elsif ($module eq 'vfat') { - push @deps, 'nls_cp437', 'nls_iso8859-1'; } join(' ', "$module:", @deps); } @l; diff --git a/mdk-stage1/mount.c b/mdk-stage1/mount.c index 41fbb99f2..4967a2a6b 100644 --- a/mdk-stage1/mount.c +++ b/mdk-stage1/mount.c @@ -193,6 +193,8 @@ int my_mount(char *dev, char *location, char *fs, int force_rw) #ifndef DISABLE_MEDIAS if (!strcmp(fs, "vfat")) { + my_insmod("nls_cp437", ANY_DRIVER_TYPE, NULL, 1); + my_insmod("nls_iso8859_1", ANY_DRIVER_TYPE, NULL, 1); my_insmod("vfat", ANY_DRIVER_TYPE, NULL, 1); opts = "check=relaxed"; } diff --git a/perl-install/modules.pm b/perl-install/modules.pm index 7be63f2c8..d6e9e10fb 100644 --- a/perl-install/modules.pm +++ b/perl-install/modules.pm @@ -90,6 +90,7 @@ sub load_with_options { my ($l, $h_options) = @_; my @l = map { + if_($_ eq 'vfat', 'nls_cp437', 'nls_iso8859_1'), dependencies_closure(cond_mapping_24_26($_)); } @$l; -- cgit v1.2.1