Subject: i386-elf userland support
To: None <current-users@netbsd.org>
From: Christos Zoulas <christos@zoulas.com>
List: current-users
Date: 12/23/1998 11:28:43
Hello,

The following are bits and pieces I put together in order to experiment
with elf-i386. You can get them:

	ftp.astron.com:/pub/netbsd/i386-elf.tar.gz

statically linked binaries work, provided that you have a current
kernel (one with the note parsing). dynamically linked binaries
untested. Also -g produces an undefined label Ltext0... You can
just define it as Ltext0() {}. I have no idea why.


csu.tar.gz      : Elf startup code; uses two more registers (eax, ecx)
                : to pass the dynamic linker gunk. I chose to do it
                : this way, in order to avoid changing setregs
		: Again copied from the alpha stuff with a few changes.

ld.new          : diffs to set i386-elf as default emulation
ld.new2         : patch to the dist source to add a forgotten variable

gas.new         : diffs to set i386-elf as default emulation

egcs            : diffs to make egcs use elf defaults
netbsd-elf.h    : belongs in /usr/src/gnu/dist/gcc/config/i386
		: really copied from the alpha stuff with a few changes.

rtld_start.S    : the beginning of the md part of the dynamic linker (untested)

The easiest way to experiment is basically have two machines.
One to compile the tools and one to install and run them :-)


Enjoy,

christos