Port-m68k archive

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

Re: Urgent: need volunteers to fix the build



> On 9/18/26 16:10, Radoslaw Kujawa wrote:
> >> On 9/18/26 16:00, Martin Husemann wrote:
> >>>>
> >>>> Probably easiest way to unblock here is dropping keymaps from the 
> >>>> install.
> >>>> Sure, it may annoy the user, but the install is still perfectly 
> >>>> possible.
> >>>
> >>> Keymaps are usefull, we should find something less usefull to drop.
> >>> Main question here is: was the old code just a few bytes beyound the 
> >>> limit
> >>> or did the change introduce some new dependency that now pulls in 
> >>> unwanted
> >>> parts of libc?
> >>>
> >>> At first glance it is the former.
> >>
> >> If I remember, previous floppy had literally zero bytes free. It's 
> >> just 282 new bytes or so.
> >>
> 
> I looked at distrib/atari/floppies/common/Makefile.images and this 
> config is already quite aggressive. We're running out of libhack knobs - 
> the only left one is gethost.o, but it has the price of losing ability 
> to resolve names from the network (I'd argue that is more useful than 
> keymaps).
> 
> When it comes to next candidates for stubbing, there are a few big objects:
> localtime.o - around 23kB
> compat_localtime.o - ~17kB
> res_debug.o - ~14kB (hmm, needs investigation)
> vfprintf.o - ~17kB

(I have so many TODO items for misc m68k ports..)

As a short-term workaround, there are several possible ways
to make the current atari install floppy fit again:

1) drop sbin/dmesg from distrib/atari/floppies/install/list

Maybe we can add 'dmesg() cat /kern/msgbuf' in
distrib/atari/floppies/common/dot.profile as cats etc. do for
altanative, but I have not confirmed.

2) also drop bin/df from distrib/atari/floppies/install/list

IIRC it was required by old MAKEDEV(8) but current
src/etc/MAKEDEV.tmpl says:
```
                # We don't parse the output from df(1) because that's
                # less likely to be available on install media.
```

But IMO df(1) is still useful for users on the target disk overflow etc.

3) use -Oz instead of -Os

gcc(1) says:
```
       -Oz Optimize aggressively for size rather than speed.  This may
           increase the number of instructions executed if those instructions
           require fewer bytes to encode.  -Oz behaves similarly to -Os
           including enabling most -O2 optimizations.
```

4) use -ffunction-sections -fdata-sections -Wl,--gc-sections

These are what sys/arch/sun2/conf/std.tiny uses.

---

For a longer-term solution, I have also looked at using an ustarfs
boot floppy.

It seems that sys/arch/atari/stand/xxboot/fdboot already has most of
the functionality needed for install floppies and I think this should
be technically possible.

What I am not sure about yet is whether it is a good idea
"to have and maintain multiple installation kernels and corresponding
 install floppy sets" for the different atari GENERIC-like kernels,
i.e. TT030, HADES, MILAN-PCIIDE, and MILAN-ISAIDE etc.

Thanks,
---
Izumi Tsutsui


Home | Main Index | Thread Index | Old Index