Subject: NetBSD/vax is now ELF; New snapshot available
To: None <>
From: Matt Thomas <>
List: current-users
Date: 04/01/2002 02:56:05
NetBSD/vax switched to using ELF as its object file format this
past weekend.  For general information about why NetBSD is
switching to ELF, please read:

An ELF snapshot (which at the moment doesn't include the X sets) is
available in:

The upgrade instructions to ELF for mac68k can be used for VAX as
well (for the most part) though it is highly recommended you let
sysinst do the hard work:

NetBSD/vax 1.5.2 and later bootblocks support loading an ELF
version of /boot.  /boot can load either a.out or ELF kernels.

Now that NetBSD/vax is ELF, a number of issues/problems have been

1)  By default, all objects are PIC.  Indeed, static and shared libraries
     are generated from the same objects so builds take less time.  The
     linker is responsible for doing the magic to make dynamic references.
     A side effect of being PIC, an ELF object have a smaller code size
     than its corresponding a.out object.

2)  Since this is a new ABI, the size of a jmp_buf could be extended so
     that all callee-saved registers are saved in setjmp/_setjmp/sigsetjmp
     so that GNU pth works.

3)  RRS text relocation warnings that a.out linker emitted are a thing
     of the past.

4)  NetBSD/vax snapshots (modulo X) can be entirely cross-built (hopefully
     on a fast machine) without needing to be root.  The process is entirely
     unprivileged.  An example of the commands (with a 600MB MFS mounted
     on /tmp) needed to do this are:

         cd <top-of-source-tree>
         mkdir -p /tmp/vax/obj /tmp/vax/tools
         sh -m vax -U -r -T /tmp/vax/tools -D /tmp/vax/root \
             -R /tmp/vax/release -O /tmp/vax/obj

5)  Support for making installable ISO images has been added.  After the
     above commands do:
         cd etc
         /tmp/vax/tools/bin/nbmake-vax iso-image

Matt Thomas               Internet:
3am Software Foundry      WWW URL:
Cupertino, CA             Disclaimer: I avow all knowledge of this message