summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStew Benedict <stewb@mandriva.org>2001-10-06 00:26:02 +0000
committerStew Benedict <stewb@mandriva.org>2001-10-06 00:26:02 +0000
commit47d9286ecee626380ef4ac2d922c92d515a92878 (patch)
tree833523a30b211e2d46aa468cde78f3f3e33e5e5b
parent61d0b5b9bfa9d639bd01266fc77ecda0c7cd5cf4 (diff)
downloaddrakx-47d9286ecee626380ef4ac2d922c92d515a92878.tar
drakx-47d9286ecee626380ef4ac2d922c92d515a92878.tar.gz
drakx-47d9286ecee626380ef4ac2d922c92d515a92878.tar.bz2
drakx-47d9286ecee626380ef4ac2d922c92d515a92878.tar.xz
drakx-47d9286ecee626380ef4ac2d922c92d515a92878.zip
updates to accomodate IBM PPC systems with DOS partition table
-rw-r--r--perl-install/partition_table.pm3
-rw-r--r--perl-install/partition_table_raw.pm2
2 files changed, 4 insertions, 1 deletions
diff --git a/perl-install/partition_table.pm b/perl-install/partition_table.pm
index a9413209e..4e5dae1ac 100644
--- a/perl-install/partition_table.pm
+++ b/perl-install/partition_table.pm
@@ -327,7 +327,8 @@ sub assign_device_numbers {
my $start = 1;
#- on PPC we need to assign device numbers to the holes too - big FUN!
- if (arch() =~ /ppc/) {
+ #- not if it's an IBM machine using a DOS partition table though
+ if (arch() =~ /ppc/ && detect_devices::get_mac_model() !~ /^IBM/) {
#- first sort the normal parts
$hd->{primary}{normal} = [sort { $a->{start} <=> $b->{start} } @{$hd->{primary}{normal}} ];
diff --git a/perl-install/partition_table_raw.pm b/perl-install/partition_table_raw.pm
index 5a5f27f1b..7fc27c31c 100644
--- a/perl-install/partition_table_raw.pm
+++ b/perl-install/partition_table_raw.pm
@@ -113,6 +113,8 @@ sub zero_MBR {
my ($hd) = @_;
#- force the standard partition type for the architecture
my $type = arch() eq "alpha" ? "bsd" : arch() =~ /^sparc/ ? "sun" : arch() eq "ppc" ? "mac" : "dos";
+ #- override standard mac type on PPC for IBM machines to dos
+ $type = "dos" if (arch() =~ /ppc/ && detect_devices::get_mac_model() =~ /^IBM/);
require("partition_table_$type.pm");
bless $hd, "partition_table_$type";
$hd->{primary} = $hd->clear_raw();