diff options
author | Joshua Kinard <kumba@gentoo.org> | 2004-08-04 05:32:43 +0000 |
---|---|---|
committer | Joshua Kinard <kumba@gentoo.org> | 2004-08-04 05:32:43 +0000 |
commit | 16da1c2a6a5b7bd50f6c5a8e6c71d7640232f0ed (patch) | |
tree | 7dd6d3fbe4af6795422f2909bdb57c7eb5088597 /sys-boot/arcboot | |
parent | use patch in $DISTDIR (diff) | |
download | historical-16da1c2a6a5b7bd50f6c5a8e6c71d7640232f0ed.tar.gz historical-16da1c2a6a5b7bd50f6c5a8e6c71d7640232f0ed.tar.bz2 historical-16da1c2a6a5b7bd50f6c5a8e6c71d7640232f0ed.zip |
Initial import of arcboot, a bootloader for SGI machines.
Diffstat (limited to 'sys-boot/arcboot')
-rw-r--r-- | sys-boot/arcboot/ChangeLog | 10 | ||||
-rw-r--r-- | sys-boot/arcboot/Manifest | 5 | ||||
-rw-r--r-- | sys-boot/arcboot/arcboot-0.3.8.2.ebuild | 128 | ||||
-rw-r--r-- | sys-boot/arcboot/files/arcboot-gentoo.patch | 22 | ||||
-rw-r--r-- | sys-boot/arcboot/files/digest-arcboot-0.3.8.2 | 1 | ||||
-rw-r--r-- | sys-boot/arcboot/metadata.xml | 14 |
6 files changed, 180 insertions, 0 deletions
diff --git a/sys-boot/arcboot/ChangeLog b/sys-boot/arcboot/ChangeLog new file mode 100644 index 000000000000..65e3e8b77d1b --- /dev/null +++ b/sys-boot/arcboot/ChangeLog @@ -0,0 +1,10 @@ +# 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.1 2004/08/04 05:32:43 kumba Exp $ + +*arcboot-0.3.8.2 (04 Aug 2004) + + 04 Aug 2004; Joshua Kinard <kumba@gentoo.org> +metadata.xml, + +files/arcboot-gentoo.patch, +arcboot-0.3.8.2.ebuild: + Initial import of arcboot, a bootloader for SGI machines. + diff --git a/sys-boot/arcboot/Manifest b/sys-boot/arcboot/Manifest new file mode 100644 index 000000000000..8412df776dca --- /dev/null +++ b/sys-boot/arcboot/Manifest @@ -0,0 +1,5 @@ +MD5 6fb572ed7959ebf0171d2e5e18b31831 metadata.xml 317 +MD5 d6e799fa46bf99bfbe2bf5ea101c9656 arcboot-0.3.8.2.ebuild 3967 +MD5 aeaf236636683610f873d84016094313 ChangeLog 416 +MD5 5993ec1e9bae04f3a57f094011601c4b files/digest-arcboot-0.3.8.2 67 +MD5 ffbb46ff4240f217c96de74002a6e9eb files/arcboot-gentoo.patch 599 diff --git a/sys-boot/arcboot/arcboot-0.3.8.2.ebuild b/sys-boot/arcboot/arcboot-0.3.8.2.ebuild new file mode 100644 index 000000000000..5bed25ee537a --- /dev/null +++ b/sys-boot/arcboot/arcboot-0.3.8.2.ebuild @@ -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.2.ebuild,v 1.1 2004/08/04 05:32:43 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 [ "${PROFILE_ARCH}" = "cobalt" ]; then + error "arcboot is a bootloader only for MIPS machines running" + error "ARCS firmware, such as SGI Machines. It is not intended" + error "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" ;; + *) + error "Unknown SGI Machine type. It's possible arcboot is not usable for this machine" + error "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 + + # O2's PROM does *not* like ECOFF formatted arcboot, and gcc-3.4.x + newer binutils + # creates an overlap when doing the final arcboot link. The below patch fixes this. + epatch ${FILESDIR}/arcboot-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-gentoo.patch b/sys-boot/arcboot/files/arcboot-gentoo.patch new file mode 100644 index 000000000000..e2203f4026df --- /dev/null +++ b/sys-boot/arcboot/files/arcboot-gentoo.patch @@ -0,0 +1,22 @@ +--- 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 + +--- ext2load/ld.script.in.orig 2004-08-03 00:08:56.000000000 -0400 ++++ ext2load/ld.script.in 2004-08-03 00:44:52.000000000 -0400 +@@ -9,7 +9,7 @@ SECTIONS + .text : + { + _ftext = . ; +- *(.rodata) ++ *(.rodata*) + *(.text) + } =0 + _etext = .; diff --git a/sys-boot/arcboot/files/digest-arcboot-0.3.8.2 b/sys-boot/arcboot/files/digest-arcboot-0.3.8.2 new file mode 100644 index 000000000000..45f76772530b --- /dev/null +++ b/sys-boot/arcboot/files/digest-arcboot-0.3.8.2 @@ -0,0 +1 @@ +MD5 21c2814afbc7398fcfe2230848020805 arcboot_0.3.8.2.tar.gz 191209 diff --git a/sys-boot/arcboot/metadata.xml b/sys-boot/arcboot/metadata.xml new file mode 100644 index 000000000000..ca2621dcc3f8 --- /dev/null +++ b/sys-boot/arcboot/metadata.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>mips</herd> + <maintainer> + <email>mips@gentoo.org</email> + <name>Mips Team</name> + </maintainer> + + <longdescription> + Bootloader for SGI Machines. + </longdescription> +</pkgmetadata> + |