summaryrefslogtreecommitdiff
path: root/sys-boot/aboot
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 11:50:53 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 11:50:53 -0500
commit290aebdea65a02557706eaeda477fef0437b6a48 (patch)
treef87a939169a508a2e943570501b64cc16b411cda /sys-boot/aboot
parent6783ddcd4b73d9ce586a71770caed352bec93b16 (diff)
downloadbaldeagleos-repo-290aebdea65a02557706eaeda477fef0437b6a48.tar.gz
baldeagleos-repo-290aebdea65a02557706eaeda477fef0437b6a48.tar.xz
baldeagleos-repo-290aebdea65a02557706eaeda477fef0437b6a48.zip
Adding metadata
Diffstat (limited to 'sys-boot/aboot')
-rw-r--r--sys-boot/aboot/Manifest4
-rw-r--r--sys-boot/aboot/aboot-1.0_pre20040408-r3.ebuild90
-rw-r--r--sys-boot/aboot/aboot-2.0_pre20210801.ebuild69
-rw-r--r--sys-boot/aboot/aboot-9999.ebuild67
-rw-r--r--sys-boot/aboot/files/aboot-define_stat_only_in_userspace.patch35
-rw-r--r--sys-boot/aboot/files/aboot-gcc-3.4.patch31
-rw-r--r--sys-boot/aboot/files/aboot-gnu90.patch26
-rw-r--r--sys-boot/aboot/files/aboot-pt_note.patch308
-rw-r--r--sys-boot/aboot/files/aboot-respect-AR.patch13
-rw-r--r--sys-boot/aboot/files/aboot.conf10
-rw-r--r--sys-boot/aboot/metadata.xml9
11 files changed, 0 insertions, 662 deletions
diff --git a/sys-boot/aboot/Manifest b/sys-boot/aboot/Manifest
deleted file mode 100644
index e06ee93fc07a..000000000000
--- a/sys-boot/aboot/Manifest
+++ /dev/null
@@ -1,4 +0,0 @@
-DIST aboot-1.0_pre20040408.tar.bz2 115062 BLAKE2B 49f1b45abcd4726fd036e24709d10bbfea42cee03293e31b2deb3aec383c1c438602aa97d3909516ec9864986dfcf82612fe7644b47e3e2760bdf377313446a0 SHA512 b1fff7ce806336f89efe8239108a8547053f22727cba93cea742995432c4f35133f8dc619588390ba6e0d114e2fd62b80b730443e6c18900aa2a8832ddd4ebfc
-DIST aboot-2.0_pre20210801.tar.gz 173477 BLAKE2B 54c38a98b9e3e956f08b4fcca6a4f3351364d7774a915916aae8af67237982635a2686c1df0628fc28dcc2443da8ad57be822c8530e1580261c60dde73f00519 SHA512 57181897147bba65e8b216af262bf2d2e57cb76bd809d8207439dbfbe84ff550cf9a43c0f10f9925e54ca21660cfe9441c7607743ff3f7613c1e22e219708081
-DIST aboot_gentoo.diff.bz2 9527 BLAKE2B 2492b456f7411630b6ecfb19db775969b69a35c0ef31b2146fd353aac78cf4d3c9ef2162cf54ab4ac025c65607219b3a33a74d2105be196e6dda54dd2509c1f8 SHA512 868a73fee56e9bf6d986175a6a4dc321ed12fb78d74dfb8f1a3e35274577ddc9ea0820768b44836403587b3976ad8dacdcf6562a9ce5c45981c752670901155f
-DIST gentoo-headers-base-2.6.22.tar.bz2 4700338 BLAKE2B a264d7999ed7735e42ea21f8cf96b60ca1bdbfcb76dbdfcba14a849043e1f6a9109cd72bf5b91b9ab877dc3025ce6a9270ea914cf277b8f77cecff703646a7ec SHA512 99849928eede0c4b101ddc9179c0974cac6b4f18803dc98b72dcbe80cea88d3062f709beaa1b890edbed9c147be0dd516065d4cee945164b5d9f19f7a3cf249d
diff --git a/sys-boot/aboot/aboot-1.0_pre20040408-r3.ebuild b/sys-boot/aboot/aboot-1.0_pre20040408-r3.ebuild
deleted file mode 100644
index a14b4ee280ba..000000000000
--- a/sys-boot/aboot/aboot-1.0_pre20040408-r3.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-KERN_VER="2.6.22"
-
-DESCRIPTION="Alpha Linux boot loader for SRM"
-HOMEPAGE="http://aboot.sourceforge.net/"
-SRC_URI="http://aboot.sourceforge.net/tarballs/${P}.tar.bz2
- mirror://gentoo/gentoo-headers-base-${KERN_VER}.tar.bz2
- mirror://gentoo/${PN}_gentoo.diff.bz2
- https://dev.gentoo.org/~armin76/dist/${PN}_gentoo.diff.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* ~alpha"
-
-src_unpack() {
- unpack ${A}
- # setup local copies of kernel headers since we rely so
- # heavily on linux internals.
- mv gentoo-headers-base-${KERN_VER}/include/{linux,asm-generic,asm-alpha} "${S}"/include/ || die
- cd "${S}"/include
- ln -s asm-alpha asm || die
- touch linux/config.h || die
-}
-
-src_prepare() {
- eapply "${FILESDIR}/aboot-gcc-3.4.patch"
- eapply "${FILESDIR}/aboot-pt_note.patch"
- # Bug 364697
- eapply "${FILESDIR}/aboot-define_stat_only_in_userspace.patch"
- eapply "${FILESDIR}"/aboot-respect-AR.patch
- eapply "${FILESDIR}"/aboot-gnu90.patch
-
- # Modified patch from Debian to add netboot support
- eapply "${WORKDIR}"/aboot_gentoo.diff
-
- eapply_user
-}
-
-src_compile() {
- # too many problems with parallel building
- emake -j1 AR="$(tc-getAR)" CC="$(tc-getCC)" LD="$(tc-getLD)"
-}
-
-src_install() {
- dodir /boot /sbin /usr/share/man/man{1,5,8}
- make \
- root="${D}" \
- bindir="${D}"/sbin \
- bootdir="${D}"/boot \
- mandir="${D}"/usr/share/man \
- install
-
- insinto /boot
- doins net_aboot.nh
- dobin netabootwrap
- dodoc ChangeLog INSTALL README TODO aboot.conf
-
- insinto /etc
- newins "${FILESDIR}"/aboot.conf aboot.conf.example
-
-}
-
-pkg_postinst() {
- einfo "To make aboot install a new bootloader on your harddisk follow"
- einfo "these steps:"
- einfo ""
- einfo " - edit the file /etc/aboot.conf"
- einfo " - cd /boot"
- einfo " - swriteboot -c2 /dev/sda bootlx"
- einfo " This will install a new bootsector on /dev/sda and aboot will"
- einfo " use the second partition on this device to lookup kernel and "
- einfo " initrd (as described in the aboot.conf file)"
- einfo ""
- einfo "IMPORTANT :"
- einfo ""
- einfo "The partition table of your boot device has to contain "
- einfo "a BSD-DISKLABEL and the first 12 megabytes of your boot device"
- einfo "must not be part of a partition as aboot will write its bootloader"
- einfo "in there and not as with most x86 bootloaders into the "
- einfo "master boot sector. If your partition table does not reflect this"
- einfo "you are going to destroy your installation !"
- einfo "Also note that aboot currently only supports ext2/3 partitions"
- einfo "to boot from."
-}
diff --git a/sys-boot/aboot/aboot-2.0_pre20210801.ebuild b/sys-boot/aboot/aboot-2.0_pre20210801.ebuild
deleted file mode 100644
index 0cb5a272325e..000000000000
--- a/sys-boot/aboot/aboot-2.0_pre20210801.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-if [[ ${PV} = 9999* ]]; then
- EGIT_REPO_URI="https://github.com/mattst88/${PN}.git"
- inherit git-r3
-else
- COMMIT_ID="dde7f7b85f7631668f1da7c0b0ecf7ddbbde004e"
- SRC_URI="https://github.com/mattst88/${PN}/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN}-${COMMIT_ID}"
- KEYWORDS="-* ~alpha"
-fi
-
-DESCRIPTION="Alpha Linux boot loader for SRM"
-HOMEPAGE="https://github.com/mattst88/aboot https://sourceforge.net/projects/aboot/"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-BDEPEND="app-text/docbook-sgml-utils"
-
-src_compile() {
- emake AR="$(tc-getAR)" CC="$(tc-getCC)" LD="$(tc-getLD)" \
- all netabootwrap
-
- einfo "Building man pages"
- emake -C doc/man
-}
-
-src_install() {
- dodir /boot /sbin /usr/share/man/man{1,5,8}
- emake root="${D}" install
-
- insinto /boot
- doins net_aboot.nh
- dobin netabootwrap
- dodoc ChangeLog INSTALL README TODO aboot.conf
-
- insinto /etc
- newins "${FILESDIR}"/aboot.conf aboot.conf.example
-
-}
-
-pkg_postinst() {
- einfo "To make aboot install a new bootloader on your harddisk follow"
- einfo "these steps:"
- einfo ""
- einfo " - edit the file /etc/aboot.conf"
- einfo " - cd /boot"
- einfo " - swriteboot -c2 /dev/sda bootlx"
- einfo " This will install a new bootsector on /dev/sda and aboot will"
- einfo " use the second partition on this device to lookup kernel and "
- einfo " initrd (as described in the aboot.conf file)"
- einfo ""
- einfo "IMPORTANT :"
- einfo ""
- einfo "The partition table of your boot device has to contain "
- einfo "a BSD-DISKLABEL and the first 12 megabytes of your boot device"
- einfo "must not be part of a partition as aboot will write its bootloader"
- einfo "in there and not as with most x86 bootloaders into the "
- einfo "master boot sector. If your partition table does not reflect this"
- einfo "you are going to destroy your installation !"
- einfo "Also note that aboot currently only supports ext2/3 partitions"
- einfo "to boot from."
-}
diff --git a/sys-boot/aboot/aboot-9999.ebuild b/sys-boot/aboot/aboot-9999.ebuild
deleted file mode 100644
index 494ceb2d395e..000000000000
--- a/sys-boot/aboot/aboot-9999.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-if [[ ${PV} = 9999* ]]; then
- EGIT_REPO_URI="https://github.com/mattst88/${PN}.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/mattst88/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="-* ~alpha"
-fi
-
-DESCRIPTION="Alpha Linux boot loader for SRM"
-HOMEPAGE="https://github.com/mattst88/aboot https://sourceforge.net/projects/aboot/"
-
-LICENSE="GPL-2"
-SLOT="0"
-
-BDEPEND="app-text/docbook-sgml-utils"
-
-src_compile() {
- emake AR="$(tc-getAR)" CC="$(tc-getCC)" LD="$(tc-getLD)" \
- all netabootwrap
-
- einfo "Building man pages"
- emake -C doc/man
-}
-
-src_install() {
- dodir /boot /sbin /usr/share/man/man{1,5,8}
- emake root="${D}" install
-
- insinto /boot
- doins net_aboot.nh
- dobin netabootwrap
- dodoc ChangeLog INSTALL README TODO aboot.conf
-
- insinto /etc
- newins "${FILESDIR}"/aboot.conf aboot.conf.example
-
-}
-
-pkg_postinst() {
- einfo "To make aboot install a new bootloader on your harddisk follow"
- einfo "these steps:"
- einfo ""
- einfo " - edit the file /etc/aboot.conf"
- einfo " - cd /boot"
- einfo " - swriteboot -c2 /dev/sda bootlx"
- einfo " This will install a new bootsector on /dev/sda and aboot will"
- einfo " use the second partition on this device to lookup kernel and "
- einfo " initrd (as described in the aboot.conf file)"
- einfo ""
- einfo "IMPORTANT :"
- einfo ""
- einfo "The partition table of your boot device has to contain "
- einfo "a BSD-DISKLABEL and the first 12 megabytes of your boot device"
- einfo "must not be part of a partition as aboot will write its bootloader"
- einfo "in there and not as with most x86 bootloaders into the "
- einfo "master boot sector. If your partition table does not reflect this"
- einfo "you are going to destroy your installation !"
- einfo "Also note that aboot currently only supports ext2/3 partitions"
- einfo "to boot from."
-}
diff --git a/sys-boot/aboot/files/aboot-define_stat_only_in_userspace.patch b/sys-boot/aboot/files/aboot-define_stat_only_in_userspace.patch
deleted file mode 100644
index 5b0b5e0efedf..000000000000
--- a/sys-boot/aboot/files/aboot-define_stat_only_in_userspace.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-# Patch by Sergei Trofimovich
-# http://bugs.gentoo.org/364697
-
-diff --git a/Makefile b/Makefile
-index bbe3b60..b4245af 100644
---- a/Makefile
-+++ b/Makefile
-@@ -138,10 +138,10 @@ distclean: clean
- find . -name \*~ | xargs rm -f
-
- lib/%:
-- make -C lib $* CPPFLAGS="$(CPPFLAGS)" TESTING="$(TESTING)"
-+ make -C lib $* CPPFLAGS="$(CPPFLAGS) -D__KERNEL__" TESTING="$(TESTING)"
-
- tools/%:
-- make -C tools $* CPPFLAGS="$(CPPFLAGS)"
-+ make -C tools $* CPPFLAGS="$(CPPFLAGS) -U__KERNEL__"
-
- sdisklabel/%:
- make -C sdisklabel $* CPPFLAGS="$(CPPFLAGS)"
-diff --git a/include/isolib.h b/include/isolib.h
-index 392327a..0ef6e2a 100644
---- a/include/isolib.h
-+++ b/include/isolib.h
-@@ -7,7 +7,10 @@
- # define fd_set kernel_fd_set
- #endif
-
-+#ifdef __KERNEL__
-+/* userspace stuff has it's own struct stat */
- #include <asm/stat.h>
-+#endif
-
- extern int iso_read_super (void * data, int quiet);
- extern int iso_open (const char * filename);
diff --git a/sys-boot/aboot/files/aboot-gcc-3.4.patch b/sys-boot/aboot/files/aboot-gcc-3.4.patch
deleted file mode 100644
index 24da18ce8190..000000000000
--- a/sys-boot/aboot/files/aboot-gcc-3.4.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- aboot-1.0_pre20040408/cons.c
-+++ aboot-1.0_pre20040408/cons.c
-@@ -20,7 +20,6 @@
- #endif
-
- long cons_dev; /* console device */
--extern long int dispatch(); /* Need the full 64 bit return here...*/
-
- long
- cons_puts(const char *str, long len)
---- aboot-1.0_pre20040408/fs/ext2.c
-+++ aboot-1.0_pre20040408/fs/ext2.c
-@@ -6,6 +6,7 @@
- * This file has been ported from the DEC 32-bit Linux version
- * by David Mosberger (davidm@cs.arizona.edu).
- */
-+#include <string.h>
- #include <linux/stat.h>
- #include <linux/types.h>
- #include <linux/version.h>
---- aboot-1.0_pre20040408/include/cons.h
-+++ aboot-1.0_pre20040408/include/cons.h
-@@ -3,7 +3,7 @@
-
- extern long cons_dev; /* console device */
-
--extern long dispatch(long proc, ...);
-+extern long int dispatch(long proc, ...);
-
- #ifdef TESTING
- #define STRINGIFY(sym) #sym
diff --git a/sys-boot/aboot/files/aboot-gnu90.patch b/sys-boot/aboot/files/aboot-gnu90.patch
deleted file mode 100644
index 2fb4b87f6b2c..000000000000
--- a/sys-boot/aboot/files/aboot-gnu90.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-This patch fixes multiple definitions of 'extern inline' functions.
-
-c99 and gnu90 have slightly different semantics
-WRT symbol definition: http://www.greenend.org.uk/rjk/tech/inline.html
-
-gcc-4 defaults to gnu90 and works, gcc-6 defaults to gnu-99
-and fails to link aboot as:
- alpha-unknown-linux-gnu-ld: Disabling relaxation: it will not work with multiple definitions
- lib/libaboot.a(isolib.o): In function `prefetchw':
- (.text+0x60): multiple definition of `prefetchw'
- fs/ext2.o:(.text+0xe68): first defined here
-
-The change is to force gnu90 explicitly.
-diff --git a/Makefile b/Makefile
-index b4245af..634ac87 100644
---- a/Makefile
-+++ b/Makefile
-@@ -40,6 +40,6 @@ ifeq ($(TESTING),)
- CPPFLAGS = $(CFGDEFS) -I$(TOP)/include -I$(KSRC)/include
--CFLAGS = $(CPPFLAGS) -D__KERNEL__ -Os -Wall -fno-builtin -mno-fp-regs
-+CFLAGS = $(CPPFLAGS) -std=gnu90 -D__KERNEL__ -Os -Wall -fno-builtin -mno-fp-regs
- else
- CPPFLAGS = -DTESTING $(CFGDEFS) -I$(TOP)/include -I$(KSRC)/include
--CFLAGS = $(CPPFLAGS) -O -g3 -Wall -D__KERNEL__ -ffixed-8
-+CFLAGS = $(CPPFLAGS) -std=gnu90 -O -g3 -Wall -D__KERNEL__ -ffixed-8
- endif
diff --git a/sys-boot/aboot/files/aboot-pt_note.patch b/sys-boot/aboot/files/aboot-pt_note.patch
deleted file mode 100644
index d28527ad5b0c..000000000000
--- a/sys-boot/aboot/files/aboot-pt_note.patch
+++ /dev/null
@@ -1,308 +0,0 @@
-Recent build changes have added a PT_NOTE entry to the kernel's
-ELF header. A perfectly valid change, but Alpha's aboot loader
-is none too bright about examining these headers.
-
-The following patch to aboot-1.0_pre20040408.tar.bz2 makes it
-so that only PT_LOAD entries are considered for loading, as well
-as several other changes required to get the damned thing to
-build again.
-
---- aboot-1.0_pre20040408/Makefile
-+++ aboot-1.0_pre20040408/Makefile
-@@ -32,15 +32,15 @@ export
- #
- LOADADDR = 20000000
-
--ABOOT_LDFLAGS = -static -N -Taboot.lds
-+ABOOT_LDFLAGS = -static -N -Taboot.lds --relax
-
- CC = gcc
- TOP = $(shell pwd)
- ifeq ($(TESTING),)
--CPPFLAGS = $(CFGDEFS) -I$(TOP)/include
--CFLAGS = $(CPPFLAGS) -D__KERNEL__ -Os -Wall -fno-builtin -mno-fp-regs -ffixed-8
-+CPPFLAGS = $(CFGDEFS) -I$(TOP)/include -I$(KSRC)/include
-+CFLAGS = $(CPPFLAGS) -D__KERNEL__ -Os -Wall -fno-builtin -mno-fp-regs
- else
--CPPFLAGS = -DTESTING $(CFGDEFS) -I$(TOP)/include
-+CPPFLAGS = -DTESTING $(CFGDEFS) -I$(TOP)/include -I$(KSRC)/include
- CFLAGS = $(CPPFLAGS) -O -g3 -Wall -D__KERNEL__ -ffixed-8
- endif
- ASFLAGS = $(CPPFLAGS)
-
---- aboot-1.0_pre20040408/aboot.c
-+++ aboot-1.0_pre20040408/aboot.c
-@@ -19,7 +19,6 @@
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
--#include <linux/elf.h>
- #include <linux/kernel.h>
- #include <linux/version.h>
-
-@@ -27,6 +26,7 @@
- #include <asm/hwrpb.h>
- #include <asm/system.h>
-
-+#include <elf.h>
- #include <alloca.h>
- #include <errno.h>
-
-@@ -37,16 +37,6 @@
- #include "utils.h"
- #include "string.h"
-
--#ifndef elf_check_arch
--# define aboot_elf_check_arch(e) 1
--#else
--# if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0)
--# define aboot_elf_check_arch(e) elf_check_arch(e)
--# else
--# define aboot_elf_check_arch(e) elf_check_arch(e->e_machine)
--# endif
--#endif
--
- struct bootfs * bfs = 0; /* filesystem to boot from */
- char * dest_addr = 0;
- jmp_buf jump_buffer;
-@@ -83,77 +73,89 @@ static unsigned long entry_addr = START_ADDR;
- long
- first_block (const char *buf, long blocksize)
- {
-- struct elfhdr *elf;
-- struct elf_phdr *phdrs;
-+ Elf64_Ehdr *elf;
-+ Elf64_Phdr *phdrs;
-+ int i, j;
-
-- elf = (struct elfhdr *) buf;
-+ elf = (Elf64_Ehdr *) buf;
-
-- if (elf->e_ident[0] == 0x7f
-- && strncmp(elf->e_ident + 1, "ELF", 3) == 0)
-- {
-- int i;
-- /* looks like an ELF binary: */
-- if (elf->e_type != ET_EXEC) {
-- printf("aboot: not an executable ELF file\n");
-- return -1;
-- }
-- if (!aboot_elf_check_arch(elf)) {
-- printf("aboot: ELF executable not for this machine\n");
-- return -1;
-- }
-- if (elf->e_phoff + elf->e_phnum * sizeof(*phdrs) > (unsigned) blocksize) {
-- printf("aboot: "
-- "ELF program headers not in first block (%ld)\n",
-- (long) elf->e_phoff);
-+ if (elf->e_ident[0] != 0x7f
-+ || elf->e_ident[1] != 'E'
-+ || elf->e_ident[2] != 'L'
-+ || elf->e_ident[3] != 'F') {
-+ /* Fail silently, it might be a compressed file */
-+ return -1;
-+ }
-+ if (elf->e_ident[EI_CLASS] != ELFCLASS64
-+ || elf->e_ident[EI_DATA] != ELFDATA2LSB
-+ || elf->e_machine != EM_ALPHA) {
-+ printf("aboot: ELF executable not for this machine\n");
-+ return -1;
-+ }
-+
-+ /* Looks like an ELF binary. */
-+ if (elf->e_type != ET_EXEC) {
-+ printf("aboot: not an executable ELF file\n");
-+ return -1;
-+ }
-+
-+ if (elf->e_phoff + elf->e_phnum * sizeof(*phdrs)
-+ > (unsigned) blocksize) {
-+ printf("aboot: ELF program headers not in first block (%ld)\n",
-+ (long) elf->e_phoff);
-+ return -1;
-+ }
-+
-+ phdrs = (struct elf_phdr *) (buf + elf->e_phoff);
-+ chunks = malloc(sizeof(struct segment) * elf->e_phnum);
-+ start_addr = phdrs[0].p_vaddr; /* assume they are sorted */
-+ entry_addr = elf->e_entry;
-+
-+ for (i = j = 0; i < elf->e_phnum; ++i) {
-+ int status;
-+
-+ if (phdrs[i].p_type != PT_LOAD)
-+ continue;
-+
-+ chunks[j].addr = phdrs[i].p_vaddr;
-+ chunks[j].offset = phdrs[i].p_offset;
-+ chunks[j].size = phdrs[i].p_filesz;
-+ printf("aboot: PHDR %d vaddr %#lx offset %#lx size %#lx\n",
-+ i, chunks[j].addr, chunks[j].offset, chunks[j].size);
-+
-+ status = check_memory(chunks[j].addr, chunks[j].size);
-+ if (status) {
-+ printf("aboot: Can't load kernel.\n"
-+ " Memory at %lx - %lx (PHDR %i) "
-+ "is %s\n",
-+ chunks[j].addr,
-+ chunks[j].addr + chunks[j].size - 1,
-+ i,
-+ (status == -ENOMEM) ?
-+ "Not Found" :
-+ "Busy (Reserved)");
- return -1;
- }
-- phdrs = (struct elf_phdr *) (buf + elf->e_phoff);
-- chunks = malloc(sizeof(struct segment) * elf->e_phnum);
-- nchunks = elf->e_phnum;
-- start_addr = phdrs[0].p_vaddr; /* assume they are sorted */
-- entry_addr = elf->e_entry;
--#ifdef DEBUG
-- printf("aboot: %d program headers, start address %#lx, entry %#lx\n",
-- nchunks, start_addr, entry_addr);
--#endif
-- for (i = 0; i < elf->e_phnum; ++i) {
-- int status;
--
-- chunks[i].addr = phdrs[i].p_vaddr;
-- chunks[i].offset = phdrs[i].p_offset;
-- chunks[i].size = phdrs[i].p_filesz;
--#ifdef DEBUG
-- printf("aboot: segment %d vaddr %#lx offset %#lx size %#lx\n",
-- i, chunks[i].addr, chunks[i].offset, chunks[i].size);
--#endif
--
--#ifndef TESTING
-- status = check_memory(chunks[i].addr, chunks[i].size);
-- if (status) {
-+
-+ if (phdrs[i].p_memsz > phdrs[i].p_filesz) {
-+ if (bss_size > 0) {
- printf("aboot: Can't load kernel.\n"
-- " Memory at %lx - %lx (chunk %i) "
-- "is %s\n",
-- chunks[i].addr,
-- chunks[i].addr + chunks[i].size - 1,
-- i,
-- (status == -ENOMEM) ?
-- "Not Found" :
-- "Busy (Reserved)");
-+ " Multiple BSS segments"
-+ " (PHDR %d)\n", i);
- return -1;
- }
--#endif
-+
-+ bss_start = (char *) (phdrs[i].p_vaddr +
-+ phdrs[i].p_filesz);
-+ bss_size = phdrs[i].p_memsz - phdrs[i].p_filesz;
-+
- }
-- bss_start = (char *) (phdrs[elf->e_phnum - 1].p_vaddr +
-- phdrs[elf->e_phnum - 1].p_filesz);
-- bss_size = (phdrs[elf->e_phnum - 1].p_memsz -
-- phdrs[elf->e_phnum - 1].p_filesz);
--#ifdef DEBUG
-- printf("aboot: bss at 0x%p, size %#lx\n", bss_start, bss_size);
--#endif
-- } else {
-- /* Fail silently, it might be a compressed file */
-- return -1;
-+
-+ j++;
- }
-+
-+ nchunks = j;
-+ printf("aboot: bss at 0x%p, size %#lx\n", bss_start, bss_size);
-
- return 0;
- }
-
---- aboot-1.0_pre20040408/aboot.lds
-+++ aboot-1.0_pre20040408/aboot.lds
-@@ -1,22 +1,25 @@
- OUTPUT_FORMAT("elf64-alpha")
- ENTRY(__start)
-+PHDRS { kernel PT_LOAD; }
- SECTIONS
- {
- . = 0x20000000;
-- .text : { *(.text) }
-+ .text : { *(.text) } :kernel
- _etext = .;
- PROVIDE (etext = .);
-- .rodata : { *(.rodata) }
-- .data : { *(.data) CONSTRUCTORS }
-- .got : { *(.got) }
-- .sdata : { *(.sdata) }
-+ .rodata : { *(.rodata*) } :kernel
-+ .data : { *(.data*) } :kernel
-+ .got : { *(.got) } :kernel
-+ .sdata : { *(.sdata) } :kernel
- _edata = .;
- PROVIDE (edata = .);
-- .sbss : { *(.sbss) *(.scommon) }
-- .bss : { *(.bss) *(COMMON) }
-+ .sbss : { *(.sbss) *(.scommon) } :kernel
-+ .bss : { *(.bss) *(COMMON) } :kernel
- _end = . ;
- PROVIDE (end = .);
-
-+ /DISCARD/ : { *(.eh_frame) }
-+
- .mdebug 0 : { *(.mdebug) }
- .note 0 : { *(.note) }
- .comment 0 : { *(.comment) }
-
---- aboot-1.0_pre20040408/cons.c
-+++ aboot-1.0_pre20040408/cons.c
-@@ -82,7 +81,7 @@ cons_getenv(long index, char *envval, long maxlen)
- * allocated on the stack (which guaranteed to by 8 byte
- * aligned).
- */
-- char * tmp = alloca(maxlen);
-+ char tmp[maxlen];
- long len;
-
- len = dispatch(CCB_GET_ENV, index, tmp, maxlen - 1);
-
---- aboot-1.0_pre20040408/disk.c
-+++ aboot-1.0_pre20040408/disk.c
-@@ -113,7 +113,7 @@ int
- load_uncompressed (int fd)
- {
- long nread, nblocks;
-- unsigned char *buf;
-+ char *buf;
- int i;
-
- buf = malloc(bfs->blocksize);
-@@ -131,7 +131,7 @@ load_uncompressed (int fd)
-
- for(i = 0; i < 16; i++) {
- for (j = 0; j < 16; j++)
-- printf("%02X ", buf[j+16*i]);
-+ printf("%02X ", (unsigned char) buf[j+16*i]);
- for(j = 0; j < 16; j++) {
- c = buf[j+16*i];
- printf("%c", (c >= ' ') ? c : ' ');
-
---- aboot-1.0_pre20040408/head.S
-+++ aboot-1.0_pre20040408/head.S
-@@ -19,8 +19,7 @@ __start:
- .quad 0,0,0,0,0,0,0,0
- 1: br $27,2f
- 2: ldgp $29,0($27)
-- lda $27,main_
-- jsr $26,($27),main_
-+ bsr $26,main_ !samegp
- call_pal PAL_halt
- .end __start
-
-@@ -170,4 +169,4 @@ run_kernel:
- mov $16,$27
- mov $17,$30
- jmp $31,($27)
-- .end run_kernel
-\ No newline at end of file
-+ .end run_kernel
diff --git a/sys-boot/aboot/files/aboot-respect-AR.patch b/sys-boot/aboot/files/aboot-respect-AR.patch
deleted file mode 100644
index 44e4a2a52063..000000000000
--- a/sys-boot/aboot/files/aboot-respect-AR.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/lib/Makefile b/lib/Makefile
-index e3a2247..c137b53 100644
---- a/lib/Makefile
-+++ b/lib/Makefile
-@@ -13,6 +13,6 @@ libaboot.a: vsprintf.o memcpy.o memset.o string.o _setjmp.o \
- __remlu.o
-- ar cru $@ $?
-+ $(AR) cru $@ $?
- else
- libaboot.a: isolib.o
-- ar cru $@ $?
-+ $(AR) cru $@ $?
- endif
diff --git a/sys-boot/aboot/files/aboot.conf b/sys-boot/aboot/files/aboot.conf
deleted file mode 100644
index 02114138e938..000000000000
--- a/sys-boot/aboot/files/aboot.conf
+++ /dev/null
@@ -1,10 +0,0 @@
-#
-# aboot default configurations
-#
-0:3/vmlinux.gz ro root=/dev/sda2
-1:3/vmlinux.old.gz ro root=/dev/sda2
-2:3/vmlinux.new.gz ro root=/dev/sda2
-3:3/vmlinux ro root=/dev/sda2
-8:- ro root=/dev/sda2 # fs less boot of raw kernel
-9:0/- ro root=/dev/sda2 # fs less boot of (compressed) ECOFF kernel
--
diff --git a/sys-boot/aboot/metadata.xml b/sys-boot/aboot/metadata.xml
deleted file mode 100644
index 45afe5c507b1..000000000000
--- a/sys-boot/aboot/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>alpha@gentoo.org</email>
- <name>Alpha architecture team</name>
- </maintainer>
- <origin>baldeagleos-repo</origin>
-</pkgmetadata>