Subject: Re: next68k ELF diffs available
To: Chuck Silvers <chuq@chuq.com>
From: Darrin B. Jewell <dbj@netbsd.org>
List: port-next68k
Date: 04/19/2001 22:04:49
Chuck Silvers <chuq@chuq.com> writes:
> I spent a few hours and got ELF working on next68k.
> diff against today's -current and a new include file are available at
> 
> 	ftp://ftp.netbsd.org/pub/NetBSD/misc/chs/next68kelf/

I am now running a -current kernel with your patches cross compiled
from an i386 host targeting an m68k a.out.  After making the
additional change included below, everything appears to be working
fine, modulo the expected loss of a.out ddb symbols.

I will be building an elf targeted compiler and proceeding from here.

Darrin

--- arch/next68k/next68k/nextrom.c.save	Thu Apr 19 21:53:49 2001
+++ arch/next68k/next68k/nextrom.c	Thu Apr 19 21:53:59 2001
@@ -152,13 +152,13 @@
 
 	for (i = 0; i < SELFMAG; i++) {
 		if (ehdr->e_ident[i] != reloc_elfmag[i]) {
-			ROM_PUTS("save_symtab: bad ELF magic\\n");
-			return;
+			ROM_PUTS("save_symtab: bad ELF magic\n");
+			goto ddbdone;
 		}
 	}
 	if (ehdr->e_ident[EI_CLASS] != ELFCLASS32) {
-		ROM_PUTS("save_symtab: bad ELF magic\\n");
-		return;
+		ROM_PUTS("save_symtab: bad ELF magic\n");
+		goto ddbdone;
 	}
 
 	/*
@@ -188,6 +188,8 @@
 	ROM_PUTS(" esym ");
 	ROM_PUTX((vaddr_t)RELOC(esym, char *));
 	ROM_PUTS("\r\n");
+
+ ddbdone:
 #endif
 
 	ROM_PUTS("Constructing the segment list...\r\n");