1.0 issues: FSSTND compliance & preparation for a.out abolishment
Subject: 1.0 issues: FSSTND compliance & preparation for a.out abolishment
The default Linux binary format is to move to ELF. Most of the libraries
and other support is already debianized, but uses non-standard locations.
In the long term, we want users to be able to remove the a.out libraries,
binutils etc, once all their binaries are ELF.
- Eventually, we don't want users bothered with two sets of libaries.
- Currently, the ELF libraries are in non-FSSTND compliant locations:
under /usr/i486-linuxelf. This means that they cannot be used for
packages like sysvinit, which are needed before /usr is available
(/usr may be on a separate partition, see FSSTND).
- Make new packages for a.out libraries, binutils, gcc, efence that
use a non-default location: /lib-a.out and /usr/i486-linux-a.out
- Make new ELF packages for libraries, binutils, gcc, efence that
use the FSSTND locations /lib and /usr, and which drop the -elf suffix.
- Use 'Conflicts:' to prevent trouble.
This makes the ELF packages (and therefore, 1.0) FSSTND compliant again,
and makes compliation default to ELF.
To be solved
- The dpkg database does not distinguish between ELF and a.out binaries,
so it cannot be used to decide if a.out-library removal is possible.
Furthermore, users may have "unregistred" binaries e.g. in /usr/local.
The best solution is probably to have a script using 'find' and 'file'
to determine if the a.out libraries can be removed.
Cyberspace, a final frontier. These are the voyages of my messages,
on a lightspeed mission to explore strange new systems and to boldly go
where no data has gone before.