diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-12 11:50:53 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-12 11:50:53 -0500 |
| commit | 290aebdea65a02557706eaeda477fef0437b6a48 (patch) | |
| tree | f87a939169a508a2e943570501b64cc16b411cda /sys-boot/aboot | |
| parent | 6783ddcd4b73d9ce586a71770caed352bec93b16 (diff) | |
| download | baldeagleos-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/Manifest | 4 | ||||
| -rw-r--r-- | sys-boot/aboot/aboot-1.0_pre20040408-r3.ebuild | 90 | ||||
| -rw-r--r-- | sys-boot/aboot/aboot-2.0_pre20210801.ebuild | 69 | ||||
| -rw-r--r-- | sys-boot/aboot/aboot-9999.ebuild | 67 | ||||
| -rw-r--r-- | sys-boot/aboot/files/aboot-define_stat_only_in_userspace.patch | 35 | ||||
| -rw-r--r-- | sys-boot/aboot/files/aboot-gcc-3.4.patch | 31 | ||||
| -rw-r--r-- | sys-boot/aboot/files/aboot-gnu90.patch | 26 | ||||
| -rw-r--r-- | sys-boot/aboot/files/aboot-pt_note.patch | 308 | ||||
| -rw-r--r-- | sys-boot/aboot/files/aboot-respect-AR.patch | 13 | ||||
| -rw-r--r-- | sys-boot/aboot/files/aboot.conf | 10 | ||||
| -rw-r--r-- | sys-boot/aboot/metadata.xml | 9 |
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> |
