New arcboot revision, possibly fixes the O2 problems we've been having.
authorJoshua Kinard <kumba@gentoo.org>
Mon, 18 Oct 2004 23:48:22 +0000 (23:48 +0000)
committerJoshua Kinard <kumba@gentoo.org>
Mon, 18 Oct 2004 23:48:22 +0000 (23:48 +0000)
sys-boot/arcboot/ChangeLog
sys-boot/arcboot/Manifest
sys-boot/arcboot/arcboot-0.3.8.4.ebuild [new file with mode: 0644]
sys-boot/arcboot/files/arcboot-0.3.8.4-gentoo.patch [new file with mode: 0644]
sys-boot/arcboot/files/digest-arcboot-0.3.8.4 [new file with mode: 0644]

index 7bd1155241ce8d65246fbe4d9b80c0eee3c2ae3d..7054f59698983d580e57e9a5a96a682c6e1e4dea 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for sys-boot/arcboot
 # Copyright 1999-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/arcboot/ChangeLog,v 1.2 2004/08/13 08:17:17 kumba Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-boot/arcboot/ChangeLog,v 1.3 2004/10/18 23:48:22 kumba Exp $
+
+*arcboot-0.3.8.4 (18 Oct 2004)
+
+  18 Oct 2004; Joshua Kinard <kumba@gentoo.org>
+  +files/arcboot-0.3.8.4-gentoo.patch, +arcboot-0.3.8.4.ebuild:
+  New arcboot revision, possibly fixes the O2 problems we've been having.
 
   13 Aug 2004; Joshua Kinard <kumba@gentoo.org> arcboot-0.3.8.2.ebuild:
   Typo fixes.
index f950c9329499c17e7b1add1d73d1e2154e30400c..e8806378dfcaaf57684e1307c61ec325d768e79e 100644 (file)
@@ -1,5 +1,8 @@
-MD5 6fb572ed7959ebf0171d2e5e18b31831 metadata.xml 317
+MD5 6e82842ea74a4efe870590242898b640 ChangeLog 722
 MD5 acc84630b73004cfe9c7acf158187164 arcboot-0.3.8.2.ebuild 3972
-MD5 a6926f2500c98946d7e58ef66ba4bde7 ChangeLog 503
-MD5 5993ec1e9bae04f3a57f094011601c4b files/digest-arcboot-0.3.8.2 67
+MD5 6fb572ed7959ebf0171d2e5e18b31831 metadata.xml 317
+MD5 8783e711a493cb67abdb4d4ec2e09feb arcboot-0.3.8.4.ebuild 3866
 MD5 ffbb46ff4240f217c96de74002a6e9eb files/arcboot-gentoo.patch 599
+MD5 5993ec1e9bae04f3a57f094011601c4b files/digest-arcboot-0.3.8.2 67
+MD5 4a128a2a822242333bdb3de922c0b895 files/arcboot-0.3.8.4-gentoo.patch 336
+MD5 439138ebd60a5a26366ea044e4468b00 files/digest-arcboot-0.3.8.4 67
diff --git a/sys-boot/arcboot/arcboot-0.3.8.4.ebuild b/sys-boot/arcboot/arcboot-0.3.8.4.ebuild
new file mode 100644 (file)
index 0000000..801c513
--- /dev/null
@@ -0,0 +1,128 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-boot/arcboot/arcboot-0.3.8.4.ebuild,v 1.1 2004/10/18 23:48:22 kumba Exp $
+
+inherit eutils
+
+MY_P="${P/-/_}"
+
+DESCRIPTION="ARCS Bootloader for SGI Machines (IP22, IP32)"
+HOMEPAGE="http://packages.qa.debian.org/a/arcboot.html"
+SRC_URI="http://http.us.debian.org/debian/pool/main/a/arcboot/${MY_P}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* ~mips"
+IUSE=""
+
+DEPEND=""
+RDEPEND="sys-boot/dvhtool
+        sys-apps/debianutils"
+
+S=${WORKDIR}/${P}
+
+pkg_setup() {
+       # arcboot is for SGI mips machines only, so exclude everyone but them
+       if use mips; then
+               if use cobalt; then
+                       eerror "arcboot is a bootloader only for MIPS machines running"
+                       eerror "ARCS firmware, such as SGI Machines.  It is not intended"
+                       eerror "for other kinds of MIPS machines."
+                       die "Wrong MIPS Machine Type"
+               fi
+       fi
+
+
+       # Set SGI_TARGET properly
+       case "$(uname -i)" in
+               "SGI IP32"|"SGI O2")            SGI_TARGET="ip32" ;;
+               "SGI Indy"|"SGI Indigo2")       SGI_TARGET="ip22" ;;
+               *)
+                       eerror "Unknown SGI Machine type.  It's possible arcboot is not usable for this machine"
+                       eerror "type yet.  Feel free to make it work and send patches!"
+                       die "Unknown SGI Machine Type"
+                       ;;
+       esac
+}
+
+src_unpack() {
+       unpack ${A}
+       cd ${S}
+
+       # Set the version
+       echo "#define __ARCSBOOT_VERSION__ \"${PV}\"" >> common/version.h
+
+       # Last time we tested, the O2's PROM did not like an ECOFF formatted 
+       # arcboot binary.
+       epatch ${FILESDIR}/${P}-gentoo.patch
+}
+
+src_compile() {
+       cd ${S}
+       local sgitype="$(echo "${SGI_TARGET}" | tr [a-z] [A-Z])"
+
+       echo -e ""
+       einfo ">>> Building for ${sgitype} ..."
+       echo -e ""
+
+       make SUBARCH="${sgitype}" || die
+}
+
+src_install() {
+       cd ${S}
+
+       # Arcboot
+       dodir /usr/lib/arcboot
+       cp ext2load/ext2load ${D}/usr/lib/arcboot/arcboot.${SGI_TARGET}
+
+       # Technically, we don't need tip22 (attaches initrd to kernel), as 
+       # MIPS kernels support embedding initrd's into kernels at build time,
+       # But maybe this will be useful one day.  Until then, we leave it out.
+##     dodir /usr/lib/tip22
+##     cp tip22/tip22 ${D}/usr/lib/tip22
+##     cp tip22/tftpload.o ${D}/usr/lib/tip22
+##     cp tip22/ld.kernel.script ${D}/usr/lib/tip22
+##     cp tip22/ld.ramdisk.script ${D}/usr/lib/tip22
+##     cp tip22/ld.script ${D}/usr/lib/tip22
+##     cp arclib/libarc.a ${D}/usr/lib/tip22
+
+       # Calling scripts for arcboot/tip22
+       # We also exclude these, since the logic in the debian script may not
+       # work correctly with a gentoo installation.  All the information a 
+       # user needs is provided in the example arcboot.conf, and in pkg_postinst().
+##     dosbin scripts/arcboot
+##     dosbin tip22/tip22
+
+       # Conf file
+       dodir /etc
+       cp etc/arcboot.conf ${D}/etc/arcboot.conf.example
+
+       # Man pages
+       # The arcboot manpage is more for the excluded arcboot script above, but 
+       # also has info on setting the PROM option properly as well as arcboot.conf
+       # examples.
+       doman debian/arcboot.8
+##     doman debian/tip22.8
+}
+
+pkg_postinst() {
+       echo -e ""
+       einfo "The arcboot image used to load the kernel from disk has been stored in"
+       einfo "/usr/lib/arcboot/arcboot.${SGI_TARGET}.  To use it, you need to copy this into"
+       einfo "the volume header with dvhtool:"
+       einfo ""
+       einfo "dvhtool --unix-to-vh /usr/lib/arcboot/arcboot.${SGI_TARGET} arcboot"
+       echo -e ""
+       einfo "Next, you need to create an arcboot.conf file.  An example arcboot.conf"
+       einfo "file has been placed in /etc."
+       echo -e ""
+       echo -e ""
+       ewarn "NOTE: If you put kernels in /boot for arcboot to load, and /boot is on a"
+       ewarn "      separate partition, then arcboot.conf MUST go into /boot/etc, and a"
+       ewarn "      symlink must be created to point /boot back to itself:"
+       ewarn ""
+       ewarn "      cd /boot; ln -sf . boot"
+       echo -e ""
+       einfo "To use arcboot, from the PROM Monitor, simply type \"arcboot\" or \"boot -f arcboot\"."
+       echo -e ""
+       echo -e ""
+}
diff --git a/sys-boot/arcboot/files/arcboot-0.3.8.4-gentoo.patch b/sys-boot/arcboot/files/arcboot-0.3.8.4-gentoo.patch
new file mode 100644 (file)
index 0000000..d298549
--- /dev/null
@@ -0,0 +1,11 @@
+--- ext2load/Makefile.orig     2004-08-03 00:08:44.000000000 -0400
++++ ext2load/Makefile  2004-08-03 00:44:43.000000000 -0400
+@@ -25,7 +25,7 @@ ASFLAGS= -mno-abicalls -G 0 -fno-pic
+ #CFLAGS+=-DDEBUG
+ 
+ LD = ld
+-LDFLAGS = -N --oformat ecoff-bigmips -T ld.script
++LDFLAGS = -N --oformat elf32-tradbigmips -T ld.script
+ 
+ TARGETS = ext2load 
+ 
diff --git a/sys-boot/arcboot/files/digest-arcboot-0.3.8.4 b/sys-boot/arcboot/files/digest-arcboot-0.3.8.4
new file mode 100644 (file)
index 0000000..1ac02a7
--- /dev/null
@@ -0,0 +1 @@
+MD5 fb79bb3524e3e38c0fabab1d6ff72051 arcboot_0.3.8.4.tar.gz 191748