diff options
author | Thierry.Vignaud <thierry.vignaud@gmail.com> | 2014-05-26 14:11:43 +0200 |
---|---|---|
committer | Thierry Vignaud <thierry.vignaud@gmail.com> | 2014-05-26 22:15:28 +0200 |
commit | 6d3faeb9846f336be402f1acab8ffabf3233560f (patch) | |
tree | a806282f568f24375418408581da63ef1d32baf4 /perl-install | |
parent | 645d131e5297764a853d504366f409b3952760b1 (diff) | |
download | drakx-6d3faeb9846f336be402f1acab8ffabf3233560f.tar drakx-6d3faeb9846f336be402f1acab8ffabf3233560f.tar.gz drakx-6d3faeb9846f336be402f1acab8ffabf3233560f.tar.bz2 drakx-6d3faeb9846f336be402f1acab8ffabf3233560f.tar.xz drakx-6d3faeb9846f336be402f1acab8ffabf3233560f.zip |
drop (broken) support for Alpha, PPC, Sparc & most of IA64
Including Xsun, silo & yaboot support
Rationale: it's unused/unmaintained for years and those arches are beyond
any hope of being usefull any day...
They just got in the way...
Part of IA64 support is still kept (eg: support for GPT, EFI, right xorg
driver at install, ...) as it might be usefull to extend to other arches
Next to consider: Xbox?
Diffstat (limited to 'perl-install')
-rw-r--r-- | perl-install/NEWS | 1 | ||||
-rw-r--r-- | perl-install/any.pm | 64 | ||||
-rw-r--r-- | perl-install/bootloader.pm | 174 | ||||
-rw-r--r-- | perl-install/cpufreq.pm | 11 | ||||
-rw-r--r-- | perl-install/detect_devices.pm | 20 | ||||
-rw-r--r-- | perl-install/devices.pm | 1 | ||||
-rw-r--r-- | perl-install/diskdrake/hd_gtk.pm | 2 | ||||
-rw-r--r-- | perl-install/diskdrake/interactive.pm | 14 | ||||
-rw-r--r-- | perl-install/fs/any.pm | 4 | ||||
-rw-r--r-- | perl-install/fs/partitioning_wizard.pm | 8 | ||||
-rw-r--r-- | perl-install/fs/type.pm | 35 | ||||
-rw-r--r-- | perl-install/fsedit.pm | 4 | ||||
-rw-r--r-- | perl-install/install/NEWS | 1 | ||||
-rw-r--r-- | perl-install/install/any.pm | 6 | ||||
-rw-r--r-- | perl-install/install/share/list.xml | 19 | ||||
-rw-r--r-- | perl-install/install/steps.pm | 4 | ||||
-rw-r--r-- | perl-install/install/steps_gtk.pm | 7 | ||||
-rw-r--r-- | perl-install/install/steps_interactive.pm | 36 | ||||
-rw-r--r-- | perl-install/modules.pm | 9 | ||||
-rw-r--r-- | perl-install/partition_table.pm | 45 | ||||
-rw-r--r-- | perl-install/partition_table/raw.pm | 4 |
21 files changed, 43 insertions, 426 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS index b6db87483..f01c4c215 100644 --- a/perl-install/NEWS +++ b/perl-install/NEWS @@ -1,4 +1,5 @@ - add some POD documentation +- drop (broken) support for Alpha, PPC, Sparc & IA64 - fix detecting some UPS devices (mga#13424) - drakbug: o fix some package names after the mdv->mga fork diff --git a/perl-install/any.pm b/perl-install/any.pm index 1d5eb104b..80962f0ff 100644 --- a/perl-install/any.pm +++ b/perl-install/any.pm @@ -279,11 +279,6 @@ Assign a new Volume ID?", $dev)))) { $in->ask_warn('', [ N("Installation of bootloader failed. The following error occurred:"), $err ]); return; } - } elsif (arch() =~ /ppc/) { - if (detect_devices::get_mac_model() !~ /IBM/) { - my $of_boot = bootloader::dev2yaboot($b->{boot}); - $in->ask_warn('', N("You may need to change your Open Firmware boot-device to\n enable the bootloader. If you do not see the bootloader prompt at\n reboot, hold down Command-Option-O-F at reboot and enter:\n setenv boot-device %s,\\\\:tbxi\n Then type: shut-down\nAt your next boot you should see the bootloader prompt.", $of_boot)); - } } 1; } @@ -295,7 +290,7 @@ sub setupBootloader_simple { require bootloader; bootloader::ensafe_first_bios_drive($hds) - || $b->{bootUnsafe} || arch() =~ /ppc/ or return 1; #- default is good enough + || $b->{bootUnsafe} or return 1; #- default is good enough if (arch() !~ /ia64/) { setupBootloader__mbr_or_not($in, $b, $hds, $fstab) or return 0; @@ -311,8 +306,7 @@ sub setupBootloader_simple { sub setupBootloader__boot_bios_drive { my ($in, $b, $hds) = @_; - if (arch() =~ /ppc/ || - !is_empty_hash_ref($b->{bios})) { + if (!is_empty_hash_ref($b->{bios})) { #- some bios mapping already there return 1; } elsif (bootloader::mixed_kind_of_disks($hds) && $b->{boot} =~ /\d$/) { #- on a partition @@ -349,14 +343,6 @@ sub setupBootloader__mbr_or_not { log::l("setupBootloader__mbr_or_not"); - if (arch() =~ /ppc/) { - if (defined $partition_table::mac::bootstrap_part) { - $b->{boot} = $partition_table::mac::bootstrap_part; - log::l("set bootstrap to $b->{boot}"); - } else { - die "no bootstrap partition - yaboot.conf creation failed"; - } - } else { my $floppy = detect_devices::floppy(); my @l = ( @@ -381,15 +367,9 @@ sub setupBootloader__mbr_or_not { #- remove bios mapping if the user changed the boot device delete $b->{bios} if $new_boot && $new_boot ne $b->{boot}; $b->{boot} = $new_boot or return; - } 1; } -sub get_apple_boot_parts { - my ($fstab) = @_; - map { "/dev/$_" } (map { $_->{device} } (grep { isAppleBootstrap($_) } @$fstab)); -} - sub setupBootloader__general { my ($in, $b, $all_hds, $fstab, $_security) = @_; @@ -404,7 +384,6 @@ sub setupBootloader__general { $b->{password2} ||= $b->{password} ||= ''; $::Wizard_title = N("Boot Style Configuration"); - if (arch() !~ /ppc/) { my (@boot_devices, %boot_devices); foreach (bootloader::allowed_boot_parts($b, $all_hds)) { my $dev = "/dev/$_->{device}"; @@ -448,23 +427,6 @@ sub setupBootloader__general { } }, { label => N("Password (again)"), val => \$b->{password2}, hidden => 1 }, ]) or return 0; - } else { - $b->{boot} = $partition_table::mac::bootstrap_part; - $in->ask_from_({ messages => N("Bootloader main options"), - title => N("Bootloader main options"), - interactive_help_id => 'setupYabootGeneral', - }, [ - { label => N("Bootloader to use"), val => \$b->{method}, - list => \@method_choices, format => \&bootloader::method2text }, - { label => N("Init Message"), val => \$b->{'init-message'} }, - { label => N("Boot device"), val => \$b->{boot}, list => [ get_apple_boot_parts($fstab) ] }, - { label => N("Open Firmware Delay"), val => \$b->{delay} }, - { label => N("Kernel Boot Timeout"), val => \$b->{timeout} }, - { label => N("Enable CD Boot?"), val => \$b->{enablecdboot}, type => "bool" }, - { label => N("Enable OF Boot?"), val => \$b->{enableofboot}, type => "bool" }, - { label => N("Default OS?"), val => \$b->{defaultos}, list => [ 'linux', 'macos', 'macosx', 'darwin' ] }, - ]) or return 0; - } #- remove bios mapping if the user changed the boot device delete $b->{bios} if $b->{boot} ne $prev_boot; @@ -535,9 +497,7 @@ sub setupBootloader__entries { { label => N("Xen append"), val => \$e->{xen_append} } ), if_($b->{password}, { label => N("Requires password to boot"), val => \$e->{lock}, type => "bool" }), - if_(arch() !~ /ppc|ia64/, { label => N("Video mode"), val => \$vga, list => [ '', Xconfig::resolution_and_depth::bios_vga_modes() ], format => \&Xconfig::resolution_and_depth::to_string, advanced => 1 }, -), { label => N("Initrd"), val => \$e->{initrd}, list => [ map { if_(/^initrd/, "/boot/$_") } all("$::prefix/boot") ], not_edit => 0, advanced => 1 }, { label => N("Network profile"), val => \$netprofile, list => [ sort(uniq('', $netprofile, network::network::netprofile_list())) ], advanced => 1 }, ); @@ -546,26 +506,15 @@ sub setupBootloader__entries { { label => N("Root"), val => \$e->{kernel_or_dev}, list => [ map { "/dev/$_->{device}" } @$fstab, detect_devices::floppies() ] }, ); } - if (arch() !~ /ppc/) { @l = ( { label => N("Label"), val => \$e->{label} }, @l, { text => N("Default"), val => \$default, type => 'bool' }, ); - } else { - unshift @l, { label => N("Label"), val => \$e->{label}, list => ['macos', 'macosx', 'darwin'] }; - if ($e->{type} eq "image") { - @l = ({ label => N("Label"), val => \$e->{label} }, - (@l[1..2], { label => N("Append"), val => \$append }), - { label => N("NoVideo"), val => \$e->{novideo}, type => 'bool' }, - { text => N("Default"), val => \$default, type => 'bool' } - ); - } - } $in->ask_from_( { - interactive_help_id => arch() =~ /ppc/ ? 'setupYabootAddEntry' : 'setupBootloaderAddEntry', + interactive_help_id => 'setupBootloaderAddEntry', callbacks => { complete => sub { $e->{label} or $in->ask_warn('', N("Empty label not allowed")), return 1; @@ -589,8 +538,7 @@ sub setupBootloader__entries { my @labels = map { $_->{label} } @{$b->{entries}}; my ($e, $prefix); if ($in->ask_from_list_('', N("Which type of entry do you want to add?"), - [ N_("Linux"), arch() =~ /sparc/ ? N_("Other OS (SunOS...)") : arch() =~ /ppc/ ? - N_("Other OS (MacOS...)") : N_("Other OS (Windows...)") ] + [ N_("Linux"), N_("Other OS (Windows...)") ] ) eq "Linux") { $e = { type => 'image', root => '/dev/' . fs::get::root($fstab)->{device}, #- assume a good default. @@ -598,7 +546,7 @@ sub setupBootloader__entries { $prefix = "linux"; } else { $e = { type => 'other' }; - $prefix = arch() =~ /sparc/ ? "sunos" : arch() =~ /ppc/ ? "macos" : "windows"; + $prefix = "windows"; } $e->{label} = $prefix; for (my $nb = 0; member($e->{label}, @labels); $nb++) { @@ -1285,7 +1233,7 @@ sub report_bug { header("lspci"), detect_devices::stringlist(), header("pci_devices"), cat_("/proc/bus/pci/devices"), header("dmidecode"), arch() =~ /86/ ? `dmidecode` : (), - header("fdisk"), arch() =~ /ppc/ ? `pdisk -l` : `fdisk -l`, + header("fdisk"), `fdisk -l`, header("scsi"), cat_("/proc/scsi/scsi"), header("/sys/bus/scsi/devices"), -d '/sys/bus/scsi/devices' ? `ls -l /sys/bus/scsi/devices` : (), header("lsmod"), cat_("/proc/modules"), diff --git a/perl-install/bootloader.pm b/perl-install/bootloader.pm index ce39ac12d..292783936 100644 --- a/perl-install/bootloader.pm +++ b/perl-install/bootloader.pm @@ -245,7 +245,7 @@ sub read { if (m!/fd\d+$!) { warn "not checking the method on floppy, assuming $main_method is right\n"; $main_method; - } elsif (member($main_method, qw(yaboot cromwell silo pmon2000 uboot))) { + } elsif (member($main_method, qw(cromwell pmon2000 uboot))) { #- not checking, there's only one bootloader anyway :) $main_method; } elsif (my $type = partition_table::raw::typeOfMBR($_)) { @@ -511,33 +511,6 @@ sub read_grub_menu_lst { \%b; } -sub yaboot2dev { - my ($of_path) = @_; - find { dev2yaboot($_) eq $of_path } map { "/dev/$_->{dev}" } fs::proc_partitions::read_raw(); -} - -# assumes file is in /boot -# to do: use yaboot2dev for files as well -#- example of of_path: /pci@f4000000/ata-6@d/disk@0:3,/initrd-2.6.8.1-8mdk.img -sub yaboot2file { - my ($of_path) = @_; - - if ($of_path =~ /,/) { - "$::prefix/boot/" . basename($of_path); - } else { - yaboot2dev($of_path); - } -} - -sub read_silo() { - my $bootloader = read_lilo_like("/boot/silo.conf", sub { - my ($f) = @_; - "/boot$f"; - }); - $bootloader->{method} = 'silo'; - $bootloader; -} - # FIXME: actually read back previous conf sub read_pmon2000() { +{ method => 'pmon2000' }; @@ -550,11 +523,6 @@ sub read_cromwell() { } -sub read_yaboot() { - my $bootloader = read_lilo_like("/etc/yaboot.conf", \&yaboot2file); - $bootloader->{method} = 'yaboot'; - $bootloader; -} sub read_lilo() { my $bootloader = read_lilo_like("/etc/lilo.conf", sub { $_[0] }); @@ -848,8 +816,6 @@ sub add_kernel { $v->{append} = pack_append($simple, $dict); } - #- new versions of yaboot do not handle symlinks - $b_nolink ||= arch() =~ /ppc/; $b_no_initrd //= arch() =~ /mips|arm/ && !detect_devices::is_mips_gdium(); $b_nolink ||= $kernel_str->{use_long_name}; @@ -1114,7 +1080,7 @@ Provides a description text for Lilo sub suggest_message_text { my ($bootloader) = @_; - if (!$bootloader->{message} && !$bootloader->{message_text} && arch() !~ /ia64/) { + if (!$bootloader->{message} && !$bootloader->{message_text}) { my $msg_en = #-PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit) N_("Welcome to the operating system chooser! @@ -1142,8 +1108,6 @@ sub suggest { my $root_part = fs::get::root($fstab); my $root = isLoopback($root_part) ? '/dev/loop7' : fs::wild_device::from_part('', $root_part); my $boot = fs::get::root($fstab, 'boot')->{device}; - #- PPC xfs module requires enlarged initrd - my $xfsroot = $root_part->{fs_type} eq 'xfs'; my $mbr; # If installing onto an USB drive, put the mbr there, else on the first non removable drive @@ -1154,33 +1118,18 @@ sub suggest { } my ($onmbr, $unsafe) = $bootloader->{crushMbr} ? (1, 0) : suggest_onmbr($mbr); - add2hash_($bootloader, arch() =~ /ppc/ ? - { - defaultos => "linux", - entries => [], - 'init-message' => "Welcome to %s!", - delay => 30, #- OpenFirmware delay - timeout => 50, - enableofboot => 1, - enablecdboot => 1, - if_(detect_devices::get_mac_model() =~ /IBM/, - boot => "/dev/sda1", - ), - xfsroot => $xfsroot, - } : + add2hash_($bootloader, { bootUnsafe => $unsafe, entries => [], timeout => $onmbr && 10, nowarn => 1, - if_(arch() !~ /ia64/, boot => "/dev/" . ($onmbr ? $mbr->{device} : $boot), map => "/boot/map", compact => 1, 'large-memory' => 1, color => 'black/cyan yellow/cyan', 'menu-scheme' => 'wb:bw:wb:bw' - ), }); suggest_message_text($bootloader); @@ -1218,16 +1167,6 @@ sub suggest { { root => $root, label => 'failsafe', append => 'failsafe' }) if @kernels; - if (arch() =~ /ppc/) { - #- if we identified a MacOS partition earlier - add it - if (defined $partition_table::mac::macos_part) { - add_entry($bootloader, - { - type => "macos", - kernel_or_dev => $partition_table::mac::macos_part - }); - } - } elsif (arch() !~ /ia64/) { #- search for dos (or windows) boot partition. Do not look in extended partitions! my @windows_boot_parts = grep { $_->{active} @@ -1246,7 +1185,6 @@ sub suggest { makeactive => 1, }); } @windows_boot_parts; - } my @preferred = map { "linux-$_" } 'p3-smp-64GB', 'secure', 'enterprise', 'smp', 'i686-up-4GB'; if (my $preferred = find { get_label($_, $bootloader) } @preferred) { @@ -1313,17 +1251,12 @@ sub method2text { 'grub2' => N("GRUB2 with graphical menu"), 'grub-graphic' => N("GRUB with graphical menu"), 'grub-menu' => N("GRUB with text menu"), - 'yaboot' => N("Yaboot"), - 'silo' => N("SILO"), }->{$method}; } sub method_choices_raw { my ($b_prefix_mounted) = @_; detect_devices::is_xbox() ? 'cromwell' : - arch() =~ /ppc/ ? 'yaboot' : - arch() =~ /ia64/ ? 'lilo' : - arch() =~ /sparc/ ? 'silo' : arch() =~ /mips/ ? 'pmon2000' : arch() =~ /arm/ ? 'uboot' : ( @@ -1370,111 +1303,12 @@ sub keytable { -r "$::prefix/$f" && $f; } -sub dev2yaboot { - my ($dev) = @_; - - devices::make("$::prefix$dev"); #- create it in the chroot - - my $of_dev; - run_program::rooted_or_die($::prefix, "/usr/sbin/ofpath", ">", \$of_dev, $dev); - chomp($of_dev); - log::l("OF Device: $of_dev"); - $of_dev; -} - sub check_enough_space() { my $e = "$::prefix/boot/.enough_space"; output $e, 1; -s $e or die N("not enough room in /boot"); unlink $e; } -sub write_yaboot { - my ($bootloader, $all_hds) = @_; - - my $fstab = [ fs::get::fstab($all_hds) ]; - - my $file2yaboot = sub { - my ($part, $file) = fs::get::file2part($fstab, $_[0]); - dev2yaboot('/dev/' . $part->{device}) . "," . $file; - }; - - #- do not write yaboot.conf for old-world macs - my $mac_type = detect_devices::get_mac_model(); - return if $mac_type =~ /Power Macintosh/; - - $bootloader->{prompt} ||= $bootloader->{timeout}; - - if ($bootloader->{message_text}) { - eval { output("$::prefix/boot/message", $bootloader->{message_text}) } - and $bootloader->{message} = '/boot/message'; - } - - my @conf; - - if (!get_label($bootloader->{default}, $bootloader)) { - log::l("default bootloader entry $bootloader->{default} is invalid, choosing another one"); - $bootloader->{default} = $bootloader->{entries}[0]{label}; - } - push @conf, "# yaboot.conf - generated by DrakX/drakboot"; - push @conf, "# WARNING: do not forget to run ybin after modifying this file\n"; - push @conf, "default=" . make_label_lilo_compatible($bootloader->{default}) if $bootloader->{default}; - push @conf, sprintf('init-message="\n%s\n"', $bootloader->{'init-message'}) if $bootloader->{'init-message'}; - - if ($bootloader->{boot}) { - push @conf, "boot=$bootloader->{boot}"; - push @conf, "ofboot=" . dev2yaboot($bootloader->{boot}) if $mac_type !~ /IBM/; - } else { - die "no bootstrap partition defined."; - } - - push @conf, map { "$_=$bootloader->{$_}" } grep { $bootloader->{$_} } (qw(delay timeout), if_($mac_type !~ /IBM/, 'defaultos')); - push @conf, "install=/usr/lib/yaboot/yaboot"; - if ($mac_type =~ /IBM/) { - push @conf, 'nonvram'; - } else { - push @conf, 'magicboot=/usr/lib/yaboot/ofboot'; - push @conf, grep { $bootloader->{$_} } qw(enablecdboot enableofboot); - } - foreach my $entry (@{$bootloader->{entries}}) { - - if ($entry->{type} eq "image") { - push @conf, "$entry->{type}=" . $file2yaboot->($entry->{kernel_or_dev}); - my @entry_conf; - push @entry_conf, "label=" . make_label_lilo_compatible($entry->{label}); - push @entry_conf, "root=$entry->{root}"; - push @entry_conf, "initrd=" . $file2yaboot->($entry->{initrd}) if $entry->{initrd}; - #- xfs module on PPC requires larger initrd - say 6MB? - push @entry_conf, "initrd-size=6144" if $bootloader->{xfsroot}; - push @entry_conf, qq(append=" $entry->{append}") if $entry->{append}; - push @entry_conf, grep { $entry->{$_} } qw(read-write read-only); - push @conf, map { "\t$_" } @entry_conf; - } else { - my $of_dev = dev2yaboot($entry->{kernel_or_dev}); - push @conf, "$entry->{type}=$of_dev"; - } - } - my $f = "$::prefix/etc/yaboot.conf"; - log::l("writing yaboot config to $f"); - renamef($f, "$f.old"); - output($f, map { "$_\n" } @conf); -} - -sub install_yaboot { - my ($bootloader, $all_hds) = @_; - log::l("Installing boot loader..."); - write_yaboot($bootloader, $all_hds); - when_config_changed_yaboot($bootloader); -} -sub when_config_changed_yaboot { - my ($bootloader) = @_; - $::testing and return; - if (defined $partition_table::mac::new_bootstrap) { - run_program::run("hformat", $bootloader->{boot}) or die "hformat failed"; - } - my $error; - run_program::rooted($::prefix, "/usr/sbin/ybin", "2>", \$error) or die "ybin failed: $error"; -} - sub install_pmon2000 { my ($_bootloader, $_all_hds) = @_; log::l("Mips/pmon2000 - nothing to install..."); @@ -1700,7 +1534,7 @@ sub install_raw_lilo { sub when_config_changed_lilo { my ($bootloader) = @_; - if (!$::testing && arch() !~ /ia64/ && $bootloader->{method} =~ /lilo/) { + if (!$::testing && $bootloader->{method} =~ /lilo/) { log::l("Installing boot loader on $bootloader->{boot}..."); install_raw_lilo($bootloader->{force_lilo_answer}); } diff --git a/perl-install/cpufreq.pm b/perl-install/cpufreq.pm index 2c13c4865..bbcf56700 100644 --- a/perl-install/cpufreq.pm +++ b/perl-install/cpufreq.pm @@ -74,15 +74,6 @@ sub probe_gsx() { find_pci_device([ 0x1078, 0x0100 ], [ 0x1078, 0x0002 ], [ 0x1078, 0x0000 ]); } -sub probe_powerpc() { - arch() =~ /ppc/ && any { - member($_->{motherboard}, ('PowerBook3,4', 'PowerBook3,5', 'PowerBook4,1', 'PowerBook3,2', 'MacRISC3')) && - # Kernel contains a special case for the supported 750FX, - # not sure if the cpu name can be used, so use same test as kernel - first($_->{revision} =~ /\bpvr\s+(\d+)\b/) == 7000; - } get_cpus(); -} - sub probe_p4() { any { get_vendor($_) eq "Intel" && ( @@ -170,7 +161,7 @@ my @governor_modules = map { "cpufreq_$_" } qw(powersave conservative ondemand); sub get_modules() { my $module; - if (probe_powerpc() || ($module = find_driver())) { + if ($module = find_driver()) { return if_($module, $module), @governor_modules; } (); diff --git a/perl-install/detect_devices.pm b/perl-install/detect_devices.pm index 7eaf18ab6..9908497cf 100644 --- a/perl-install/detect_devices.pm +++ b/perl-install/detect_devices.pm @@ -474,15 +474,6 @@ sub getMmcBlk() { glob("/sys/bus/mmc/devices/*/block/*"); } -# cpu_name : arch() =~ /^alpha/ ? "cpu " : -# arch() =~ /^ppc/ ? "processor" : "vendor_id" - -# cpu_model : arch() =~ /^alpha/ ? "cpu model" : -# arch() =~ /^ppc/ ? "cpu " : "model name" - -# cpu_freq = arch() =~ /^alpha/ ? "cycle frequency [Hz]" : -# arch() =~ /^ppc/ ? "clock" : "cpu MHz" - =item getCPUs() Returns a list of all CPUs. @@ -521,9 +512,6 @@ sub probe_category { require list_modules; my @modules = list_modules::category2modules($category); - if_($category =~ /sound/ && arch() =~ /ppc/ && get_mac_model() !~ /IBM/, - { driver => 'snd_powermac', description => 'Macintosh built-in' }, - ), grep { if ($category eq 'network/isdn') { my $b = $_->{driver} =~ /ISDN:([^,]*),?([^,]*)(?:,firmware=(.*))?/; @@ -692,7 +680,7 @@ sub getSerialModem { my ($modules_conf, $o_mouse) = @_; my $mouse = $o_mouse || {}; $mouse->{device} = readlink "/dev/mouse"; - my $serdev = arch() =~ /ppc/ ? "macserial" : arch() =~ /mips/ ? "8250" : "serial"; + my $serdev = arch() =~ /mips/ ? "8250" : "serial"; eval { modules::load($serdev) }; @@ -708,8 +696,6 @@ sub getSerialModem { } my @devs = pcmcia_probe(); foreach my $modem (@modems) { - #- add an alias for macserial on PPC - $modules_conf->set_alias('serial', $serdev) if arch() =~ /ppc/ && $modem->{device}; foreach (@devs) { $_->{device} and $modem->{device} = $_->{device} } } @modems; @@ -1402,8 +1388,6 @@ Intel ipw2100/2200/3945 Wireless =cut sub isLaptop() { - arch() =~ /ppc/ ? - get_mac_model() =~ /Book/ : computer_info()->{isLaptop} || glob_("/sys/bus/acpi/devices/PNP0C0D:*") #- ACPI lid button || (matching_desc__regexp('C&T.*655[45]\d') || matching_desc__regexp('C&T.*68554') || @@ -1446,7 +1430,7 @@ sub isHyperv() { } sub BIGMEM() { - arch() !~ /x86_64|ia64/ && $> == 0 && dmi_detect_memory() > 4 * 1024; + arch() !~ /x86_64/ && $> == 0 && dmi_detect_memory() > 4 * 1024; } sub is_i586() { diff --git a/perl-install/devices.pm b/perl-install/devices.pm index 8ea66bd82..7628c257e 100644 --- a/perl-install/devices.pm +++ b/perl-install/devices.pm @@ -138,7 +138,6 @@ sub entry { "tty" => [ c::S_IFCHR(), 5, 0 ], "input/mice" => [ c::S_IFCHR(), 13, 63 ], - "adbmouse" => [ c::S_IFCHR(), 10, 10 ], #- PPC "vcsa" => [ c::S_IFCHR(), 7, 128 ], "zero" => [ c::S_IFCHR(), 1, 5 ], "null" => [ c::S_IFCHR(), 1, 3 ], diff --git a/perl-install/diskdrake/hd_gtk.pm b/perl-install/diskdrake/hd_gtk.pm index 85d20f8a4..43e22fe43 100644 --- a/perl-install/diskdrake/hd_gtk.pm +++ b/perl-install/diskdrake/hd_gtk.pm @@ -420,7 +420,7 @@ sub hd2kind { } sub filesystems_button_box() { - my @types = (N_("Ext4"), N_("XFS"), N_("Swap"), arch() =~ /sparc/ ? N_("SunOS") : arch() eq "ppc" ? N_("HFS") : N_("Windows"), + my @types = (N_("Ext4"), N_("XFS"), N_("Swap"), N_("Windows"), N_("Other"), N_("Empty")); my %name2fs_type = (Ext3 => 'ext3', Ext4 => 'ext4', 'XFS' => 'xfs', Swap => 'swap', Other => 'other', "Windows" => 'vfat', HFS => 'hfs'); diff --git a/perl-install/diskdrake/interactive.pm b/perl-install/diskdrake/interactive.pm index e70860e0b..7cbd1c5b5 100644 --- a/perl-install/diskdrake/interactive.pm +++ b/perl-install/diskdrake/interactive.pm @@ -600,9 +600,6 @@ sub Delete { delete $part->{loopback_device}{loopback} if @$l == 0; fsedit::recompute_loopbacks($all_hds); } else { - if (arch() =~ /ppc/) { - undef $partition_table::mac::bootstrap_part if isAppleBootstrap($part) && ($part->{device} = $partition_table::mac::bootstrap_part); - } partition_table::remove($hd, $part); warn_if_renumbered($in, $hd); } @@ -1384,16 +1381,7 @@ sub format_part_info { $info .= N("Volume label: ") . "$part->{device_LABEL}\n" if $part->{device_LABEL}; $info .= N("UUID: ") . "$part->{device_UUID}\n" if $::expert && $part->{device_UUID}; $info .= N("DOS drive letter: %s (just a guess)\n", $part->{device_windobe}) if $part->{device_windobe}; - if (arch() eq "ppc") { - my $pType = $part->{pType}; - $pType =~ s/[^A-Za-z0-9_]//g; - $info .= N("Type: ") . $pType . ($::expert ? sprintf " (0x%x)", $part->{pt_type} : '') . "\n"; - if (defined $part->{pName}) { - my $pName = $part->{pName}; - $pName =~ s/[^A-Za-z0-9_]//g; - $info .= N("Name: ") . $pName . "\n"; - } - } elsif (isEmpty($part)) { + if (isEmpty($part)) { $info .= N("Empty") . "\n"; } else { $info .= N("Type: ") . (fs::type::part2type_name($part) || $part->{fs_type}) . ($::expert ? sprintf " (0x%x)", $part->{pt_type} : '') . "\n"; diff --git a/perl-install/fs/any.pm b/perl-install/fs/any.pm index 154e521ec..7abaa61af 100644 --- a/perl-install/fs/any.pm +++ b/perl-install/fs/any.pm @@ -67,10 +67,6 @@ sub check_hds_boot_and_root { my ($all_hds, $fstab) = @_; fs::get::root_($fstab) or die "Oops, no root partition"; - if (arch() =~ /ppc/ && detect_devices::get_mac_generation() =~ /NewWorld/) { - die "Need bootstrap partition to boot system!" if !(defined $partition_table::mac::bootstrap_part); - } - if (arch() =~ /ia64/ && !fs::get::has_mntpoint("/boot/efi", $all_hds)) { die N("You must have a FAT partition mounted in /boot/efi"); } diff --git a/perl-install/fs/partitioning_wizard.pm b/perl-install/fs/partitioning_wizard.pm index ddd54c9ec..caea9cab6 100644 --- a/perl-install/fs/partitioning_wizard.pm +++ b/perl-install/fs/partitioning_wizard.pm @@ -64,7 +64,7 @@ Then choose action ``Mount point'' and set it to `/'"), 1) or return; if (!any { isSwap($_) } @fstab) { $ok &&= $in->ask_okcancel('', N("You do not have a swap partition.\n\nContinue anyway?")); } - if (arch() =~ /ia64/ && !fs::get::has_mntpoint("/boot/efi", $all_hds)) { + if (!fs::get::has_mntpoint("/boot/efi", $all_hds)) { $in->ask_warn('', N("You must have a FAT partition mounted in /boot/efi")); $ok = ''; } @@ -269,11 +269,7 @@ filesystem checks will be run on your next boot into Microsoft Windows®")) if $ When you are done, do not forget to save using `w'", partition_table::description($_)); print "\n\n"; my $pid = 0; - if (arch() =~ /ppc/) { - $pid = fork() or exec "pdisk", devices::make($_->{device}); - } else { $pid = fork() or exec "fdisk", devices::make($_->{device}); - } waitpid($pid, 0); } $in->leave_console; @@ -402,7 +398,7 @@ sub create_display_box { } $display_box->remove($part_sep) if $part_sep; unless ($resize || $fill_empty) { - my @types = (N_("Ext2/3/4"), N_("XFS"), N_("Swap"), arch() =~ /sparc/ ? N_("SunOS") : arch() eq "ppc" ? N_("HFS") : N_("Windows"), + my @types = (N_("Ext2/3/4"), N_("XFS"), N_("Swap"), N_("Windows"), N_("Other"), N_("Empty")); my %name2fs_type = ('Ext2/3/4' => 'ext3', 'XFS' => 'xfs', Swap => 'swap', Other => 'other', "Windows" => 'vfat', HFS => 'hfs'); $desc = ugtk3::gtkpack(Gtk3::HBox->new, diff --git a/perl-install/fs/type.pm b/perl-install/fs/type.pm index 4cbf0c496..01f9ad1c8 100644 --- a/perl-install/fs/type.pm +++ b/perl-install/fs/type.pm @@ -9,7 +9,7 @@ use devices; our @ISA = qw(Exporter); our @EXPORT = qw( - isEmpty isExtended isTrueLocalFS isTrueFS isDos isSwap isOtherAvailableFS isRawLVM isRawRAID isRawLUKS isRAID isLVM isLUKS isMountableRW isNonMountable isPartOfLVM isPartOfRAID isPartOfLoopback isLoopback isMounted isBusy isSpecial isApple isAppleBootstrap isWholedisk isFat_or_NTFS isRecovery + isEmpty isExtended isTrueLocalFS isTrueFS isDos isSwap isOtherAvailableFS isRawLVM isRawRAID isRawLUKS isRAID isLVM isLUKS isMountableRW isNonMountable isPartOfLVM isPartOfRAID isPartOfLoopback isLoopback isMounted isBusy isSpecial isApple isAppleBootstrap isFat_or_NTFS isRecovery maybeFormatted set_isFormatted defaultFS ); @@ -25,22 +25,17 @@ my (%type_name2pt_type, %type_name2fs_type, %fs_type2pt_type, %pt_type2fs_type, 0x83 => 'ext3', 'Journalised FS: ext3', 0x83 => 'ext4', 'Journalised FS: ext4', 0x83 => 'reiserfs', 'Journalised FS: ReiserFS', -if_(arch() =~ /ppc|i.86|ia64|x86_64/, +if_(arch() =~ /i.86|x86_64/, 0x83 => 'xfs', 'Journalised FS: XFS', ), -if_(arch() =~ /ppc|i.86|x86_64/, +if_(arch() =~ /i.86|x86_64/, 0x83 => 'jfs', 'Journalised FS: JFS', ), -if_(arch() =~ /i.86|ia64|x86_64/, +if_(arch() =~ /i.86|x86_64/, 0x0b => 'vfat', 'FAT32', 0x07 => 'ntfs-3g', 'NTFS-3G', 0x07 => 'ntfs', 'NTFS', ), -if_(arch() =~ /ppc/, - 0x401 => '', 'Apple Bootstrap', - 0x402 => 'hfs', 'Apple HFS Partition', - 0x41 => '', 'PPC PReP Boot', -), ], non_fs_type => [ @@ -57,20 +52,7 @@ if_(arch() =~ /ppc/, ], other => [ - if_(arch() =~ /^ia64/, - 0x100 => '', 'Various', -), if_(arch() =~ /^ppc/, - 0x401 => 'apple', 'Apple Partition', -), if_(arch() =~ /^sparc/, - 0x01 => 'ufs', 'SunOS boot', - 0x02 => 'ufs', 'SunOS root', - 0x03 => '', 'SunOS swap', - 0x04 => 'ufs', 'SunOS usr', - 0x05 => '', 'Whole disk', - 0x06 => 'ufs', 'SunOS stand', - 0x07 => 'ufs', 'SunOS var', - 0x08 => 'ufs', 'SunOS home', -), if_(arch() =~ /^i.86|x86_64/, + if_(arch() =~ /^i.86|x86_64/, 0x01 => 'vfat', 'FAT12', 0x02 => '', 'XENIX root', 0x03 => '', 'XENIX usr', @@ -97,9 +79,7 @@ if_(arch() =~ /ppc/, 0x39 => '', 'Plan 9', 0x3c => '', 'PartitionMagic recovery', 0x40 => '', 'Venix 80286', -if_(arch() !~ /ppc/, 0x41 => '', 'PPC PReP Boot', -), 0x42 => '', 'SFS', 0x4d => '', 'QNX4.x', 0x4e => '', 'QNX4.x 2nd part', @@ -314,13 +294,12 @@ sub true_local_fs_types() { qw(btrfs ext3 ext2 ext4 reiserfs xfs jfs) } sub isEmpty { !$_[0]{fs_type} && $_[0]{pt_type} == 0 } sub isEfi { arch() =~ /ia64/ && $_[0]{pt_type} == 0xef } -sub isWholedisk { arch() =~ /^sparc/ && $_[0]{pt_type} == 5 } -sub isExtended { arch() !~ /^sparc/ && ($_[0]{pt_type} == 5 || $_[0]{pt_type} == 0xf || $_[0]{pt_type} == 0x85) } +sub isExtended { $_[0]{pt_type} == 5 || $_[0]{pt_type} == 0xf || $_[0]{pt_type} == 0x85 } sub isRawLVM { $_[0]{pt_type} == 0x8e || $_[0]{type_name} eq 'Linux Logical Volume Manager' } sub isRawRAID { $_[0]{pt_type} == 0xfd || $_[0]{type_name} eq 'Linux RAID' } sub isRawLUKS { $_[0]{type_name} eq 'Encrypted' } sub isSwap { $_[0]{fs_type} eq 'swap' } -sub isDos { arch() !~ /^sparc/ && ${{ 1 => 1, 4 => 1, 6 => 1 }}{$_[0]{pt_type}} } +sub isDos { ${{ 1 => 1, 4 => 1, 6 => 1 }}{$_[0]{pt_type}} } sub isFat_or_NTFS { member($_[0]{fs_type}, 'vfat', 'ntfs', 'ntfs-3g') } sub isApple { $_[0]{pt_type} == 0x401 && defined $_[0]{isDriver} } sub isAppleBootstrap { $_[0]{pt_type} == 0x401 && defined $_[0]{isBoot} } diff --git a/perl-install/fsedit.pm b/perl-install/fsedit.pm index d6c9a16ad..d5ed7c346 100644 --- a/perl-install/fsedit.pm +++ b/perl-install/fsedit.pm @@ -47,7 +47,7 @@ foreach (values %suggestions) { my @suggestions_mntpoints = ( "/var/ftp", "/var/www", "/boot", '/usr/local', '/opt', - arch() =~ /sparc/ ? "/mnt/sunos" : arch() =~ /ppc/ ? "/mnt/macos" : "/mnt/windows", + "/mnt/windows", ); #-###################################################################################### @@ -226,7 +226,7 @@ sub get_hds { die sprintf(q(bad dmraid (missing partition %s), you may try rebooting install with option "nodmraid"), $p->{device}); } } else { - fs::proc_partitions::compare($hd) if !detect_devices::is_xbox() && arch() ne 'ppc'; + fs::proc_partitions::compare($hd) if !detect_devices::is_xbox(); } } } sub { diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS index 60ee77fe9..f4e72aaae 100644 --- a/perl-install/install/NEWS +++ b/perl-install/install/NEWS @@ -1,5 +1,6 @@ - add some POD documentation - do not unavailable kernel-xbox +- drop (broken) support for Alpha, PPC, Sparc & IA64 Version 16.29 - 3 May 2014 diff --git a/perl-install/install/any.pm b/perl-install/install/any.pm index c0dcb86af..09f55f200 100644 --- a/perl-install/install/any.pm +++ b/perl-install/install/any.pm @@ -859,9 +859,6 @@ sub getAndSaveAutoInstallFloppies { eval { modules::load('loop') }; - if (arch() =~ /ia64/) { - #- nothing yet - } else { my $mountdir = "$::prefix/root/aif-mount"; -d $mountdir or mkdir $mountdir, 0755; my $param = 'kickstart=floppy ' . generate_automatic_stage1_params($o); @@ -904,7 +901,6 @@ sub getAndSaveAutoInstallFloppies { } rmdir $mountdir; $img; - } } @@ -934,7 +930,7 @@ sub loadO { my $o; foreach (removable_media__early_in_install()) { my $dev = devices::make($_->{device}); - foreach my $fs (arch() =~ /sparc/ ? 'romfs' : ('ext2', 'vfat')) { + foreach my $fs (qw(ext2 vfat)) { eval { fs::mount::mount($dev, '/mnt', $fs, 'readonly'); 1 } or next; if (my $abs_f = find { -e $_ } "/mnt/$f", "/mnt/$f.pl") { $o = loadO_($O, $abs_f); diff --git a/perl-install/install/share/list.xml b/perl-install/install/share/list.xml index 359078df1..4bd9a92be 100644 --- a/perl-install/install/share/list.xml +++ b/perl-install/install/share/list.xml @@ -4,12 +4,7 @@ ash dash.static echo aria2c cp curl md5sum <!-- needed by urpmi --> cpio gzip bzip2 - <if-not ARCH="ppc"> fdisk - </if-not> - <if ARCH="ppc"> - pdisk - </if> insmod modinfo rmmod modprobe lsmod losetup lvm2 mdadm mdmon @@ -31,7 +26,7 @@ tty stty <!-- needed for text mode installer (through unicode_start) --> - <if ARCH="i.86|x86_64|ia64"> + <if ARCH="i.86|x86_64"> mkdosfs dosfslabel mlabel @@ -61,18 +56,13 @@ unicode_start </filter> - <if ARCH="i.86|x86_64|ia64"> + <if ARCH="i.86|x86_64"> dmidecode </if> <if ARCH="ia64"> efibootmgr </if> - <if ARCH="ppc"> - hattrib hcopy hcd - hformat hmount humount - </if> - <if set="DEBUG_INSTALL"> strace bash less ps top gdb busybox </if> @@ -463,11 +453,6 @@ ARCH-linux-thread-multi/Scalar/Util.pm ARCH-linux-thread-multi/Socket.pm ARCH-linux-thread-multi/Time/HiRes.pm - <if ARCH="ia64"> - ARCH-linux-thread-multi/asm-i386/unistd.ph - ARCH-linux-thread-multi/asm-x86_64/unistd.ph - ARCH-linux-thread-multi/asm/break.ph - </if> <if ARCH="i.86|x86_64"> ARCH-linux-thread-multi/asm/unistd_32.ph ARCH-linux-thread-multi/asm/unistd_64.ph diff --git a/perl-install/install/steps.pm b/perl-install/install/steps.pm index f51d50729..7a75fb530 100644 --- a/perl-install/install/steps.pm +++ b/perl-install/install/steps.pm @@ -460,7 +460,7 @@ Either your cdrom drive or your cdrom is defective. Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm\" ") if any { m|read failed: Input/output error| } cat_("$::prefix/root/drakx/install.log"); - if (arch() !~ /^sparc/ && !$o->{justdb}) { #- TODO restore it as may be needed for sparc + if (!$o->{justdb}) { -x "$::prefix/usr/bin/dumpkeys" or $::testing or die "Some important packages did not get installed properly. @@ -847,7 +847,7 @@ sub exitInstall { }; output("$::prefix/root/drakx/package_list.pl", install::any::selected_leaves_pl($o)); - eval { install::any::getAndSaveAutoInstallFloppies($o, 1) } if arch() !~ /^ppc/; + eval { install::any::getAndSaveAutoInstallFloppies($o, 1) }; eval { output "$::prefix/root/drakx/README", sprintf("This directory contains several installation-related files, mostly log files (very useful if you ever report a bug!). diff --git a/perl-install/install/steps_gtk.pm b/perl-install/install/steps_gtk.pm index 21f071adb..b354feadf 100644 --- a/perl-install/install/steps_gtk.pm +++ b/perl-install/install/steps_gtk.pm @@ -88,7 +88,7 @@ sub _setup_and_start_X { foreach (@servers) { log::l("Trying with server $_"); - my ($prog, $Driver) = /Driver:(.*)/ ? ('Xorg', $1) : /Xsun|Xnest|^X_move$/ ? $_ : "XF86_$_"; + my ($prog, $Driver) = /Driver:(.*)/ ? ('Xorg', $1) : /Xnest|^X_move$/ ? $_ : "XF86_$_"; if (/FB/i) { !$o->{vga16} && $o->{allowFB} or next; @@ -113,12 +113,9 @@ sub _launchX { } else { install::gtk::createXconf($f, @{$o->{mouse}}{'Protocol', 'device'}, $o->{mouse}{wacom}[0], $Driver); - push @options, '-allowMouseOpenFail', '-xf86config', $f if arch() !~ /^sparc/; + push @options, '-allowMouseOpenFail', '-xf86config', $f; push @options, 'vt7', '-dpi', '75'; push @options, '-nolisten', 'tcp'; - - #- old weird servers: Xsun - push @options, '-fp', '/usr/share/fonts:unscaled' if $server =~ /Xsun/; } if (!fork()) { diff --git a/perl-install/install/steps_interactive.pm b/perl-install/install/steps_interactive.pm index be3d6c64c..198d44c9d 100644 --- a/perl-install/install/steps_interactive.pm +++ b/perl-install/install/steps_interactive.pm @@ -279,34 +279,6 @@ sub setupSCSI { sub doPartitionDisks { my ($o) = @_; - if (arch() =~ /ppc/) { - my $generation = detect_devices::get_mac_generation(); - if ($generation =~ /NewWorld/) { - #- mac partition table - if (defined $partition_table::mac::bootstrap_part) { - #- do not do anything if we've got the bootstrap setup - #- otherwise, go ahead and create one somewhere in the drive free space - } else { - my $freepart = $partition_table::mac::freepart; - if ($freepart && $freepart->{size} >= 1) { - log::l("creating bootstrap partition on drive /dev/$freepart->{hd}{device}, block $freepart->{start}"); - $partition_table::mac::bootstrap_part = $freepart->{part}; - log::l("bootstrap now at $partition_table::mac::bootstrap_part"); - my $p = { start => $freepart->{start}, size => MB(1), mntpoint => '' }; - fs::type::set_pt_type($p, 0x401); - fsedit::add($freepart->{hd}, $p, $o->{all_hds}, { force => 1, primaryOrExtended => 'Primary' }); - $partition_table::mac::new_bootstrap = 1; - - } else { - $o->ask_warn('', N("No free space for 1MB bootstrap! Install will continue, but to boot your system, you'll need to create the bootstrap partition in DiskDrake")); - } - } - } elsif ($generation =~ /IBM/) { - #- dos partition table - $o->ask_warn('', N("You'll need to create a PPC PReP Boot bootstrap! Install will continue, but to boot your system, you'll need to create the bootstrap partition in DiskDrake")); - } - } - if (!$o->{isUpgrade}) { fs::partitioning_wizard::main($o, $o->{all_hds}, $o->{fstab}, $o->{manualFstab}, $o->{partitions}, $o->{partitioning}, $::local_install); } @@ -1076,14 +1048,6 @@ sub setupBootloaderBefore { #------------------------------------------------------------------------------ sub setupBootloader { my ($o) = @_; - if (arch() =~ /ppc/) { - if (detect_devices::get_mac_generation() !~ /NewWorld/ && - detect_devices::get_mac_model() !~ /IBM/) { - $o->ask_warn('', N("You appear to have an OldWorld or Unknown machine, the yaboot bootloader will not work for you. The install will continue, but you'll need to use BootX or some other means to boot your machine. The kernel argument for the root fs is: root=%s", '/dev/' . fs::get::root_($o->{fstab})->{device})); - log::l("OldWorld or Unknown Machine - no yaboot setup"); - return; - } - } { any::setupBootloader_simple($o, $o->{bootloader}, $o->{all_hds}, $o->{fstab}, $o->{security}) or return; } diff --git a/perl-install/modules.pm b/perl-install/modules.pm index 1ca95c2dc..56c114a34 100644 --- a/perl-install/modules.pm +++ b/perl-install/modules.pm @@ -157,13 +157,6 @@ sub load_category { if_($category =~ /scsi/, if_(detect_devices::usbStorage(), 'usb_storage'), ), - arch() =~ /ppc/ ? ( - if_($category =~ /scsi/, - if_(detect_devices::has_mesh(), 'mesh'), - if_(detect_devices::has_53c94(), 'mac53c94'), - ), - if_($category =~ /net/, 'bmac', 'gmac', 'mace', 'airport'), - ) : (), ); my @l = ( (map { @@ -188,8 +181,6 @@ sub load_category { sub load_parallel_zip { my ($conf) = @_; - arch() !~ /ppc/ or return; - grep { eval { load_and_configure($conf, $_); 1 }; } @parallel_zip_modules; diff --git a/perl-install/partition_table.pm b/perl-install/partition_table.pm index a11318bea..61c6a0f6d 100644 --- a/perl-install/partition_table.pm +++ b/perl-install/partition_table.pm @@ -64,12 +64,8 @@ sub verifyInside { sub verifyParts_ { foreach my $i (@_) { foreach (@_) { - next if !$i || !$_ || $i == $_ || isWholedisk($i) || isExtended($i); #- avoid testing twice for simplicity :-) - if (isWholedisk($_)) { - verifyInside($i, $_) or - cdie sprintf("partition sector #$i->{start} (%s) is not inside whole disk (%s)!", - formatXiB($i->{size}, 512), formatXiB($_->{size}, 512)); - } elsif (isExtended($_)) { + next if !$i || !$_ || $i == $_ || isExtended($i); #- avoid testing twice for simplicity :-) + if (isExtended($_)) { verifyNotOverlap($i, $_) or log::l(sprintf("warning partition sector #$i->{start} (%s) is overlapping with extended partition!", formatXiB($i->{size}, 512))); #- only warning for this one is acceptable @@ -87,7 +83,7 @@ sub verifyParts { } sub verifyPrimary { my ($pt) = @_; - $_->{start} > 0 || arch() =~ /^sparc/ || die "partition must NOT start at sector 0" foreach @{$pt->{normal}}; + $_->{start} > 0 || die "partition must NOT start at sector 0" foreach @{$pt->{normal}}; verifyParts_(@{$pt->{normal}}, $pt->{extended}); } @@ -108,24 +104,7 @@ sub assign_device_numbers { my $i = 1; my $start = 1; - #- on PPC we need to assign device numbers to the holes too - big FUN! - #- 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}} ]; - - #- now loop through them, assigning partition numbers - reserve one for the holes - foreach (@{$hd->{primary}{normal}}) { - if ($_->{start} > $start) { - log::l("PPC: found a hole on $hd->{device} before $_->{start}, skipping device..."); - $i++; - } - $_->{part_number} = $i; - compute_device_name($_, $hd); - $start = $_->{start} + $_->{size}; - $i++; - } - } else { + { foreach (@{$hd->{primary}{raw}}) { $_->{part_number} = $i; compute_device_name($_, $hd); @@ -234,7 +213,7 @@ sub get_normal_parts_and_holes { my $hole = { start => $current, size => $_->{start} - $current, %$minimal_hole }; put_in_hash($hole, hd2minimal_part($hd)); $hole, $_; - } sort { $a->{start} <=> $b->{start} } grep { !isWholedisk($_) } get_normal_parts($hd); + } sort { $a->{start} <=> $b->{start} } get_normal_parts($hd); push @l, { start => $start, size => min($last - $start, $hd->max_partition_size), %$minimal_hole } if $start < $hd->max_partition_start; grep { !isEmpty($_) || $_->{size} >= $hd->cylinder_size } @l; @@ -244,9 +223,6 @@ sub _default_type { my ($hd) = @_; arch() =~ /ia64/ ? 'gpt' : - arch() eq "alpha" ? "bsd" : - arch() =~ /^sparc/ ? "sun" : - arch() eq "ppc" && detect_devices::get_mac_model() !~ /^IBM/ ? "mac" : $hd->{totalsectors} > 4 * 1024 * 1024 * 2048 ? 'lvm' : "dos"; #- default to LVM on full disk when >4TB } @@ -274,7 +250,7 @@ sub read_primary { my @parttype = ( if_(arch() =~ /^ia64/, 'gpt'), # gpt must be tried before dos as it presents a fake compatibility mbr - arch() =~ /^sparc/ ? ('sun', 'bsd') : ('gpt', 'lvm', 'dmcrypt', 'dos', 'bsd', 'sun', 'mac'), + ('gpt', 'lvm', 'dmcrypt', 'dos', 'bsd', 'sun', 'mac'), ); foreach ('empty', @parttype, 'unknown') { /unknown/ and die "unknown partition table format on disk " . $hd->{file}; @@ -452,7 +428,6 @@ sub write { $hd->write(0, $hd->{primary}{raw}, $hd->{primary}{info}) or die "writing of partition table failed"; #- should be fixed but a extended exist with no real extended partition, that blanks mbr! - if (arch() !~ /^sparc/) { foreach (@{$hd->{extended}}) { # in case of extended partitions, the start sector must be local to the partition $_->{normal}{local_start} = $_->{normal}{start} - $_->{start}; @@ -460,7 +435,6 @@ sub write { $hd->write($_->{start}, $_->{raw}) or die "writing of partition table failed"; } - } $hd->{isDirty} = 0; if (my $tell_kernel = delete $hd->{will_tell_kernel}) { @@ -537,8 +511,6 @@ sub add_primary { } sub add_extended { - arch() =~ /^sparc|ppc/ and die N("Extended partition not supported on this platform"); - my ($hd, $part, $extended_type) = @_; $extended_type =~ s/Extended_?//; @@ -592,13 +564,12 @@ sub add { set_isFormatted($part, 0); put_in_hash($part, hd2minimal_part($hd)); - $part->{start} ||= 1 if arch() !~ /^sparc/; #- starting at sector 0 is not allowed + $part->{start} ||= 1; #- starting at sector 0 is not allowed adjustStartAndEnd($hd, $part) unless $b_forceNoAdjust; my $nb_primaries = $hd->{device} =~ /^rd/ ? 3 : 1; - if (arch() =~ /^sparc|ppc/ || - $b_primaryOrExtended eq 'Primary' || + if ($b_primaryOrExtended eq 'Primary' || $b_primaryOrExtended !~ /Extended/ && @{$hd->{primary}{normal} || []} < $nb_primaries) { eval { add_primary($hd, $part) }; goto success if !$@; diff --git a/perl-install/partition_table/raw.pm b/perl-install/partition_table/raw.pm index 612647e60..686b84d92 100644 --- a/perl-install/partition_table/raw.pm +++ b/perl-install/partition_table/raw.pm @@ -11,10 +11,6 @@ use log; use c; my @MBR_signatures = ( -if_(arch() =~ /ppc/, - (map { [ 'yaboot', 0, "PM", 0x200 * $_ + 0x10, "bootstrap\0" ] } 0 .. 61), #- "PM" is a Partition Map - [ 'yaboot', 0x400, "BD", 0x424, "\011bootstrap" ], #- "BD" is a HFS filesystem -), [ 'empty', 0, "\0\0\0\0" ], [ 'grub', 0, "\xEBG", 0x17d, "stage1 \0" ], [ 'grub', 0, "\xEBH", 0x17e, "stage1 \0" ], |