Author: spot
Update of /cvs/pkgs/rpms/anaconda/F-9
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv30402
Modified Files:
anaconda.spec
Added Files:
anaconda-11.4.0.82-sparc-fixes.patch keymaps-sparc
screenfont-sparc.gz
Log Message:
sparc support
anaconda-11.4.0.82-sparc-fixes.patch:
--- NEW FILE anaconda-11.4.0.82-sparc-fixes.patch ---
diff -up anaconda-11.4.0.82/autopart.py.BAD anaconda-11.4.0.82/autopart.py
diff -up anaconda-11.4.0.82/bootdisk/sparc/boot.msg.BAD
anaconda-11.4.0.82/bootdisk/sparc/boot.msg
--- anaconda-11.4.0.82/bootdisk/sparc/boot.msg.BAD 2008-09-28 09:43:05.000000000 -0400
+++ anaconda-11.4.0.82/bootdisk/sparc/boot.msg 2008-09-28 09:40:50.000000000 -0400
@@ -0,0 +1,10 @@
+[H[J
+ Welcome to Fedora SPARC Linux!
+
+ - To install or upgrade in graphical mode, press the [7m<ENTER>[m key.
+
+ - To install or upgrade in text mode, type: [7mlinux text <ENTER>[m.
+
+ - Use the function keys listed below for more information.
+
+[7m[F1-Main] [F2-Options] [F3-General] [F4-Kernel] [F5-Rescue][m
diff -up anaconda-11.4.0.82/bootdisk/sparc/general.msg.BAD
anaconda-11.4.0.82/bootdisk/sparc/general.msg
--- anaconda-11.4.0.82/bootdisk/sparc/general.msg.BAD 2008-09-28 09:43:05.000000000 -0400
+++ anaconda-11.4.0.82/bootdisk/sparc/general.msg 2008-09-28 09:41:00.000000000 -0400
@@ -0,0 +1,22 @@
+
+ [7mGeneral Boot Help[m
+
+You are now ready to begin the installation process. In most cases,
+the best way to get started is to simply press the [7m<ENTER>[m key.
+
+If you are having problems with the graphical installer, you can use the
+'[7mresolution=<width>x<height>[m' option to try and force a
+particular resolution. For example, boot with
+'[7mlinux resolution=1024x768[m'.
+
+Certain hardware configurations may have trouble with the automatic hardware
+detection done during the installation. If you experience problems during the
+installation, restart the installation adding the 'noprobe' option. The
+'skipddc' option will also skip monitor probing which hangs some systems.
+
+There are a number of parameters that can be passed to the Linux kernel
+at boot time. Press [7m<F4>[m for more information.
+
+
+[7m[F1-Main] [F2-Options] [F3-General] [F4-Kernel] [F5-Rescue][m
+
diff -up anaconda-11.4.0.82/bootdisk/sparc/options.msg.BAD
anaconda-11.4.0.82/bootdisk/sparc/options.msg
--- anaconda-11.4.0.82/bootdisk/sparc/options.msg.BAD 2008-09-28 09:43:05.000000000 -0400
+++ anaconda-11.4.0.82/bootdisk/sparc/options.msg 2008-09-28 09:41:08.000000000 -0400
@@ -0,0 +1,18 @@
+
+ [7mInstaller Boot Options[m
+
+ - To disable hardware probing, type: [7mlinux noprobe <ENTER>[m.
+
+ - To test the install media you are using, type: [7mlinux mediacheck <ENTER>[m.
+
+ - To enable rescue mode, type: [7mlinux rescue <ENTER>[m.
+ Press [7m<F5>[m for more information about rescue mode.
+
+ - If you have a driver disk, type: [7mlinux dd <ENTER>[m.
+
+ - To prompt for the use of other install methods such as network
+ install when booting from a CD, type [7mlinux askmethod <ENTER>[m.
+
+ - If you have an installer update disk, type: [7mlinux updates <ENTER[m>.
+
+[7m[F1-Main] [F2-Options] [F3-General] [F4-Kernel] [F5-Rescue][m
diff -up anaconda-11.4.0.82/bootdisk/sparc/param.msg.BAD
anaconda-11.4.0.82/bootdisk/sparc/param.msg
--- anaconda-11.4.0.82/bootdisk/sparc/param.msg.BAD 2008-09-28 09:43:05.000000000 -0400
+++ anaconda-11.4.0.82/bootdisk/sparc/param.msg 2008-09-28 09:41:15.000000000 -0400
@@ -0,0 +1,19 @@
+
+ [7mKernel Parameter Help[m
+
+Some kernel parameters can be specified on the command line and will be
+passed to the kernel.
+
+To pass an option to the kernel, use the following format:
+
+ [7mlinux <options>[m
+
+If a different installation mode is desired, enter it after the option(s).
+
+For example, to install on a system with 256MB of RAM using noprobe mode,
+type the following:
+
+ [7mlinux mem=256M noprobe[m
+
+
+[7m[F1-Main] [F2-Options] [F3-General] [F4-Kernel] [F5-Rescue][m
diff -up anaconda-11.4.0.82/bootdisk/sparc/rescue.msg.BAD
anaconda-11.4.0.82/bootdisk/sparc/rescue.msg
--- anaconda-11.4.0.82/bootdisk/sparc/rescue.msg.BAD 2008-09-28 09:43:05.000000000 -0400
+++ anaconda-11.4.0.82/bootdisk/sparc/rescue.msg 2008-09-28 09:41:21.000000000 -0400
@@ -0,0 +1,17 @@
+
+ [7mRescue Mode Help[m
+
+The installer includes a rescue mode which can be used when a system
+does not boot properly. The rescue mode includes many useful
+utilities (editor, hard drive and RAID tools, etc.) which will allow
+one to restore a system to a working state.
+
+To enter the rescue mode, boot your system from the installation
+CDROM or floppy and type [7mlinux rescue <ENTER>[m.
+
+
+
+
+
+[7m[F1-Main] [F2-Options] [F3-General] [F4-Kernel] [F5-Rescue][m
+
diff -up anaconda-11.4.0.82/bootdisk/sparc/silo.conf.BAD
anaconda-11.4.0.82/bootdisk/sparc/silo.conf
--- anaconda-11.4.0.82/bootdisk/sparc/silo.conf.BAD 2008-09-28 09:43:11.000000000 -0400
+++ anaconda-11.4.0.82/bootdisk/sparc/silo.conf 2008-09-28 09:42:09.000000000 -0400
@@ -0,0 +1,32 @@
+partition=1
+default=linux
+read-write
+timeout=100
+message=/etc/boot.msg
+image="cat /etc/boot.msg"
+ label=1
+ single-key
+image="cat /etc/options.msg"
+ label=2
+ single-key
+image="cat /etc/general.msg"
+ label=3
+ single-key
+image="cat /etc/param.msg"
+ label=4
+ single-key
+image="cat /etc/rescue.msg"
+ label=5
+ single-key
+image[sun4u]=/boot/vmlinux
+ label=linux
+ alias=install
+ initrd=/boot/initrd.img
+image[sun4u]=/boot/vmlinux
+ label=text
+ append=text
+ initrd=/boot/initrd.img
+image[sun4u]=/boot/vmlinux
+ label=ks
+ append=ks
+ initrd=/boot/initrd.img
diff -up anaconda-11.4.0.82/isys/isys.c.BAD anaconda-11.4.0.82/isys/isys.c
diff -up anaconda-11.4.0.82/isys/Makefile.BAD anaconda-11.4.0.82/isys/Makefile
--- anaconda-11.4.0.82/isys/Makefile.BAD 2008-09-28 09:54:57.000000000 -0400
+++ anaconda-11.4.0.82/isys/Makefile 2008-09-28 09:55:20.000000000 -0400
@@ -69,7 +69,7 @@ _isys.so: isys.lo $(SOBJECTS)
gcc -shared -g -fPIC -o $@ isys.lo $(SOBJECTS) $(LOADLIBES) $(LDFLAGS)
_silo.so: silo.c
- gcc -shared $(CFLAGS) -fpic -o $@ silo.c ../balkan/libbalkan.a
+ gcc -shared $(CFLAGS) -fpic -o $@ silo.c
libisys.a: libisys.a($(OBJECTS))
diff -up anaconda-11.4.0.82/isys/silo.c.BAD anaconda-11.4.0.82/isys/silo.c
--- anaconda-11.4.0.82/isys/silo.c.BAD 2008-09-28 09:45:38.000000000 -0400
+++ anaconda-11.4.0.82/isys/silo.c 2008-09-28 09:54:49.000000000 -0400
@@ -20,10 +20,10 @@
* Author(s): Jakub Jelinek <jakub(a)redhat.com>
*/
-#define _GNU_SOURCE
#include <fcntl.h>
#include <stdio.h>
#include <unistd.h>
+#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include <sys/ioctl.h>
@@ -55,6 +55,7 @@ static char buf[4096];
static char regstr[40];
#define DECL_OP(size) struct openpromio *op = (struct openpromio *)buf; op->oprom_size
= (size)
+/*
static int
prom_setcur(int node) {
DECL_OP(sizeof(int));
@@ -66,6 +67,7 @@ prom_setcur(int node) {
prom_current_node = *(int *)op->oprom_array;
return *(int *)op->oprom_array;
}
+*/
static int
prom_getsibling(int node) {
@@ -122,6 +124,7 @@ prom_setopt(char *var, char *value) {
ioctl (promfd, OPROMSETOPT, op);
}
+/*
static int
prom_getbool(char *prop) {
DECL_OP(0);
@@ -137,6 +140,7 @@ prom_getbool(char *prop) {
return 1;
}
}
+*/
static int
prom_pci2node(int bus, int devfn) {
@@ -150,6 +154,7 @@ prom_pci2node(int bus, int devfn) {
return *(int *)op->oprom_array;
}
+/*
static int
prom_path2node(char *path) {
DECL_OP(MAX_VAL);
@@ -160,6 +165,7 @@ prom_path2node(char *path) {
prom_current_node = *(int *)op->oprom_array;
return *(int *)op->oprom_array;
}
+*/
#define PW_TYPE_SBUS 1
#define PW_TYPE_PCI 2
@@ -253,7 +259,7 @@ prom_init(int mode) {
static struct sdsk_disk {
unsigned int prom_node;
unsigned int type, host, hi, mid, lo;
- unsigned char *prom_name;
+ char *prom_name;
} *hd = NULL, *sd = NULL;
static int hdlen, sdlen;
@@ -745,8 +751,8 @@ int main(void) {
static PyObject *disk2PromPath (PyObject *, PyObject *);
static PyObject *zeroBasedPart (PyObject *, PyObject *);
-static PyObject *hasAliases (void);
-static PyObject *promRootName (void);
+static PyObject *hasAliases (PyObject *, PyObject *);
+static PyObject *promRootName (PyObject *, PyObject *);
static PyObject *setPromVars (PyObject *, PyObject *);
static PyMethodDef _siloMethods[] = {
@@ -773,7 +779,7 @@ init_silo ()
static PyObject *
disk2PromPath (PyObject *self, PyObject *args)
{
- unsigned char *disk, prompath[1024];
+ char *disk, prompath[1024];
int diskno = -1, part;
if (!PyArg_ParseTuple (args, "s", &disk))
@@ -818,13 +824,130 @@ disk2PromPath (PyObject *self, PyObject
return Py_BuildValue ("s", prompath);
}
-#include "../balkan/balkan.h"
-#include "../balkan/sun.h"
+#define SUN_DISK_MAGIC 0xDABE /* Disk magic number */
+#define WHOLE_DISK 5
+#define UFS_SUPER_MAGIC 0x00011954
+
+#define be16_to_cpu(x) x
+#define be32_to_cpu(x) x
+#define be64_to_cpu(x) x
+
+#define swab32(x) \
+ ((uint32_t)( \
+ (((uint32_t)(x) & (uint32_t)0x000000ffUL) << 24) | \
+ (((uint32_t)(x) & (uint32_t)0x0000ff00UL) << 8) | \
+ (((uint32_t)(x) & (uint32_t)0x00ff0000UL) >> 8) | \
+ (((uint32_t)(x) & (uint32_t)0xff000000UL) >> 24) ))
+
+struct partition {
+ long startSector;
+ long size; /* in sectors */
+ int type; /* -1 for "not used" */
+};
+
+struct partitionTable {
+ int allocationUnit; /* in sectors */
+ int maxNumPartitions;
+ int sectorSize;
+ struct partition parts[50];
+};
+
+struct singlePartitionTable {
+ unsigned char info[128]; /* Informative text string */
+ unsigned char spare0[14];
+ struct sun_info {
+ unsigned char spare1;
+ unsigned char id;
+ unsigned char spare2;
+ unsigned char flags;
+ } infos[8];
+ unsigned char spare1[246]; /* Boot information etc. */
+ unsigned short rspeed; /* Disk rotational speed */
+ unsigned short pcylcount; /* Physical cylinder count */
+ unsigned short sparecyl; /* extra sects per cylinder */
+ unsigned char spare2[4]; /* More magic... */
+ unsigned short ilfact; /* Interleave factor */
+ unsigned short ncyl; /* Data cylinder count */
+ unsigned short nacyl; /* Alt. cylinder count */
+ unsigned short ntrks; /* Tracks per cylinder */
+ unsigned short nsect; /* Sectors per track */
+ unsigned char spare3[4]; /* Even more magic... */
+ struct sun_partition {
+ unsigned int start_cylinder;
+ unsigned int num_sectors;
+ } parts[8];
+ unsigned short magic; /* Magic number */
+ unsigned short csum; /* Label xor'd checksum */
+};
+
+long long llseek(int fd, long long offset, int whence);
+
+int sunpReadTable(int fd, struct partitionTable * table) {
+ struct singlePartitionTable singleTable;
+ int i, magic;
+ unsigned short *p, csum;
+
+ table->maxNumPartitions = 8;
+
+ for (i = 0; i < table->maxNumPartitions; i++)
+ table->parts[i].type = -1;
+
+ table->sectorSize = 512;
+
+ if (lseek(fd, 0, SEEK_SET) < 0)
+ return 1;
+
+ if (read(fd, &singleTable, sizeof(singleTable)) != sizeof(singleTable))
+ return 1;
+
+ if (be16_to_cpu(singleTable.magic) != SUN_DISK_MAGIC)
+ return 2;
+
+ for (p = (unsigned short *)&singleTable, csum = 0; p < (unsigned short
*)(&singleTable+1);)
+ csum ^= *p++;
+
+ if (csum)
+ return 2;
+
+ for (i = 0; i < 8; i++) {
+ if (!singleTable.parts[i].num_sectors) continue;
+
+ table->parts[i].startSector =
+ be32_to_cpu(singleTable.parts[i].start_cylinder) *
be16_to_cpu(singleTable.nsect) * be16_to_cpu(singleTable.ntrks);
+ table->parts[i].size =
+ be32_to_cpu(singleTable.parts[i].num_sectors);
+ table->parts[i].type = singleTable.infos[i].id;
+ }
+
+ for (i = 0; i < 8; i++) {
+ if (table->parts[i].type == -1) continue;
+
+ switch (table->parts[i].type) {
+ case 0x83:
+ table->parts[i].type = 2;
+ break;
+
+ case 0x82:
+ table->parts[i].type = 5;
+ break;
+
+ default:
+ if (table->parts[i].type != WHOLE_DISK && llseek(fd, (8192 + 0x55c
+ 512 * (unsigned long long)table->parts[i].startSector), SEEK_SET) >= 0 &&
read(fd, &magic, 4) && (magic == UFS_SUPER_MAGIC || swab32(magic) ==
UFS_SUPER_MAGIC))
+ table->parts[i].type = 6;
+ else
+ table->parts[i].type = 3;
+ break;
+ }
+ }
+
+ return 0;
+}
+
static PyObject *
zeroBasedPart (PyObject *self, PyObject *args)
{
- unsigned char *disk;
+ char *disk;
int part = 3, fd, i;
struct partitionTable table;
@@ -851,13 +974,13 @@ zeroBasedPart (PyObject *self, PyObject
}
static PyObject *
-hasAliases (void)
+hasAliases (PyObject *self, PyObject *args)
{
return Py_BuildValue ("i", hasaliases);
}
static PyObject *
-promRootName (void)
+promRootName (PyObject *self, PyObject *args)
{
return Py_BuildValue ("s", prom_root_name ? prom_root_name :
"");
}
diff -up anaconda-11.4.0.82/loader2/hardware.c.BAD anaconda-11.4.0.82/loader2/hardware.c
--- anaconda-11.4.0.82/loader2/hardware.c.BAD 2008-09-28 10:40:17.000000000 -0400
+++ anaconda-11.4.0.82/loader2/hardware.c 2008-09-28 10:45:38.000000000 -0400
@@ -140,6 +140,10 @@ int earlyModuleLoad(int justProbe) {
}
int busProbe(int justProbe) {
+ /* this is a hack since we can't really probe for the old Sun mouse */
+#ifdef __sparc__
+ mlLoadModuleSet("sermouse");
+#endif
/* autodetect whatever we can */
if (justProbe)
return 0;
diff -up anaconda-11.4.0.82/loader2/init.c.BAD anaconda-11.4.0.82/loader2/init.c
--- anaconda-11.4.0.82/loader2/init.c.BAD 2008-09-28 10:08:50.000000000 -0400
+++ anaconda-11.4.0.82/loader2/init.c 2008-09-28 10:18:24.000000000 -0400
@@ -371,7 +371,16 @@ static int setupTerminal(int fd) {
return 0;
}
-#if !defined(__s390__) && !defined(__s390x__)
+#if defined(__sparc__)
+static int termcmp(struct termios *a, struct termios *b) {
+ if (a->c_iflag != b->c_iflag || a->c_oflag != b->c_oflag ||
+ a->c_cflag != b->c_cflag || a->c_lflag != b->c_lflag)
+ return 1;
+ return memcmp(a->c_cc, b->c_cc, sizeof(a->c_cc));
+}
+#endif
+
+#if !defined(__s390__) && !defined(__s390x__) && !defined(__sparc__)
static int termcmp(struct termios *a, struct termios *b) {
if (a->c_iflag != b->c_iflag || a->c_oflag != b->c_oflag ||
a->c_cflag != b->c_cflag || a->c_lflag != b->c_lflag ||
diff -up anaconda-11.4.0.82/loader2/kbd.c.BAD anaconda-11.4.0.82/loader2/kbd.c
--- anaconda-11.4.0.82/loader2/kbd.c.BAD 2008-09-28 09:58:04.000000000 -0400
+++ anaconda-11.4.0.82/loader2/kbd.c 2008-09-28 09:58:35.000000000 -0400
@@ -61,20 +61,6 @@ int chooseKeyboard(struct loaderData_s *
if (FL_SERIAL (flags) || FL_VIRTPCONSOLE(flags)) return LOADER_NOOP;
-#ifdef __sparc__
- {
- int fd;
-
- fd = open("/dev/kbd", O_RDWR);
- if (fd < 0)
- kbdtype = KBDTYPE_PC; /* if PC keyboard, then there is no driver for /dev/kbd */
- else {
- close(fd);
- kbdtype = KBDTYPE_SUN;
- }
- }
-#endif /* sparc */
-
numLanguages = getLangInfo(&languages);
lang = getenv("LANG");
@@ -91,12 +77,7 @@ int chooseKeyboard(struct loaderData_s *
}
if (!defkbd)
-#ifdef __sparc__
- if (kbdtype == KBDTYPE_SUN)
- defkbd = "sunkeymap";
- else
-#endif /* sparc drain bamage */
- defkbd = "us";
+ defkbd = "us";
f = gunzip_open("/etc/keymaps.gz");
if (!f) {
@@ -168,10 +149,6 @@ int chooseKeyboard(struct loaderData_s *
loaderData->kbd = strdup(infoTable[num].name);
-#ifdef __sparc__
- if (kbdtypep) *kbdtypep = (kbdtype == KBDTYPE_SUN) ? "sun" :
"pc";
-#endif
-
return rc;
}
diff -up anaconda-11.4.0.82/scripts/getkeymaps.BAD anaconda-11.4.0.82/scripts/getkeymaps
--- anaconda-11.4.0.82/scripts/getkeymaps.BAD 2008-09-28 09:37:28.000000000 -0400
+++ anaconda-11.4.0.82/scripts/getkeymaps 2008-09-28 09:37:44.000000000 -0400
@@ -45,11 +45,7 @@ TMP=${TMPDIR:-/tmp}/keymaps.$$
rm -rf $TMP
mkdir -p $TMP
-if [ $ARCH = "sparc" ]; then
- PATTERN={i386,sun}
-else
- PATTERN=i386
-fi
+PATTERN=i386
MAPS=$(python -c "import rhpl.keyboard_models ;
rhpl.keyboard_models.get_supported_models()")
diff -up anaconda-11.4.0.82/scripts/mk-images.sparc.BAD
anaconda-11.4.0.82/scripts/mk-images.sparc
--- anaconda-11.4.0.82/scripts/mk-images.sparc.BAD 2008-09-28 09:37:07.000000000 -0400
+++ anaconda-11.4.0.82/scripts/mk-images.sparc 2008-09-28 09:36:29.000000000 -0400
@@ -0,0 +1,115 @@
+#
+# mk-images.sparc
+#
+# Copyright (C) 2008 Tom "spot" Callaway <tcallawa(a)redhat.com>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <
http://www.gnu.org/licenses/>.
+#
+
+SPARCMODS="openpromfs sermouse qlogicpti pluto fcal soc socal esp fc4 aic7xxx
sym53c8xx qlogicisp mptbase mptscsih mptfc mptsas qla2xxx qla2100 qla2200 qla2300"
+TILO=$IMGPATH/usr/bin/tilo
+SILO=$IMGPATH/usr/sbin/silo
+
+maketftp() {
+ while [ x$(echo $1 | cut -c1-2) = x"--" ]; do
+ if [ $1 = "--kernel" ]; then
+ TFTPKERNEL=$2
+ shift; shift
+ continue
+ elif [ $1 = "--initrdfrom" ]; then
+ TFTPINITRD=$2
+ shift; shift
+ continue
+ elif [ $1 = "--imagename" ]; then
+ TFTPIMAGE=$2
+ shift; shift
+ continue
+ elif [ $1 = "--systemmap" ]; then
+ TFTPSYSMAP=$2
+ shift; shift
+ continue
+ fi
+ echo "bad argument $1 passed to maketftp"
+ exit 1
+ done
+
+ elftoaout $TFTPKERNEL -o $TFTPIMAGE
+ if [ "$KERNELARCH" = "sparc" ]; then
+ piggyback $TFTPIMAGE $TFTPSYSMAP $TFTPINITRD
+ elif [ "$KERNELARCH" = "sparc64" ]; then
+ piggyback64 $TFTPIMAGE $TFTPSYSMAP $TFTPINITRD
+ fi
+}
+
+prepareBootImage() {
+ echo "sparc: prepareBootImage() is called"
+
+ dd if=/dev/zero of=$MBD_TMPIMAGE bs=1k count=$BOOTDISKSIZE 2>/dev/null
+ echo y | /sbin/mke2fs -b 1024 -r 0 -O none $MBD_TMPIMAGE > /dev/null
2>/dev/null
+ LODEV=`findloopdevice $MBD_TMPIMAGE`
+ mount $LODEV -t ext2 $MBD_BOOTTREE
+ cp $BOOTDISKDIR/fd.b $MBD_BOOTTREE
+ cp $BOOTDISKDIR/second.b $MBD_BOOTTREE
+ cp $BOOTDISKDIR/*.msg $stagedir
+ mkdir -p $MBD_BOOTTREE/etc
+ cp $BOOTDISKDIR/silo.conf $MBD_BOOTTREE/etc
+ zcat $KERNELROOT/boot/vmlinuz-* | gzip -9 > $MBD_BOOTTREE/vmlinux.gz
+ umount $LODEV
+ losetup -d $LODEV
+ mount -o loop -t ext2 $MBD_TMPIMAGE $MBD_BOOTTREE
+ $SILO -r $MBD_BOOTTREE -i /fd.b -b /second.b -C /etc/silo.conf -F
+}
+
+makeBootImages() {
+ echo "Building boot images for kernel $kernelvers.$KERNELARCH"
+
+ mkdir -p $TOPDESTPATH/boot
+ cp $BOOTDISKDIR/isofs.b $TOPDESTPATH/boot
+ cp $BOOTDISKDIR/second.b $TOPDESTPATH/boot
+ cp $BOOTDISKDIR/etc/silo.conf $TOPDESTPATH/boot
+
+ mkdir -p $TOPDESTPATH/etc
+ cp $BOOTDISKDIR/*.msg $TOPDESTPATH/etc
+
+ mkdir -p $TOPDESTPATH/kernels
+ cp $KERNELROOT/boot/vmlinuz-* $TOPDESTPATH/kernels/vmlinux
+ cp $KERNELROOT/boot/System.map-* $TOPDESTPATH/boot/System.map
+
+ echo "List of init modules: $INITRDMODS $SPARCMODS"
+
+ makeinitrd --initrdto $TOPDESTPATH/boot/initrd.img \
+ --initrdsize 8192 \
+ --loaderbin loader \
+ --modules "$INITRDMODS $SPARCMODS"
+
+ maketftp --kernel $TOPDESTPATH/boot/vmlinux \
+ --imagename $TOPDESTPATH/images/tftp.img \
+ --initrdfrom $TOPDESTPATH/boot/initrd.img \
+ --systemmap $TOPDESTPATH/boot/System.map
+
+}
+
+doPostImages() {
+ if [ -n "$BOOTISO" ]; then
+ echo "Making $BOOTISO"
+ mkisofs -R -J -T \
+ -G /boot/isofs.b \
+ -B ... \
+ -s /boot/silo.conf \
+ -r -V "PBOOT" -A "$PRODUCT $VERSION" \
+ -x Fedora \
+ -x repodata \
+ -sparc-label "$PRODUCT $VERSION Boot Disc" -o $TOPDESTPATH/images/$BOOTISO
$TOPDESTPATH
+ fi
+}
diff -up anaconda-11.4.0.82/scripts/pkgorder.BAD anaconda-11.4.0.82/scripts/pkgorder
--- anaconda-11.4.0.82/scripts/pkgorder.BAD 2008-09-28 10:30:13.000000000 -0400
+++ anaconda-11.4.0.82/scripts/pkgorder 2008-09-28 10:31:42.000000000 -0400
@@ -70,6 +70,9 @@ class PackageOrderer(yum.YumBase):
self.repos.setCache(0)
self.doRepoSetup()
+# We have to hack this in here, otherwise, we won't get sparc64v, sparcv9v
+ if arch.startswith("sparc64"):
+ self.arch = "sparc64v"
self.doSackSetup(rpmUtils.arch.getArchList(self.arch))
self.doTsSetup()
self.doGroupSetup()
diff -up anaconda-11.4.0.82/scripts/upd-instroot.BAD
anaconda-11.4.0.82/scripts/upd-instroot
--- anaconda-11.4.0.82/scripts/upd-instroot.BAD 2008-09-28 09:38:19.000000000 -0400
+++ anaconda-11.4.0.82/scripts/upd-instroot 2008-09-28 09:39:14.000000000 -0400
@@ -198,6 +198,10 @@ if [ $ARCH = ppc -o $ARCH = ppc64 ]; the
PACKAGES="$PACKAGES pcmciautils pdisk yaboot hfsutils"
fi
+if [ $ARCH = sparc -o $ARCH = sparc64 ]; then
+ PACKAGES="$PACKAGES silo"
+fi
+
# xpm is missing
# Some packages are listed twice, but that's okay
diff -up anaconda-11.4.0.82/yuminstall.py.BAD anaconda-11.4.0.82/yuminstall.py
--- anaconda-11.4.0.82/yuminstall.py.BAD 2008-09-28 09:44:33.000000000 -0400
+++ anaconda-11.4.0.82/yuminstall.py 2008-09-28 09:45:04.000000000 -0400
@@ -1205,6 +1205,8 @@ class YumBackend(AnacondaBackend):
# XXX this needs to become grub, and we need an upgrade path...
elif rhpl.getArch() == "ia64":
self.selectPackage("elilo")
+ elif rhpl.getArch() in ("sparc", "sparc64"):
+ self.selectPackage("silo")
def selectFSPackages(self, fsset, diskset):
for entry in fsset.entries:
--- NEW FILE keymaps-sparc ---
$ØNBp%$ÙWÕ=w×LÍLÕ£©%YÑüúõñûŸªzõý~t
lܲiß°|[ÕýPcmÜ¢úm«Ÿ7îÙ14°Eí=lV}ÝFkÓê¶
ÖíUµñmÕ÷ÙíCý^¡ôÒζJ¯Ëh[Õ÷[ßö"mCªÚÄ{Ø9šŽíTë!õãáÎÝË.SÞV=Õ÷Ùf¥sØyÝÎͶ©n«ŸïÚ¹léJÛÖ[[Tµ5ZÛ¶tîQºþÕYÛ·ª¿ßí;ÔcŒsërå×Ý9¢ª-b
íèß»y»Ú>ÚœLñ=ðm+kÚÝ9žsÙòóU®%CÊÇ/Û·UÝ5Öðê÷Øá;Ô¯¿Ã[ìÛ>
}6ŒuÇMÛ7)íßá¡ÎÁ}çæðõûæÈÐ.EmݪçPµ;{!ÁMÛGv«l«öªß·ýô YŸägÝtÓL 0Àh
v8ÓЧà}Xp
X@M(
ýBÿÅl»]ÏndkÙ÷Ø·Ù5ìZËEBÿuìvû&û»}}]É®ùðé¿ÝÌna²Ø%ìjè%ÐIúù{ª3"FœÑ`L2&³9€?Cÿc®Ñ]¿ÉbúÍj%ýQÒ?=0ÿúÄ×{`¿ø.?Ü
·ÉâoôÊ`Arüí¿gBjëÖkuÁH°>ØlN 7fž!<)<9<-\ëÃÓÃ,\®
W;ú{SÓRõBfxJqñ7ù0fÂ,
sàÐ>ÇÖOw»fÂ$h&B?G ¶ÅõCL&©U$¡Ô@-ž~zî4Jÿ³ÿpâÿVcÑfÌ7íÆ9ÆBcÑAñ·²Çßc±ÑéY°þ(×ïþ!Ó/è¯ìªÿ>Çù2ýf£?Ïó߬ÉËp9çáùx^ßÀp).ÄN<aÀQÜC8ûp7nÆžoÅÛ°6dâ.Æx;Þwâ]ž·â6lç:q=îÅ»q÷àÜq%®@çúüø 4 «¡ Åõ/
côp0LúÃŽ[°\¬2÷øu\¿9ÉnÖ
ùÿ(¿Ðo`3q6bN¡#?6àdŽ°
CXk0Ó1SÑÄŽø#Hõç¿L?Î,4þY<°¡=°nºUvó°Zx ]äfÒ=°·
4áNYh'x9§ž"gŒ\àÊ"<pÄö@ü]Åyà@œó\fVÓëoáÚ`>¹Û°X`!9à¡ÿ:r³é\¢Ðq~ø ôï'ç÷ÀäWÁXÃO{`X,ôqÝÅy`X¢{à§à<÷ÁAxü/9\îáp"þðHrüé±Ýã»×ÁÓÉñÇc¿Ïæ)þrqîäáhq83þŠ}ÌŽœoFò|
äæ2<°ãt(ÉõÏ"ç÷ÂÖÅ=`!8ðÀöû+ܧéÏå]ôÇ=°~íxàtý)Øõïeñ@1ýÚ¯ÙÎÿÔK¯?Î
{ þGë÷f,T ú¢púÿÁq"À#ð€ðœ0øÞNÄ!¿èIê
÷D?Ð!;þÄ÷À~8Ìû° «X,]?fŠxàf5¶nJ÷À~e y?H²ê[þ€Q&qý©TåOr×o÷
:Ç'úË:Òh4ÑDÏÊÚD_÷e0P§?(ûñœôé¢_0Ð/¶"ý©ñ·õËâï'Ê}þ;ÔìÎ@NYÚñOÄD$Óïk*äS7Ýt« ~°,ý +èœ.cáºJ8T<` ¡Úp»$Æ (ôù~0¢©(és×
lý¹(§þläª3PüÓð%<ÿßÂÇpV[4þ
ø¥ñÏÍÀfýc%Trüϧ»,þÄÉø·Ò±ŽÒ%þÝ®øÈ5ª>.<þYPÖâA?{üBõ'О~PÿÙíRx`(V¿/âïÅñ¯ãþ²ëÌuþÇX5þ€¿%~·~@ÒïÞÈõ;ÑÝ ý~:ÿ}ÿú¥EÅñoqwÒXع~;ÿÅ×sÏf?pŸúc9|õ§æ@dñ?ûýàþ:ÿµþÊÕ¯sºéŠs9 ÑŒr@ûÊ$Ê9 uyåÖI(ªÍ+Œ¯LrÀQåðºŒrÀkË$¬lÎ+Ô4árÍyå&\°ôñ÷wpbÆ_=8Wh_å
%ñÏ:*"Ëç3Ê=þ±z9ëšÎ
;PLMŒÂëBËã¯T¡ÈHQs¡"
Î)D?ÌJ^çÆo.ûñï ßÏ
Âù\(QaÇs¡"^ÔÅv¿ÈŽÒ«óz°ÏÁ
ÄÿÝž^ måšÑàuÁûÈØú×þøÇ{Dg?:×ìqæÿô¹pÅÎ
rôå;JõúÒêèù3 ÎÎÎãWÑM¿f@ÝtÓèÎÐ^BßÄ`@X¯PÆÈ«zkÔšP3 f@Í5êŠ[
2`¯¡GÆÊç©3 í
Ñ2d@*Æ÷Nþž^÷V.r~ÒXþœÄ1²±À=2üÐWèÔ
Wb@Ú7äã1Z~ÈãÊñ£Ã1ª°â0¹iÔM·ÎòìCgm°Ì~ÀØpR0ÐhÙ1à¡cAã5Ù)é|œIÿ¢Ž~g@Ÿ6Z[*ÂÛÚh¹Ç:k¥Ä?y}dV`ÀÞR2`kâWß8kEJVŒÖËýU°tXAkcåÉ
ùcî/#|#¹Ý ß® +È=s_|¹à«ÈGßÄÖy³>¬×XÔì¡ÏtåúíR㻺ƿן
÷Põ¥%©I>WÄ_älÉ÷6 ¯ 7X#¶°=`ü!w¹ÀFr{éùÂ÷È}átzz-ùÈ©ÐìÍú°^{`÷º¶kÅ?UvÑ¿Tÿ\_e}ÐBôÇ<`výeÀ
Œ¯Æ°_
Ãxu^WáÍx®+¶.b!c¡r¯ËG!ÿ.FÿátÖÆY\¿óÿz" Î:¢¡$q2²v&cüü'zâ\4(š8j*6ÙX ЀnÌ@íp¯¬ÀiMO-;åq?@}ÉûNdÌy^Ö`Ò
p²Œr€ÿ^;F{àÉkÄâO¿ý3x"¥&È')ñÿ}ÏÚóámx@ÄÿSxÜ
 ø÷"Æ0Húâk#ÀAxGá!xÂófjü|,8ÿë)ñœÏ ýëà8(âÿÏÂÃðC'þÿVpðþR0@qòÁ_+{Ìo9ÀBÆAÀìüÇAÄõÏõNÈ)y¯ÌÇdÉ5däÀ2êb&å@°oâäÀÄXp×<ªPsT+BÿXirÀÒ¹À\¿çã`|5Ÿ.ÛñÞêåÐg×ÿ³ÿ¹:¢nºéßr ô?or 'zç@žä@À7ÂÇÿ~ÿž÷9ÒÐ9os vü+7"Ó¯s áñ¯ä}üWn+<âÄ¿bs 2ýeÐkÃèŠÎŽ[Št}ÐÓ²÷E Íë£)×@òâUg@ŽÂ"8#Xôkh¬ú9|
Rp^µaÖ%ÆË IÙ1
ap\p;¹ßN8
ýp
Þ>{àò~éu¡MhpWÆXÈmðc÷&<
򟲱0
éãñ'ç÷Àñ÷µyaœ6nºMPÌ°3¬µ³sX';ÍúÙ)ö>[Ȳx`&õÀì+v2,ųÅl%[ÁZB²{`Çv:~ŽÃq§Ka!_åâÅœž«8̱åì\v;]À.dß`±¥ì(ë ;»Ä3©fóÙ³€?ųn¶u±Ã!7rýÕâ^îÍÉfÀñS85æa±Ð¿&·þTL·°fXD=0ôÅ<0yßÁpšèðø;ü þ
Oc>Õôw_ÂOàQø>_ÃÏàbfÍCçÇĬàxçámøî%ýÓø|j#îèoJòÀw\tüù| ð*< ÇáܯÀáeøüú?áôßÀÿÀ×ðgøXq=ü^üÝàø)</Áëð.üÞ§Ù¯àÒÿ7?¢»|ù Ù?"ßgÕO®Qáø3
b(éK«Ÿ
Ö@7×_]åìèwjЧÈ&×FO« ì£ÙkBðõád5DÐ8¹LÞWMfOkÀ§Ä?ÓûfÖDhÊ«.VÖÚØyçëœÏ&ëWªæ¡~?0@ìøW® ÜV]E0êiM0@"þØ=8Ûp>_á=\úÁðÜc}Ž±Ž~°UŒËÇ¿z]4ú
ìòbñÏîÈÑüû}ÊþÊ>c§ÙögöIÜÿüý
}À>gÿËN±?±ß³?XmoûØìKöûûýqüüOîë_vÿCæ{œÁ~ÉÞd¯°WÙÏÙëqÿóììöûOö2ûû û©eÑö¶ÿyœÍÞa¿b?f¯±ÿÊð?nã TüONýéþGíú¶üOüøwñ?€ßÌ¡ßÅÿxsÿóÊÿXŠ¢ÿq?þsûIüåþGU¿ö?gÓÿä«?výÏW¿Y[ÿÄð? ý©þG%þí¢ÛÿäÒg]XCç@uÓrÀÄ5_³¿H×ÇüýM²>æâ¢CÀþ^õ1ÙÇ%Ê·C+O1PqÍ»ìÒõ1ßdÿ-YóUâ¢×Hÿ¯ÓrÀÝ^Ô
e¯"Lú£pèï
c°þ¿œ+ªºÒçUWWNÒÉÌm`hÀnY
îÙ2ë73]ièάffL4ºÙ÷$³ïà
\žÄ
\Àž°(Kc TTûî{U]¯êÞ÷î{ïÞª÷ªÎå+ºé8ý¿ªwþsþÿ3pÜ`«Ë`ó9?ÿ÷¯DàUØãáÇa§Ëð2x¶û`ç
Øl£â
`&sà¬Í
Ä_í
ðßøùÛwòG þÊWÀSä[ÆŒáñ{û!ý·ñóëF#þÜÕÔZxþ]o£
73V§©óøKÂÝàåü£ÕZè«hóâçï_Å~ü@|Ë/ó¿c,ñ/å¬ê<Î8_âh ÿsj/ÀEæ"íGô¯jñ·üúr Ú¯Ô¹þ·Q?q :tir UzÈÍ9ZÙrèR=äjŸ9º€8Ïù+ÈÅ_VHqüðs9PÀ¬¹TûárÈŒHñ'ã@Ùôëp w©øsÏVéq
¬øÁsÇxüäƯÃ|XÍ.güõ/5ÉÜÝ É8PVvÄà@€
§C§MŒ
þa[*/@w Ãs³áã@¶876Zž0ÔaÙß(ê°ÁøÇçÌDêïqþT×JåÛØ
p
ø$|VÂUð1ø\0 î
OÁ¯ÃoÂoÁeðÛð;ð»pöÃ0Ï^UðûðkðøUø8dßÜ+jøÁábG:|~~~~._
£Ð/âÿøyøaø0ü(üüü$ü¬
Q߯ÀÁ/ÁÂOCúáýÀ"ßñü0Ëzk9dFŸJò×WTRhægÒ\¿§ÿJ¡»"µ@YÐÃ"ÒÙÞÂ~è¿RáßÚ~`1(W~`¯ÁæúaÅ4°zoL4þÂW3fëù/kæùßèë?;~àsAÑ¡ÓH2éšÇ$3*È°ŠH2iÂã@HcHç@0»ß/+ÏõXM
/ªæ
ÌÅr¹ÿTŸ8€°Æ}?n
{Ø=8(øe³aGÙjyÌX¿Œ~6,Lá ®ÊÙH}üññÜ·î ?Û8?S<ÿzÃþL֫ߥʲþ¬uàq{upEìÊ'ëàW«ràbQYßËà6Á¬ÕÁ9°0VÍ
ösÀZÎ6Ekadÿ¢N\ò]uðè0$fIràÈ:°àd
>Èô>ÿš¹H1ãyÙÁúüXî PyÙj·Î9µ>Åí(9ß`þ\$iõ«ú
Èý%®*e
š R_¥
4øÆÿÓ~Àáå4^)ØÐ×Ä_x¬;ñççùOø·4þ5@ÒÂÓ¡Ó5À
°Y©*ë`êkEŠ
Jt@§Ö-KçUÖÀªw¬Nábç$þpKÿ×ð
XáÝñ£°O²`àÀa¬õðùoÖÉð×zm=þqü°ªøÃt0uø?PÿdÄ¿Îjºêú¯òBÌš €ôBê
×@ºLé L×
°âVÕ
°>Æïì"+:šåéüÐrüktP#BÕÇÕ^¡"
¯-è .®?bËš+M
Ô°€ ~h=&ÞMVç0¬Ô«Œ
ÿG«ú Wãµü×UõAnÀMž]à¿ëŽPÆýP çf:Jàæ*àæ)8üùÝQ\ÿ>øs¹ss
ó çÓÎÇÏ8t®l
Zž©
Ä\P|3ŸÇñkx?>;ð)|ÄüýÛñžïÆø~¿÷án|ÚÇîÅGñ!ü*>OpNø»sAã_ªôÝ^{ñ3þïà·ðÃ#øŸ
§p¿þãëø*Àãx¿/àA<oúø¿§ñe|â+ø>û5ð€Z°øõÁºS³¥
KöãÚ®¿v7ŽÛÓ}°©
-þ*|.`»RŒþµþñÿmÄn,ósñìh!¿þEÔ
Àÿ/ññð¯ðOñ³øÇø¯øoøçøOþõÿøøGøøyü[üþ5þ þþþ»Àÿð_ðïðoð/ðïñ?ññ¿S0éãÀ)û๯46þš@j
¿ñÀQ</ãóx³ûçð5|sûïà)ÿ+øÛáæ|ÿ8ÃoáA<oÁ<ÿ|_âìOàx
ýõï¿Z&L¿6.(ç2úô;üä3Xóq5Züã×
?`b-4ÿ¯dMÆЬÄ?Ù=%wÔ©ñ³µz.Ço0¿:~õ~aIü4?0Ç?Àþ3=üãiùÏ?Õ©å@âù¿ÿOSq +ÏòÆÔ<þ^ÿÍD*4c.ªº(æJúåû}°|ÿê6îþ¯énYüuÿí¿¢ÿÈú øëú ùo°ZÿÆÕ_ÿtðùúWjíøINêS8qXêÇ}j?8®SøÁdº,«0Ïšýàž
Ç¿Pâ¿ }àöóèçÙ;hÁÓâ¯ÞbGlºöõðoküs¯O©Øf>~Ó3á¬é š@Õ
à(ìÍ<þuxI6öGk!]níÖ@ÄÏbû^Ñ)vÝ`2ü5 w·ðñ¯Þ\Pp ÝhÃõøGíFÆ_ijìXð]ÙØ
Š¿æn¬sbyêãM/@£âì3=®K/ïFÒä«bÕ
þüÊ?[ÏÿU Mg3ØLV¹ÿø%ZHþµÓU5þŸOœù÷f¡Â4ýðrü=`EüéŽ ,[¯ÿMߌðOL
¬;¢Öe:~è1@³VÑšj`6t
Àñßó¢žþUñËý°U Z@ùú«Ð}ý¿ýŽÐŽâ@4©Ýg"õùñ¿§ðqÜÏâ|Àœž'`'ÀÇð >ð5|r'üçã <ñÜ
ÏàÓ.þž;ãsë9°ÿux=Þ_Á{ðVŒ·rv>à_ÿñnŒ ïÃ-x?nÀÛpîÀÿ\7àvüÞwàí.Æ[²9I[Þ¢3Žýöã&ÑÓ~\{3â:$ÓîMÄ,îÇmFüÞK~P:t-µ©fÂàIôfÂô%Ò7·5ŠÂð~X¡èíÆûÄLþé>ð®9b&Ìjáž»áV
?ÿLIí;Ü{`ÿê>
?èXû@k¬ÍÍEȬ¶ÜJ4±Ûæ~Øk¿ßlØ0?h3µÀý áøçd.€M?(H|ÄèÐiuÐó%9à[Ç7à4~zytA0äÜàÆ~ÀfÍ
%&àÔÔÁG`'>à
6Àæ²ó\¯Çùß ÷¿ ÿôv#, úáDüÓ^ÿl©×?]ÈÿÏA¶/ÅOñ;-Ïó£
û.±eüà#øÖ¹N3ãl%ÌñL `üµ02~.(ÔqÀ¹ } Iû@-|&B€N6!-þj-0Z0k3qÜø¡'qüþR€Ò%ìIá
ÿZžtÈž($þÂÛ¢¯)£ý5×éà_?,d?\²0iðÝoàõÏô~4ÙLk;ÒÓ]ÿ¥fÄ!ü#öÇ×BBÿ©µ!ù_2-xúø=ÐÙ~àñN©LWWÆop& Ýû<ÿÚ0ÿÖÏÿJ
Êÿ¬ÍÄËeüÊÿXvöã&Ó§ƿñ3ñ²tÿKrÿWÏD³ÿØÅ¿ññSþCùå?ÿPþCùå?ÿPþCùå?ÿPþCùå?ÿPþCùOcðO¡€CN«k
ïEmE9ߧ©ìugAÑ@Á&Ér,ŸNª4 gaEÏÂq \=òÁéà¯ä
--- NEW FILE screenfont-sparc.gz ---
@screenfont-sparc
þÖ0`Sâšø[[Z
FšcòDSà¯Úú£h[+Õ¶þ¢õ׶ÚjŶڰSÚeÙ]Ý€mmd- .Îô÷Þd|ç>t?ûÙþqŸÃK2ïŒsóœç{ï
#ÝIùýweS\ÙE#IJw@áÖ~¡:@,Ûp£ÀúC<RÄu&4Øè9âMÞ?±5øüd¿L§»É¹¹wOÇO0ÂIÃBÓ·ÏX¹?â÷û¹ò
D®ndÈÑoH£¡_PÀúm³ýÏŠ4ú)khùÙÁåX^ã`Gι×2²Ì¯óŸ
Cºù&0wù`®AÆñ+'Ç®ŽòXl(a)So6?É]N=³ºÇÍ¿ŠýVtÀøÃð£»Lb'ûÜåVòãû×õN±ØÝE`Ú_Ÿ³Œ5óí¿o?Gko*PÃêûXýX8àgë/v¯ÕÚ7ëÑþ.BhäÝÝEfþ;ûÄ9ûÒ®}Å®»hðœÑUdørÀ% mfž¡Æïcô"ÜèÜï©Œè6=ÞzÚük[,ŽpÕOe3|~Õ=Kätù>?^@°úV~
žQl¢#ÎóãfXÇO¿jüâ®!Ë·
ºÖ$ÿÖ°aý`ÚOºTa²ëº<ÖW)ýú×wZ9-J0ÓçÙrá>ºÃÚòæbð(?6{ÍßFšÑ%u//°¹åný<2?q+úõ9zäINëã.>
oKžû7¢×·ó¯=ü«_žŠÀ)ýúdþãŠo/¿y}äŸü¬Wý
~}ÎnŠõO_vÈ+ÿÅ"nãCPÿ<Ú¯Õ§ý~ÊCn'G \Oç§ZÿóW~[.ÖÍoåü0džOÙT"ʲÑÍ¿åüÙpå'Î=Ø7yì_`ø±XÞþÚñ=rýáÚ>+ÿm$ùõŬX¬Ø¬F÷ö»hõ·Ô=ÿ,z¹¶Oö3ÿcý_Ê%cm~àêÃc{ÆAtþ/çO®öõîÇþÅ
jÒWÃ3Ã+íneÜçîîî[ê Zq9¯
%=ók>t@&³!é[|óCs]MäÈcñŠ¹'ß ý©§ž8±;>b)Û>ìú*Åob©µúý¬v~Áõ³vÿÅ¿l|Æè¡×·ã«oxÕoÇgVë`¹ï ŒŽÁÝÁ¥]9ÝÙq2€ùøFÙ¿µÅa¿4óKCÕþ|ì§Y¿t¥=ôÉÿ}Çþývýdo¯ðçwØ¿Ò?³?/ÆãiÍþù¶ØFßð<íúÛך??¬©×/ìIèÏûl9·?_¿SþX³ûû€¹m[xjcN.qï?íéÞ?²Æ¿æ|ù¯×§'4ú- ¯ýÃm~+mpõñíçÏG°uz}«ýŒŸuûSöZìþ
}iôíø©Ùÿ(ïŠ\ßOÞC}÷ô±|þëŸ?V>rã(a¬çàŸ¿õÜ?Åq©É¯hy¢ÕOêõ[^õã}ô¿vÿÏâfã¯^ß:¡Ðì/iENóó:qÂóýò]€
à¶0
YëýGŸLfHsþ¬?Á0ôû[ñž×þŽ×û!Z·]sÍó«<bšÔ^&·¶»ûiû??câc¢6ëŒßÄ®¯J(ÔÖêÏÿe÷³4ç÷Œü)m
ÜàÅ/ŽlÚHóçëžþý5êý{üܪ{Ÿ4·Ãœú}Ï÷<Þoòz?š0L
[ã±:ö»I7·Ìä©ýý~ÝøÞEÿÊgâ->Ò-<ÿŒö÷ü
ÉÌ`ŽûË
±ñìW@Ùñ?
Yý9V¿;1"énÍþ¿Á¯Ñwž»ðš°^NúvfåVÐéï,lÍjôÑøCxiú§??/èÆ?x¿?€}ÿ«4öµ¡>€Ù"ŒÞï)?_Z·¥ÿe¹ûø·B@ÿVØÍ+euãùÛšãïf+læýCå_Âs|Ñ'¿Yë¯ñüÐï¿ëÎgaÈ^>³þÛJأѷçß>]üicó7+
ë)°ùâFžü
ÉÏèãÂñã£4~ü
ÝÛýZñµîŽføÅ;z4ñiÐ~?µÀÛªçãÿNËŸÇ
êü§?C³Ù>¿¿ )¿Ùø=ÚÇÛºU±}ñÖDå@lûmÕèø9ÄnøøèŽí_Oõ
Òè
-ìø(8/0³üYËíÐØÇô8»ÞIŽµEe²+HCó©ý¿7¥Ón}+@Ããý`¿nÿP]«?ŠA9pÌ
ÖVW[ÿCMí€jfð7ƪj»£3VØà
EýcÇSŸî1þÊÊæ3¢lë**}Xrï®MSKÐÙÇ7ouÚúO.šÃ)ŠnüøVyFIß}ýæ!w(6=Úyw猹:y''¯õC¥OÊêz¹e ¥XÿsŽr?pFG4Úé*Â"ÜâßKÓŒ<šM³e£[p^µ¯ä\é!/mSr5cO»çGýÀêÛÜš;~ìŒÕ<¿|â¶ßÁ±«:;£Ñ`õ¯V_?>(éÆ·%¯^š«`XŸèãucøO·ØRWçñ?LµéK§ø^]]û·¢;£ÅSÏ?v|;û¡ð~Ÿ¢èþç]»uKñ
Ö¬@ @ @ @ @ @ @ @ @ @ @ @ @
@ @ @ @ @ @ @ @ @
Áß:ú;7£Šqߊñroùú;¶÷ߟú°é;ÎÄ{øÜ
þ®Äû`Þ"ÎÝ4²,zµ/ºíŠoúzü:d×nñý<ún)ÖuâukƺlTÁü9!×ÙoRû¬ï
&
Úý߳ѱØåL]C4m}TÕ§l®ïYRеiQ'ùcwÐ#Þ¶mdù$fÿbg=Mıÿ/°Ë¡!=\N¶{³SNxÓp²ä%;3XþzŽÏöÑ<
Rs}Ã6Ò3ŠoÊr»>ªçÈZ§ü]ÿ>è4UõÛ¥rÑŸ©ÿç)Xý_>sÙ
WÍLŽ6]ßÞd®\h_ÚúIŽ+AgŸ ¹mûNYnBœiZvÄûöÃcú{ÐOók÷¯çU©Å+ÚnLþo:xsûÖ+ŒíW-MŽ¶_»tEÛ')`vSKSóñ³fÏ _o6L\žrEp¹28;8{ÖI³Â'0'xê
gBûSàõæÒWµ4zÕÖÞ¶ìè¿|ÒžÿQŽ?Fç
¢b=ÆŽ`~ÿêºæÙg©ÿtqï¶Ñõžå»{1Ÿ[ói)ëÃåãÏžE^cÕ,·çã4V·BŒªoqqbìÝNkáœÇ¶`ŸöìÛßõ#þÆž5uÀ}LùÆãÈþÐÝNs^ªœm]oqìÃKVŒTر3G.·c¶oñhñýÙo>Uœ;£4OyòË0+íÜõ£x-væŒó"æ${;Mø§}¢þìœcDüWÃsÌJÌ¥üVcfz
õÐ
ÇÀ±pM0B0fà Ù-0Âð8 N|æÂ)8ÁÏÃ,øTX
ÁåpÄ`)\ WA+,8\
Ëa| ®\mÐœVÂõpÜp$áËp3Ü)žÒ°
:a5Ü·Ãp'Ü_»á«ð5žî
ûà~ø:¬àAø|ŸÁ·áaXßGàQø.|ŸÁãð<|Ö©üP-
gàYx¿Áqeô"ü~ªn
ágðJëðsø
º@]šð+ÈÀ°º`#ü=dá×° ~¿
ü#lFn
7áß`+ü;äá?à?¡zàwÐoÁ6ø/ø=üÞ?BŒÛá¿á]øì÷`'ôc&¿ÞÝðüìaöÂGðg¿@ŸÃÐäCò"ù<IŸ$o?É£äSò*ù<KŸ%ïÉÃäcò2ù<MŸ&o¿Éãäsò:ù<OŸ'ïÿÄbñ@\
6Ä bñAÜ v?!Äb ñB\!¶_1Äb
ñCÜ!öAÄ!bñD\"6QÄ)bñEÜ"v¿aÄ1bñF\#¶ßqÄ9bñGÜ#ö¥=ÈOà(|ÇàSøYø®f~§ñóÌg9åçUòêxdÖä±ù¥*á'ª
9æðó²?SÕȵ±°?¯ªàçê@øí_ª
üJÃÈ¿ÕÈÀÛ·#ï@ÞLŒ¹x²±ùøUdä8ää=ÈÊ7÷!3ïGnn@v®A~Ö"CÇ#Gë¥ßD~úrõÛÈÖ¯±ßAÎ>¬}y;zU-r÷ûÈÞ¿Ä`â0±xLL&.OB6OF>£
ä4±z#òMÜÞêä÷døTäx=²xNL'®Ûï
Èxâ<±xÔx(B#ZŸ-œ
WíuªBM@K>|QùÕD5F¬ªÕ$5VMV(CšŠ õîFëmW5jª§ê±k°€UV÷ªÉ°Cð55Þŧñ©iªAÕ!êPüv~ßfà·ÃÕaðÑ`:¿?ÂG«£0<Ÿ®
~Õ_Q3áRÇšYêXÕ¬S'ªãU|CÍÝ*OšÏš&u©NFöDŧçâÓóÔl5_ NEšu< Â.uºjQÔu&2â,dÃbxP
ï«óTX¥]
gi4gk[æk;ÎÑÎÕXh{ÎÓ¯q,Ôx.Ð\šX€ \€¹X»pvåRíÆep¹&r
&q¥&sŠpµz®Ñî\«©\§=ž^{rŠq£Šsf°X3¹Y{±D{söáVíËmÚ¥ÚeÅí:;t
Ëuwj6wiwk.÷è`îÕ<îÓ3ž_ðÉ
ÊJÆ*Î:t$ë(ÑÑ<ªcxLÇòžã ÏÏS:§u"Ïè$VëdÕÓ©<¯ÓxAyQ§óÎ`±Ug²MgñóºÎæ
ÃÇZÂZ··]ë\9_¹
6žJÞs{Øèö²ÙUñ¡«æ#WÃ7®O\ºz>s
|îùÂ5±ÞíãK·wÜÞuùÚâ}wM|ìñ²kæwW-íÀëÆNKd%±Û)³ÊÍSaÝ©ŽTöXöZOª,jK§Æ2šµLê¬õÖëC£õ¥Éú±Ïú³ß²8`8h9d8lÙ±Z.Çl(Í6ã6omßÙHŸ·Qü`£ùÑÆðågÇ/6_-ßl¿ÛDþ°Iüi9aSøË
øÛŠòO-AÛ01abiÚãdÏ¿AGI
:IF ¥Ag)ºHRÐUváIŽr$/È!ÁþÇÄJLi.ËÚIfJ²¬ö"[=Rë#d£=>J6ù6²×GËv#õ>V6ø8©ðñ²Å'Hï,}²TùÙáÓ¥ÁgÈNß_}ló¥ÎçÉ./M~Jè,}
¡«(ô¹!_²óCnAÈ,ûÂî)÷K¥Ò/j¿BZúÒʯÖݳy+ŒäkOš:)ò?Ei¿Œ¢
Index: anaconda.spec
===================================================================
RCS file: /cvs/pkgs/rpms/anaconda/F-9/anaconda.spec,v
retrieving revision 1.681
retrieving revision 1.682
diff -u -r1.681 -r1.682
--- anaconda.spec 6 May 2008 21:07:34 -0000 1.681
+++ anaconda.spec 1 Oct 2008 13:09:08 -0000 1.682
@@ -3,12 +3,15 @@
Summary: Graphical system installer
Name: anaconda
Version: 11.4.0.82
-Release: 1
+Release: 2
License: GPLv2+
Group: Applications/System
URL:
http://fedoraproject.org/wiki/Anaconda
Source0: anaconda-%{version}.tar.bz2
+Source1: screenfont-sparc.gz
+Source2: keymaps-sparc
+Patch0: anaconda-11.4.0.82-sparc-fixes.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -88,6 +91,9 @@
%ifarch %{ix86} x86_64 ia64
Requires: dmidecode
%endif
+%ifarch sparc sparcv9
+Requires: elftoaout, piggyback
+%endif
Requires: python-pyblock >= %{pythonpyblockver}
Requires: libbdevid >= %{libbdevidver}
Requires: libbdevid-python
@@ -145,14 +151,19 @@
%prep
%setup -q
+%patch0 -p1 -b .sparc
+cp %{SOURCE2} loader2/
%build
+cp %{SOURCE1} fonts/
+cp loader2/keymaps-sparc loader2/keymaps-sparc64
%{__make} depend
%{__make} %{?_smp_mflags}
%install
%{__rm} -rf %{buildroot}
%{__make} install DESTDIR=%{buildroot}
+cp %{buildroot}%{_prefix}/lib/anaconda-runtime/keymaps-override-sparc
%{buildroot}%{_prefix}/lib/anaconda-runtime/keymaps-override-sparc64
%ifarch %livearches
desktop-file-install --vendor="" --dir=%{buildroot}%{_datadir}/applications
%{buildroot}%{_datadir}/applications/liveinst.desktop
@@ -207,6 +218,9 @@
/sbin/chkconfig --del reconfig >/dev/null 2>&1 || :
%changelog
+* Sun Sep 28 2008 Tom "spot" Callaway <tcallawa(a)redhat.com> -
11.4.0.82-2
+- fix sparc support (merge relevant changes from old Aurora)
+
* Tue May 06 2008 Chris Lumens <clumens(a)redhat.com> - 11.4.0.82-1
- Look in the right place when ISO images are in a subdirectory
(#443580). (clumens)