diff options
author | Oliver Tappe | 2008-08-28 22:33:45 +0200 |
---|---|---|
committer | Oliver Tappe | 2008-08-28 22:33:45 +0200 |
commit | 01ecaf5d636167ebbc8c17d085f3cfbddb2cadd7 (patch) | |
tree | b0f9c229eb0e582557839f42607068447bd3c5db | |
parent | The boot.slx was started too early in rcS/boot.d ... (diff) | |
download | core-01ecaf5d636167ebbc8c17d085f3cfbddb2cadd7.tar.gz core-01ecaf5d636167ebbc8c17d085f3cfbddb2cadd7.tar.xz core-01ecaf5d636167ebbc8c17d085f3cfbddb2cadd7.zip |
* implemented supported for automatic selection of the matching hwinfo version
(in initramfs/OpenSLX/MakeInitRamFS/Engine and the respective Distro classes)
* removed hwinfo binary and libhd incarnations from uclib-rootfs, as they are
no longer needed (and could in fact get in the way)
git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@2122 95ad53e4-c205-0410-b2fa-d234c58c8868
-rw-r--r-- | initramfs/OpenSLX/MakeInitRamFS/Distro/Base.pm | 8 | ||||
-rw-r--r-- | initramfs/OpenSLX/MakeInitRamFS/Distro/Debian.pm | 12 | ||||
-rw-r--r-- | initramfs/OpenSLX/MakeInitRamFS/Distro/Suse.pm | 14 | ||||
-rw-r--r-- | initramfs/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm | 12 | ||||
-rw-r--r-- | initramfs/OpenSLX/MakeInitRamFS/Engine.pm | 22 | ||||
-rwxr-xr-x | initramfs/uclib-rootfs/sbin/hwinfo | bin | 84624 -> 0 bytes | |||
l--------- | initramfs/uclib-rootfs/usr/lib/libhd.so | 1 | ||||
l--------- | initramfs/uclib-rootfs/usr/lib/libhd.so.15 | 1 | ||||
-rwxr-xr-x | initramfs/uclib-rootfs/usr/lib/libhd.so.15.3 | bin | 3203175 -> 0 bytes |
9 files changed, 68 insertions, 2 deletions
diff --git a/initramfs/OpenSLX/MakeInitRamFS/Distro/Base.pm b/initramfs/OpenSLX/MakeInitRamFS/Distro/Base.pm index 30b9d385..9a7e4966 100644 --- a/initramfs/OpenSLX/MakeInitRamFS/Distro/Base.pm +++ b/initramfs/OpenSLX/MakeInitRamFS/Distro/Base.pm @@ -37,4 +37,12 @@ sub applyChanges { } +sub determineMatchingHwinfoVersion +{ + my $self = shift; + my $distroVersion = shift; + + return '15.3'; +} + 1; diff --git a/initramfs/OpenSLX/MakeInitRamFS/Distro/Debian.pm b/initramfs/OpenSLX/MakeInitRamFS/Distro/Debian.pm index 3962a506..84d159c9 100644 --- a/initramfs/OpenSLX/MakeInitRamFS/Distro/Debian.pm +++ b/initramfs/OpenSLX/MakeInitRamFS/Distro/Debian.pm @@ -42,4 +42,16 @@ sub applyChanges return; } +sub determineMatchingHwinfoVersion +{ + my $self = shift; + my $distroVersion = shift; + + # TODO: fill this map (see Suse.pm for an example) + my %suseMap = ( + ); + return $suseMap{$distroVersion} + || $self->SUPER::determineMatchingHwinfoVersion($distroVersion); +} + 1;
\ No newline at end of file diff --git a/initramfs/OpenSLX/MakeInitRamFS/Distro/Suse.pm b/initramfs/OpenSLX/MakeInitRamFS/Distro/Suse.pm index a045fe47..daa37ab3 100644 --- a/initramfs/OpenSLX/MakeInitRamFS/Distro/Suse.pm +++ b/initramfs/OpenSLX/MakeInitRamFS/Distro/Suse.pm @@ -42,4 +42,18 @@ sub applyChanges return; } +sub determineMatchingHwinfoVersion +{ + my $self = shift; + my $distroVersion = shift; + + my %suseMap = ( + '10.2' => '13.11', + '10.3' => '14.19', + '11.0' => '15.3', + ); + return $suseMap{$distroVersion} + || $self->SUPER::determineMatchingHwinfoVersion($distroVersion); +} + 1;
\ No newline at end of file diff --git a/initramfs/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm b/initramfs/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm index 825d83c2..5c9c3da1 100644 --- a/initramfs/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm +++ b/initramfs/OpenSLX/MakeInitRamFS/Distro/Ubuntu.pm @@ -42,4 +42,16 @@ sub applyChanges return; } +sub determineMatchingHwinfoVersion +{ + my $self = shift; + my $distroVersion = shift; + + # TODO: fill this map (see Suse.pm for an example) + my %suseMap = ( + ); + return $suseMap{$distroVersion} + || $self->SUPER::determineMatchingHwinfoVersion($distroVersion); +} + 1;
\ No newline at end of file diff --git a/initramfs/OpenSLX/MakeInitRamFS/Engine.pm b/initramfs/OpenSLX/MakeInitRamFS/Engine.pm index 42ee2398..b5401acd 100644 --- a/initramfs/OpenSLX/MakeInitRamFS/Engine.pm +++ b/initramfs/OpenSLX/MakeInitRamFS/Engine.pm @@ -146,6 +146,7 @@ sub _collectCMDs $self->_writeSlxSystemConf(); $self->_copyUclibcRootfs(); + $self->_copyHwinfo(); $self->_copyDistroSpecificFiles(); $self->_copyInitramfsFiles(); @@ -263,6 +264,27 @@ sub _copyUclibcRootfs return 1; } +sub _copyHwinfo +{ + my $self = shift; + + my $baseDir = "$openslxConfig{'base-path'}/share/ramfstools/hwinfo"; + + my $version = $self->{distro}->determineMatchingHwinfoVersion( + $self->{'distro-ver'} + ); + + $self->addCMD("cp $baseDir/bin/hwinfo-$version $self->{'build-path'}/usr/bin/hwinfo"); + my $libHD = "libhd.so.$version"; + $self->addCMD("cp $baseDir/lib/$libHD $self->{'build-path'}/usr/lib"); + my $libName = $libHD; + while($libName =~ s{\.\d+$}{}g) { + $self->addCMD("ln -sf $libHD $self->{'build-path'}/usr/lib/$libName"); + } + + return 1; +} + sub _copyInitramfsFiles { my $self = shift; diff --git a/initramfs/uclib-rootfs/sbin/hwinfo b/initramfs/uclib-rootfs/sbin/hwinfo Binary files differdeleted file mode 100755 index 6cfc82f6..00000000 --- a/initramfs/uclib-rootfs/sbin/hwinfo +++ /dev/null diff --git a/initramfs/uclib-rootfs/usr/lib/libhd.so b/initramfs/uclib-rootfs/usr/lib/libhd.so deleted file mode 120000 index 7f27e910..00000000 --- a/initramfs/uclib-rootfs/usr/lib/libhd.so +++ /dev/null @@ -1 +0,0 @@ -libhd.so.15
\ No newline at end of file diff --git a/initramfs/uclib-rootfs/usr/lib/libhd.so.15 b/initramfs/uclib-rootfs/usr/lib/libhd.so.15 deleted file mode 120000 index b221b5ee..00000000 --- a/initramfs/uclib-rootfs/usr/lib/libhd.so.15 +++ /dev/null @@ -1 +0,0 @@ -libhd.so.15.3
\ No newline at end of file diff --git a/initramfs/uclib-rootfs/usr/lib/libhd.so.15.3 b/initramfs/uclib-rootfs/usr/lib/libhd.so.15.3 Binary files differdeleted file mode 100755 index 4893f0e7..00000000 --- a/initramfs/uclib-rootfs/usr/lib/libhd.so.15.3 +++ /dev/null |