[Toybox] Toybox post from lamiaworks

Rob Landley rob at landley.net
Sat Jul 6 09:07:27 PDT 2013


On 07/03/2013 06:49:35 AM, lamiaworks wrote:
>>> However, I do understand that eudev has been enhanced / changed as  
>>> our
>>> Puppy
>>> Linux GURU BarryK has been informed of a change to eudev after he  
>>> fed
>>> them
>>> a few problems and we apparently now have a kmod - eudev- Busybox  
>>> that is
>>> ?working.
>> 
>> I need to go back and finish mdev. So many todo items...
> 
> ?mdev

In 2005 I wrote a mini /dev manager for busybox. Solar at gentoo designed  
a config file syntax for it, and it sort of took on a life of its own  
from there.

Half of what it does is handled by devtmpfs and automatic firmare  
loading these days, but it's still got a config file that can spawn  
commands in response to events and make symlinks and such.

>>> I'm also having a go with a couple of other 'puppyans' at creating a
>>> Puppy
>>> Aboriginal Base to create a minimal Linux, to both develop from and
>>> use as
>>> an independant base,
> 
> My Puppy Aboriginal topic url is:  
> http://www.murga-linux.com/puppy/viewtopic.php?t=86704 , if anyone is  
> interested.

That is _highly_ interesting and if I wasn't somewhere that the net's  
broken, I'd totally engage with that. I'll try to remember on Monday. :)

>> It might also help support more platforms. :)
> 
> part of the idea, at least from our end, btw what's up with M68K  
> being crossed
> out< I think we have one or two people with them!

QEMU's m68k support only does coldfire, it doesn't actually emulate a  
real m68k with an MMU.

A guy named Laurent Vivier is working on an m68k branch  
(git://gitorious.org/qemu-m68k/qemu-m68k -b q800) that should  
(eventually) emulate a q800 (the last m68k macintosh, which could hold  
256 megs of memory), but last time I tried it the kernel printed out  
three lines of text and then died as soon as it tried to load real page  
tables into the MMU. I've been meaning to follow up, but I think the  
last time I did was 2011...

Let's see, refresh the branch. "./configure --disable-werror && make -j  
3", throw the m68k-softmmu subdirectory in the path for ./run-emulator  
in system-image-m68k and:

Linux version 3.10.0 (landley at driftwood) (gcc version 4.2.1) #1 Tue Jul  
2 21:34:49 CDT 2013
bootconsole [early0] enabled
Detected Macintosh model: 35
VIA1 at 50f00000 is a 6522 or clone
VIA2 at 50f02000 is a 6522 or clone
Apple Macintosh Quadra 800
qemu: fatal: DOUBLE MMU FAULT

D0 = 00001c00   A0 = 00001c00   F0 = 7fff 4000000000000000
D1 = 00001c0a   A1 = 00001c00   F1 = 7fff 4000000000000000
D2 = 00000000   A2 = 0021c2bc   F2 = 7fff 4000000000000000
D3 = 00000019   A3 = 00001200   F3 = 7fff 4000000000000000
D4 = 08000000   A4 = 00001000   F4 = 7fff 4000000000000000
D5 = 0022f118   A5 = 00261f92   F5 = 7fff 4000000000000000
D6 = 0022e860   A6 = 00215fac   F6 = 7fff 4000000000000000
D7 = 00261e3c   A7 = 00040018   F7 = 7fff 4000000000000000
PC = 000023cc   SR = 2704 --Z-- ./run-emulator.sh: line 7:  8798  
Aborted                 (core dumped) qemu-system-m68k -M q800  
-nographic -no-reboot -kernel vmlinux -hda hda.sqf -append  
"root=/dev/sda rw init=/sbin/init.sh panic=1  
PATH=$DISTCC_PATH_PREFIX/bin:/sbin console=ttyAMA0 HOST=m68k  
$KERNEL_EXTRA" $QEMU_EXTRA

Still needs work, looks like.

At one point a user tested the m68k system image on aranym (an atari ST  
emulator), but that required a patched kernel to support the I/O  
devices. Plus it couldn't do the console on stdin/stdout thing so it  
wasn't hugely scriptable, and I vaguely recall the network card didn't  
work either?

So I _think_ it's producing the m68k images fine, it's just I haven't  
got a test environment for them I could use to build Linux From Scratch  
under. (That's my smoketest: if it builds that, it's good enough to  
ship.)

>> I've been pondering trying to integrate crosstool-NG toolchains, but
>> each time I hit two problems: 1) no native compiler support, 2) the
>> crosstool-NG config is complicated and fiddly and keeps wanting to  
>> know
>> what board you're building for (which is not the same as what
>> architecture you're building for)...
>> 
>>> so you will get 'strange' requests and things appearing
>>> in both your mailing groups as we work out how to do it and find  
>>> problems
>>> and requests for enhancements, I hope you don't mind.
>> 
>> I'm all for it. :)
>> 
>>> Thanks again and Keep up the good work.
>> 
>> You too,
>> 
>> Rob
> 
> I'm also going to have a look at buildroot and see if it will 'do'  
> the frontend
> 'stuff' before running aboriginal's ./build.sh. This would be an  
> alternative to
> our woof2 puppy build system.

I've been meaningto try to get buildroot compiling under aboriginal for  
ages. I want to bootstrap all sorts of distros (fedora, debian, gentoo,  
etc) natively under an arbitrary host architecture, to eliminate the  
need for cross compiling. Get a minimal development environment for the  
new target, compile more stuff on real hardware or under an emulator,  
don't _try_ to cross compile 200 packages because it's horrible.

> Then us/you could supply anyone with a fully working stand-alone basic
> ?cross-compiling system. Now that would put you out there!

The project's motto is "we cross compile so you don't have to". The  
about.html page does (eventually) explain what that means. :)

Rob
 1373126847.0


More information about the Toybox mailing list