Port-atari archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: atari sysinst.fs overflow again

The changes to sh in netbsd-8 compared with earlier, aside from
bug fixes which should add almost nothing, are the LINENO stuff, and
prompt expansion - both of which are POSIX, and so required in a
real shell, but most probably neither is needed on a boot floppy.

The shell has the notion of a TINY version, but when I looked, I couldn't
find anything, anywhere, which used it, so I have been ignoring that.

Currently all it does in sh is to delete printf as a builtin - which would
save some space, but only if printf is not required there (adding an external
printf to compensate for not having it built into sh would make no sense
at all - but if echo is good enough, printf is not tiny)

But as it isn't used (as best I can tell) we can make a TINY shell exclude
anything that we want it to exclude, anything not required - I can't
imagine that prompt expansions are needed in a boot floppy, so we can
delete all of that, and most probably LINENO isn't needed either, so we
can delete support for it as well (that or restore the LINENO hack, but
that was only added comparatively recently, so I doubt it is needed either.)

If you can test it (a TINY shell is obtained by setting TINYPROG in the
Makefile ... it also needs to have SMALLPROG set, the two are independent)
I can generate a sh patch that will make whatever sections of sh that are
not needed on the boot floppy, so we can work out what can be done without.

How much, in terms of bytes, any of this will save I don't know.


Home | Main Index | Thread Index | Old Index