From rob at landley.net Thu Jul 3 03:05:21 2014 From: rob at landley.net (Rob Landley) Date: Wed, 02 Jul 2014 22:05:21 -0500 Subject: [Aboriginal] basic musl support is in. Message-ID: <53B4C871.3060509@landley.net> To enable it for a given target, comment out the UCLIBC_CONFIG stanza in the sources/targets/$ARCH file. All I can really say at the moment is that it compiles for i686. (That's the ccwrap rewrite, basic script tweaks, and a patch to gcc to not use a nonstandard type name.) Sorry that took so long. It was a lot of debugging. (And now to test build more stuff...) Rob 1404356721.0 From rob at landley.net Sat Jul 12 23:53:02 2014 From: rob at landley.net (Rob Landley) Date: Sat, 12 Jul 2014 18:53:02 -0500 Subject: [Aboriginal] Stuff. Message-ID: <53C1CA5E.3060600@landley.net> A couple things: 1) I re-uploaded the html version of the old presentation, so that's back now. (The account it was under was the same person who ran impactlinux.com back when that went down, same sort of "oh were you still using that?" sort of thing I expect.) Took me a bit to figure out how to compress the pdf to under 50 megabytes (speakerdeck upload limit), i should probably swap out the downloadable pdf for said compressed version... (Just under 40 megs instead of just under 90.) 2) The musl versions of the build still aren't quite right. Specifically, the mips and powerpc dynamic linked versions of hello world segfault, and it has to do with -Bsymbolic-functions not quite working right. Apparently: $ nm -D lib/libc.so | grep __.*div 000670ec T __aeabi_ddiv 000679cc T __aeabi_fdiv 000668c4 T __aeabi_idiv 000669f0 T __aeabi_idivmod 00067c98 T __aeabi_ldivmod 000667b0 T __aeabi_uidiv 000668ac T __aeabi_uidivmod 00067cb4 T __aeabi_uldivmod 00067cd0 T __div0 000670ec T __divdf3 00068d04 T __divdi3 000679cc T __divsf3 000668c4 T __divsi3 00068cbc T __gnu_ldivmod_helper 00068c74 T __gnu_uldivmod_helper 000692a4 T __udivdi3 000667b0 T __udivsi3 Should not show anything on any target, but it does. So I need to figure out how to fix that before I can swap out the builds. (I could cut another release with uClibc, but it's so close. Doing the "one more week" thing...) 3) uclibc hasn't got support for sparc or m68k, so switching entirely over involves yanking support for two targets. (And alpha which is halfway finished...) 1405209182.0 From rob at landley.net Thu Jul 31 03:03:06 2014 From: rob at landley.net (Rob Landley) Date: Wed, 30 Jul 2014 22:03:06 -0500 Subject: [Aboriginal] Hello world. Message-ID: <53D9B1EA.606@landley.net> Sorry for the radio silence. My house got flooded a couple weeks ago (7 inches of rain in a 4 hour period). I mentioned that on the toybox list, but not here. After several days of ripping out carpet and deploying some very expensive disaster recovery equipement to dry the place out, we _finally_ dug through the boxes enough to unpack the power supply for the machine with the email filters on it. Currently downloading and reading through a backlog of somewhere over 4000 messages. (This is just a lull, today we ordered 4 rooms of new floor tile, and people show up to install that in the next day or two. Most stuff stays in boxes until then...) I did some toybox work during all this on my netbook, but almost no aboriginal work. Next kernel release is almost out. I think I've missed one. I need to do more toolchain work to make dynamic linked musl work, and I haven't had a chance to _look_ at that recently, so most likely the next release will still default to uClibc but will give you the ability to build with musl if you select it in the config. Rob 1406775786.0 From patrick at gentoo.org Thu Jul 31 04:47:30 2014 From: patrick at gentoo.org (Patrick Lauer) Date: Thu, 31 Jul 2014 12:47:30 +0800 Subject: [Aboriginal] Hello world. / kernel 3.15 In-Reply-To: <53D9B1EA.606@landley.net> References: <53D9B1EA.606@landley.net> Message-ID: <6342240.LNGOc1HuLi@localhost> On Wednesday 30 July 2014 22:03:06 Rob Landley wrote: > I did some toybox work during all this on my netbook, but almost no > aboriginal work. Next kernel release is almost out. I think I've missed > one. No worry, I hackpatched things to work with 3.15. Patches apply modulo one change in the sh4 config where an option got renamed. toybox reliably fails to build iconv (missing iconv.h ), so I violently patched that out of the default config. Enjoy, Patrick diff -Naur ../../aboriginal-1669660a7a97/download.sh ./download.sh --- ../../aboriginal-1669660a7a97/download.sh 2014-07-12 22:04:12.000000000 +0000 +++ ./download.sh 2014-07-31 04:32:03.833672950 +0000 @@ -29,8 +29,8 @@ SHA1=aa6c4e58ee3524b961755fb8e491462ff8109fd6 \ maybe_fork "download || dienow" -URL=ftp://kernel.org/pub/linux/kernel/v3.x/linux-3.14.tar.gz \ -SHA1=23fde5cfe36e27eca54947744613b45e747d18e9 \ +URL=ftp://kernel.org/pub/linux/kernel/v3.x/linux-3.15.7.tar.gz \ +SHA1=19ca216acc59e5445566f7aff06db5651d1a8185 \ maybe_fork "download || dienow" diff -Naur ../../aboriginal-1669660a7a97/sources/patches/linux- sh4noexpert.patch ./sources/patches/linux-sh4noexpert.patch --- ../../aboriginal-1669660a7a97/sources/patches/linux-sh4noexpert.patch 2014-07-12 22:04:12.000000000 +0000 +++ ./sources/patches/linux-sh4noexpert.patch 2014-07-31 03:33:30.696424896 +0000 @@ -11,5 +11,5 @@ - select EXPERT + select HAVE_PATA_PLATFORM select CLKDEV_LOOKUP - select HAVE_IDE if HAS_IOPORT + select HAVE_IDE if HAS_IOPORT_MAP select HAVE_MEMBLOCK diff -Naur ../../aboriginal-1669660a7a97/sources/patches/toybox-no-i18n.patch ./sources/patches/toybox-no-i18n.patch --- ../../aboriginal-1669660a7a97/sources/patches/toybox-no-i18n.patch 1970-01-01 00:00:00.000000000 +0000 +++ ./sources/patches/toybox-no-i18n.patch 2014-07-31 04:06:48.503403651 +0000 @@ -0,0 +1,10 @@ +--- toybox-0.4.8/Config.in ++++ toybox-0.4.8/Config.in +@@ -51,7 +51,7 @@ + + config TOYBOX_I18N + bool "Internationalization support" +- default y ++ default n + help + Support for UTF-8 character sets, and some locale support. diff -Naur ../../aboriginal-1669660a7a97/sources/patches/toybox-no-iconv.patch ./sources/patches/toybox-no-iconv.patch --- ../../aboriginal-1669660a7a97/sources/patches/toybox-no-iconv.patch 1970-01-01 00:00:00.000000000 +0000 +++ ./sources/patches/toybox-no-iconv.patch 2014-07-31 04:24:18.106660446 +0000 @@ -0,0 +1,10 @@ +--- toybox/toys/pending/iconv.c ++++ toybox/toys/pending/iconv.c +@@ -8,7 +8,7 @@ + + config ICONV + bool "iconv" +- default y ++ default n + help + usage: iconv [-f FROM] [-t TO] [FILE...] 1406782050.0 From patrick at gentoo.org Thu Jul 31 09:35:51 2014 From: patrick at gentoo.org (Patrick Lauer) Date: Thu, 31 Jul 2014 17:35:51 +0800 Subject: [Aboriginal] Hello world. / kernel 3.15 In-Reply-To: <6342240.LNGOc1HuLi@localhost> References: <53D9B1EA.606@landley.net> <6342240.LNGOc1HuLi@localhost> Message-ID: <50248217.SsOguv9KCZ@localhost> On Thursday 31 July 2014 12:47:30 Patrick Lauer wrote: > On Wednesday 30 July 2014 22:03:06 Rob Landley wrote: > > I did some toybox work during all this on my netbook, but almost no > > aboriginal work. Next kernel release is almost out. I think I've missed > > one. > > No worry, I hackpatched things to work with 3.15. > > Patches apply modulo one change in the sh4 config where an option got > renamed. Same applies for 3.16_rc7: -URL=ftp://kernel.org/pub/linux/kernel/v3.x/linux-3.14.tar.gz \ -SHA1=23fde5cfe36e27eca54947744613b45e747d18e9 \ +URL=ftp://kernel.org/pub/linux/kernel/v3.x/testing/linux-3.16-rc7.tar.gz \ +SHA1=0d59dd23e5cd2ecfaa6f67cabd02841b64ef38e0 \ maybe_fork "download || dienow" > > toybox reliably fails to build iconv (missing iconv.h ), so I violently > patched that out of the default config. Fails like this: # configuration written to .config # scripts/make.sh Make generated/config.h from .config. Extract configuration information from toys/*.c files... Generate headers from toys/*/*.c... generated/newtoys.h generated/flags.h generated/globals.h generated/help.h Library probe... Compile toybox... toys/pending/iconv.c:23:19: error: iconv.h: No such file or directory toys/pending/iconv.c: In function 'iconv_main': toys/pending/iconv.c:66: warning: assignment makes pointer from integer without a cast toys/pending/iconv.c:67: error: 'iconv_t' undeclared (first use in this function) toys/pending/iconv.c:67: error: (Each undeclared identifier is reported only once toys/pending/iconv.c:67: error: for each function it appears in.) make: *** [toybox] Error 1 And I have no idea why yet. 1406799351.0