From rob at landley.net Tue Nov 1 14:25:36 2011 From: rob at landley.net (Rob Landley) Date: Tue, 01 Nov 2011 09:25:36 -0500 Subject: [Aboriginal] Build error In-Reply-To: References: <4E8E245C.9050505@landley.net> <4E908AD2.6020004@landley.net> <4E9A6318.60705@landley.net> Message-ID: <4EB00160.7090209@landley.net> On 10/24/2011 11:49 AM, prasanna balan wrote: >> It means that recursive make stops logging, which implies that the $PATH >> is no longer pointing to the logging wrapper directory. >> >> Except that include/functions.sh is exporting the PATH when it modifies >> it while setting the architecture. Hmmm... >> >> Can you run make with -d maybe? > > I re-did make with make-d at uClibc++.build....Basically shows the > same thing as above...The file is about 900 lines long....Attaching > the file...if it may help I just did another slackware reinstall with an ext4 formatted root filesystem, fetched the release version and did a fresh build. It ran to completion, successfully. I'm still not reproducing this issue. Rob 1320157536.0 From prazzb at gmail.com Sun Nov 6 17:58:00 2011 From: prazzb at gmail.com (prasanna balan) Date: Sun, 6 Nov 2011 23:28:00 +0530 Subject: [Aboriginal] Build error In-Reply-To: <4EB00160.7090209@landley.net> References: <4E8E245C.9050505@landley.net> <4E908AD2.6020004@landley.net> <4E9A6318.60705@landley.net> <4EB00160.7090209@landley.net> Message-ID: Tried again but no success still... I wrote to LinuxQuestions.org (that's sort of an official slackware forum) [1] but got only 1 reply and it ran successfully. This must mean that my system is broken somehow and nothing's specific to the distro. Could you suggest what could possibly be wrong ? -prazzb [1] http://www.linuxquestions.org/questions/slackware-14/uclibc-0-2-2-build-breaking-with-a-wierd-error-message-911520/ On Tue, Nov 1, 2011 at 7:55 PM, Rob Landley wrote: > On 10/24/2011 11:49 AM, prasanna balan wrote: >>> It means that recursive make stops logging, which implies that the $PATH >>> is no longer pointing to the logging wrapper directory. >>> >>> Except that include/functions.sh is exporting the PATH when it modifies >>> it while setting the architecture. ?Hmmm... >>> >>> Can you run make with -d maybe? >> >> I re-did make with make-d at uClibc++.build....Basically shows the >> same thing as above...The file is about 900 lines long....Attaching >> the file...if it may help > > I just did another slackware reinstall with an ext4 formatted root > filesystem, fetched the release version and did a fresh build. > > It ran to completion, successfully. ?I'm still not reproducing this issue. > > Rob > 1320602280.0 From rob at landley.net Mon Nov 7 04:28:42 2011 From: rob at landley.net (Rob Landley) Date: Sun, 06 Nov 2011 22:28:42 -0600 Subject: [Aboriginal] Build error In-Reply-To: References: <4E8E245C.9050505@landley.net> <4E908AD2.6020004@landley.net> <4E9A6318.60705@landley.net> <4EB00160.7090209@landley.net> Message-ID: <4EB75E7A.3000207@landley.net> On 11/06/2011 11:58 AM, prasanna balan wrote: > Tried again but no success still... > I wrote to LinuxQuestions.org (that's sort of an official slackware > forum) [1] but got only 1 reply and it ran successfully. > This must mean that my system is broken somehow and nothing's specific > to the distro. > Could you suggest what could possibly be wrong ? > -prazzb Sorry for the delay, got called into work all weekend. Is there any way I can get a ssh login to the failing system so I can try to reproduce it on there? It's happening on your system, not happening on mine, so we have to debug it on your system where it reproduces. Rob 1320640122.0 From rob at landley.net Sat Nov 12 17:22:34 2011 From: rob at landley.net (Rob Landley) Date: Sat, 12 Nov 2011 11:22:34 -0600 Subject: [Aboriginal] Sparc-32 doesn't work in 3.1. Message-ID: <4EBEAB5A.5020809@landley.net> Still trying to ship an Aboriginal Linux release with the 3.1 kernel, but the sparc target broke, as in QEMU's OpenBios goes: Boot time fixup v1.6. 4/Mar/98 Jakub Jelinek (jj at ultra.linux.cz). Patching kernel for srmmu[Fujitsu TurboSparc]/iommu Fixup i f029ddfc doesn't refer to a valid instruction at f00de648[95eea000] halt, power off And doesn't even boot Linux. A sparc-objdump -a on vmlinux says that chunk has: f00de63c: 84 0b 60 ff and %o5, 0xff, %g2 f00de640: 91 32 20 10 srl %o0, 0x10, %o0 f00de644: 85 28 a0 08 sll %g2, 8, %g2 f00de648: 98 0a 20 ff and %o0, 0xff, %o4 f00de64c: 03 00 00 3f sethi %hi(0xfc00), %g1 f00de650: 82 10 63 00 or %g1, 0x300, %g1 ! ff00 f00de654: 90 0a 00 01 and %o0, %g1, %o0 Which means nothing to me. I bisected it to this: commit 9933fc0ac1ac14b795819cd63d05ea92112f690a Author: Theodore Ts'o Date: Mon Aug 1 08:45:02 2011 -0400 ext4: introduce ext4_kvmalloc(), ext4_kzalloc(), and ext4_kvfree() Introduce new helper functions which try kmalloc, and then fall back to vmalloc if necessary, and use them for allocating and deallocating s_flex_groups. Signed-off-by: "Theodore Ts'o" The commit before that builds fine, this one doesn't. I think it's triggering bad behavior in arch/sparc/mm/btfixup.c (at least that's where the "valid instruction" error message comes from), but I have no idea what this file is doing, and it was last touched in 2008. (I'm building with gcc 4.2.1 and binutils 2.17, both of which were last touched around 2006, so that's not new either...) Rob 1321118554.0 From rob at landley.net Sun Nov 13 00:07:01 2011 From: rob at landley.net (Rob Landley) Date: Sat, 12 Nov 2011 18:07:01 -0600 Subject: [Aboriginal] Sparc-32 doesn't work in 3.1. In-Reply-To: <4EBEAB5A.5020809@landley.net> References: <4EBEAB5A.5020809@landley.net> Message-ID: <4EBF0A25.20604@landley.net> On 11/12/2011 11:22 AM, Rob Landley wrote: > Still trying to ship an Aboriginal Linux release with the 3.1 kernel, > but the sparc target broke, as in QEMU's OpenBios goes: > > Boot time fixup v1.6. 4/Mar/98 Jakub Jelinek (jj at ultra.linux.cz). > Patching kernel for srmmu[Fujitsu TurboSparc]/iommu > Fixup i f029ddfc doesn't refer to a valid instruction at > f00de648[95eea000] > halt, power off If anyone would like a reproduction sequence for this, the toolchain I use (which compiles commit 9933fc0ac1ac14b^1 just fine) is at: http://landley.net/aboriginal/downloads/binaries/cross-compiler-sparc.tar.bz2 I configure using the attached miniconfig, ala: make allnoconfig KCONFIG_ALLCONFIG=miniconfig.sparc ARCH=sparc And then: PATH=/path/to/cross-compiler-sparc/bin:$PATH make ARCH=sparc \ CROSS_COMPILE=sparc- -j 3 I then grab the file arch/sparc/boot/image out of the build and run: qemu-system-sparc -nographic -no-reboot -kernel image -hda /dev/null -m 256 \ -append "root=/dev/sda rw init=/sbin/init.sh panic=1 PATH=/bin:/sbin console=ttyS0 HOST=sparc" If you'd like a working system for comparison (built with the same toolchain), download: http://landley.net/aboriginal/downloads/binaries/system-image-sparc.tar.bz2 And run-emulator.sh out of that. Rob -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: miniconfig.sparc URL: From rob at landley.net Mon Nov 14 04:32:24 2011 From: rob at landley.net (Rob Landley) Date: Sun, 13 Nov 2011 22:32:24 -0600 Subject: [Aboriginal] Random status report... Message-ID: <4EC099D8.9080808@landley.net> I've cc'd a couple of sparc messages here. Still haven't heard back from any of the sparc developers, but oh well. Might dig into it again this week. I've also dug up the old fix for sparc dynamic linking: I'm sorry, I don't remember who sent it to me. It's just this: --- uClibc-0.9.32.bak/ldso/include/dl-hash.h +++ uClibc-0.9.32/ldso/include/dl-hash.h @@ -111,7 +111,7 @@ ElfW(Addr) relro_addr; size_t relro_size; - dev_t st_dev; /* device */ + int st_dev; /* device */ ino_t st_ino; /* inode */ #ifdef __powerpc__ Which is pretty straightforward... except that it's applied to every architecture and only needed for sparc. Which is why I didn't apply it before. I need to figureout why it's NOT working on sparc. (Is dev_t a short?) Worse case scenario, I can throw an #ifdef around it...) I updated dropbear in static-tools (there was a new release, and now the repo is in Mercurial!), and I also updated the LFS bootstrap to 6.8 (7.0 is out, it's a todo item). That's just background stuff while trying to give sparc a little more time to resolve before putting a release out. One more target that actually builds LFS to completion would be really nice. :) (In other news, toybox is showing signs of life. See my blog for details...) Rob 1321245144.0 From onefang at gmail.com Wed Nov 23 05:16:27 2011 From: onefang at gmail.com (David Seikel) Date: Wed, 23 Nov 2011 15:16:27 +1000 Subject: [Aboriginal] trimconfig-busybox Message-ID: <20111123151627.7e79c691.onefang@gmail.com> Busybox used to use a trimconfig-busybox. I take it that's been deprecated AND removed? I'm trying to cut down on stuff I don't need, like NFS, RPC, and syslog for instance. But cutting those out of uClibc means that busybox fails when trying to build commands I also don't need. Looks like busybox is just doing defconfig now, I'll have to hack up it's build script. -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: not available URL: From onefang at gmail.com Wed Nov 23 06:16:10 2011 From: onefang at gmail.com (David Seikel) Date: Wed, 23 Nov 2011 16:16:10 +1000 Subject: [Aboriginal] trimconfig-busybox In-Reply-To: <20111123151627.7e79c691.onefang@gmail.com> References: <20111123151627.7e79c691.onefang@gmail.com> Message-ID: <20111123161610.13b6f007.onefang@gmail.com> On Wed, 23 Nov 2011 15:16:27 +1000 David Seikel wrote: > Busybox used to use a trimconfig-busybox. I take it that's been > deprecated AND removed? > > I'm trying to cut down on stuff I don't need, like NFS, RPC, and > syslog for instance. But cutting those out of uClibc means that > busybox fails when trying to build commands I also don't need. > > Looks like busybox is just doing defconfig now, I'll have to hack up > it's build script. /me puts syslog back in, it's too wide spread throughout busybox. Oh well. -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: not available URL: From onefang at gmail.com Wed Nov 23 06:45:29 2011 From: onefang at gmail.com (David Seikel) Date: Wed, 23 Nov 2011 16:45:29 +1000 Subject: [Aboriginal] trimconfig-busybox In-Reply-To: <20111123161610.13b6f007.onefang@gmail.com> References: <20111123151627.7e79c691.onefang@gmail.com> <20111123161610.13b6f007.onefang@gmail.com> Message-ID: <20111123164529.6ec76a89.onefang@gmail.com> On Wed, 23 Nov 2011 16:16:10 +1000 David Seikel wrote: > On Wed, 23 Nov 2011 15:16:27 +1000 David Seikel > wrote: > > > Busybox used to use a trimconfig-busybox. I take it that's been > > deprecated AND removed? > > > > I'm trying to cut down on stuff I don't need, like NFS, RPC, and > > syslog for instance. But cutting those out of uClibc means that > > busybox fails when trying to build commands I also don't need. > > > > Looks like busybox is just doing defconfig now, I'll have to hack up > > it's build script. > > /me puts syslog back in, it's too wide spread throughout busybox. Oh > well. And mount can't live without RPC. -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: not available URL: From onefang at gmail.com Wed Nov 23 07:48:54 2011 From: onefang at gmail.com (David Seikel) Date: Wed, 23 Nov 2011 17:48:54 +1000 Subject: [Aboriginal] trimconfig-busybox In-Reply-To: <20111123164529.6ec76a89.onefang@gmail.com> References: <20111123151627.7e79c691.onefang@gmail.com> <20111123161610.13b6f007.onefang@gmail.com> <20111123164529.6ec76a89.onefang@gmail.com> Message-ID: <20111123174854.73b5e14b.onefang@gmail.com> On Wed, 23 Nov 2011 16:45:29 +1000 David Seikel wrote: > On Wed, 23 Nov 2011 16:16:10 +1000 David Seikel > wrote: > > > On Wed, 23 Nov 2011 15:16:27 +1000 David Seikel > > wrote: > > > > > Busybox used to use a trimconfig-busybox. I take it that's been > > > deprecated AND removed? > > > > > > I'm trying to cut down on stuff I don't need, like NFS, RPC, and > > > syslog for instance. But cutting those out of uClibc means that > > > busybox fails when trying to build commands I also don't need. > > > > > > Looks like busybox is just doing defconfig now, I'll have to hack > > > up it's build script. > > > > /me puts syslog back in, it's too wide spread throughout busybox. > > Oh well. > > And mount can't live without RPC. Oops, my bad, forgot to turn off NFS mounting. -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: not available URL: From onefang at gmail.com Wed Nov 23 16:13:51 2011 From: onefang at gmail.com (David Seikel) Date: Thu, 24 Nov 2011 02:13:51 +1000 Subject: [Aboriginal] trimconfig-busybox In-Reply-To: <20111123174854.73b5e14b.onefang@gmail.com> References: <20111123151627.7e79c691.onefang@gmail.com> <20111123161610.13b6f007.onefang@gmail.com> <20111123164529.6ec76a89.onefang@gmail.com> <20111123174854.73b5e14b.onefang@gmail.com> Message-ID: <20111124021351.77614762.onefang@gmail.com> On Wed, 23 Nov 2011 17:48:54 +1000 David Seikel wrote: > On Wed, 23 Nov 2011 16:45:29 +1000 David Seikel > wrote: > > > On Wed, 23 Nov 2011 16:16:10 +1000 David Seikel > > wrote: > > > > > On Wed, 23 Nov 2011 15:16:27 +1000 David Seikel > > > wrote: > > > > > > > Busybox used to use a trimconfig-busybox. I take it that's been > > > > deprecated AND removed? > > > > > > > > I'm trying to cut down on stuff I don't need, like NFS, RPC, and > > > > syslog for instance. But cutting those out of uClibc means that > > > > busybox fails when trying to build commands I also don't need. > > > > > > > > Looks like busybox is just doing defconfig now, I'll have to > > > > hack up it's build script. > > > > > > /me puts syslog back in, it's too wide spread throughout busybox. > > > Oh well. > > > > And mount can't live without RPC. > > Oops, my bad, forgot to turn off NFS mounting. Ah, found the hidden knob to turn off syslog in busybox, and disabled all the apps I did not need that use it. Trying to get rid of large file support now, not enough total storage on my device to qualify as "large". -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: not available URL: From rob at landley.net Fri Nov 25 17:34:54 2011 From: rob at landley.net (Rob Landley) Date: Fri, 25 Nov 2011 11:34:54 -0600 Subject: [Aboriginal] trimconfig-busybox In-Reply-To: <20111123151627.7e79c691.onefang@gmail.com> References: <20111123151627.7e79c691.onefang@gmail.com> Message-ID: <4ECFD1BE.2070105@landley.net> On 11/22/2011 11:16 PM, David Seikel wrote: > Busybox used to use a trimconfig-busybox. I take it that's been > deprecated AND removed? I pushed a bunch of patches upstream to busybox's kconfig stuff so that defconfig switched on things I needed and switched off things that broke on various targets. This meant I could just use busybox's defconfig and not have to manually configure it. But I'm starting to rethink that decision. A couple weeks back Tim Bird (guy behind the Consumer Electronic Linux Forum) pointed out that a bunch of companies were desperate for a replacement for Android's toolbox, but the FSF's insane GPlv3 led to a "no GPL in userspace" policy that tars GPLv2 with the same brush, so they couldn't just ship busybox even if it wasn't turning into a giant hairball. So I dug up my old toybox project, triaged the third party commits (and got permission from all but one developer to switch the license, and sadly had to remove his code because I can't FIND the guy), and relicensed it under the simplest 2-clause BSD. So I'm going to try to get Aboriginal building with just toybox. Dunno about a timeframe for this, and it'll be optional for a longish time, but... it's back in the cards. :) > I'm trying to cut down on stuff I don't need, like NFS, RPC, and syslog > for instance. But cutting those out of uClibc means that busybox fails > when trying to build commands I also don't need. > > Looks like busybox is just doing defconfig now, I'll have to hack up > it's build script. I can put trimconfig back. The thing is, I need to run more/record-commands.sh and more/report-recorded-commands.sh to get the list of commands aboriginal linux needs, but I _also_ need the list of commands needed by: A) the boot script B) the full Linux From Scratch build I erred on the side of "throwing it all in" just to simplify native build bootstrapping, and handed the "what belongs in defconfig" decisions upstream to busybox. Unfortunately, this causes various problems: http://lists.busybox.net/pipermail/busybox/2011-November/076916.html And of course bloat continues ad nauseam: http://lists.busybox.net/pipermail/busybox/2011-November/076898.html And I've _tried_ to go back to busybox development, but it's just no fun to work on anymore: http://landley.net/notes-2011.html#08-06-2011 So yeah, toybox is back up. http://landley.net/toybox Rob 1322242494.0 From rob at landley.net Fri Nov 25 17:36:25 2011 From: rob at landley.net (Rob Landley) Date: Fri, 25 Nov 2011 11:36:25 -0600 Subject: [Aboriginal] trimconfig-busybox In-Reply-To: <20111123164529.6ec76a89.onefang@gmail.com> References: <20111123151627.7e79c691.onefang@gmail.com> <20111123161610.13b6f007.onefang@gmail.com> <20111123164529.6ec76a89.onefang@gmail.com> Message-ID: <4ECFD219.6040103@landley.net> On 11/23/2011 12:45 AM, David Seikel wrote: > On Wed, 23 Nov 2011 16:16:10 +1000 David Seikel > wrote: > >> On Wed, 23 Nov 2011 15:16:27 +1000 David Seikel >> wrote: >> >>> Busybox used to use a trimconfig-busybox. I take it that's been >>> deprecated AND removed? >>> >>> I'm trying to cut down on stuff I don't need, like NFS, RPC, and >>> syslog for instance. But cutting those out of uClibc means that >>> busybox fails when trying to build commands I also don't need. >>> >>> Looks like busybox is just doing defconfig now, I'll have to hack up >>> it's build script. >> >> /me puts syslog back in, it's too wide spread throughout busybox. Oh >> well. > > And mount can't live without RPC. Mount can live without RPC. Disable NFS support. (Note: The NFS support in busybox is CRAP using the old binary-only NFSv2 API. You're better off without it, you just have to know what command line -o string to supply.) Rob 1322242585.0 From james_mcmechan at hotmail.com Tue Nov 29 15:46:54 2011 From: james_mcmechan at hotmail.com (James McMechan) Date: Tue, 29 Nov 2011 07:46:54 -0800 Subject: [Aboriginal] miniconfig-busybox In-Reply-To: <20111124021351.77614762.onefang@gmail.com> References: <20111123151627.7e79c691.onefang@gmail.com>, <20111123161610.13b6f007.onefang@gmail.com>, <20111123164529.6ec76a89.onefang@gmail.com>, <20111123174854.73b5e14b.onefang@gmail.com>, <20111124021351.77614762.onefang@gmail.com> Message-ID: I saw?David Seikel's comments about still being interested in trim-config Here is how I use mini-config with busybox, it is not hard though I have not yet gotten the auto build stuff to include the aboriginal tarball and the package directory in my initramfs --- busybox.orig??????? 2011-11-27 05:41:26.000000000 -0800 +++ busybox.build?????? 2011-11-27 16:19:20.000000000 -0800 @@ -5,7 +5,8 @@ ?# Build busybox ?#make allyesconfig KCONFIG_ALLCONFIG="${SOURCES}/trimconfig-busybox" && -make defconfig && +#make defconfig && +make allnoconfig KCONFIG_ALLCONFIG="${SOURCES}/mini-busybox" && ?cp .config "$WORK"/config-busybox && ?LDFLAGS="$LDFLAGS $STATIC_FLAGS" make -j $CPUS $VERBOSITY $DO_CROSS && ?make busybox.links || dienow I was adding very little to config export NO_CPLUSPLUS=1 export SYSIMAGE_TYPE=initramfs My preference is for mini-config rather than trim-config so I can turn on just what I want I am using a ~98 line mini-config which needs few changes between busybox versions It is possible that a few more options can be turned off I would like to convert the initramfs to bz2 and drop gzip. Without genext2fs it appears it doesn't need TAR_OLDGNU_COMPATIBILITY apparently that program's build environment was very very old. #needed for od -t option in busybox build CONFIG_DESKTOP=y CONFIG_LFS=y CONFIG_FEATURE_SEAMLESS_BZ2=y CONFIG_FEATURE_SEAMLESS_GZ=y CONFIG_BUNZIP2=y CONFIG_BZIP2=y CONFIG_GUNZIP=y # gzip is used in linux kernel initramfs code CONFIG_GZIP=y CONFIG_TAR=y CONFIG_FEATURE_TAR_CREATE=y CONFIG_FEATURE_TAR_AUTODETECT=y CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y # needed for old format tar archive CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y CONFIG_BASENAME=y CONFIG_CAT=y CONFIG_CHMOD=y CONFIG_CHOWN=y CONFIG_CP=y CONFIG_CUT=y CONFIG_DATE=y CONFIG_DD=y CONFIG_FEATURE_DD_SIGNAL_HANDLING=y CONFIG_DIRNAME=y CONFIG_ECHO=y CONFIG_FEATURE_GREP_EGREP_ALIAS=y CONFIG_ENV=y CONFIG_EXPR=y CONFIG_EXPR_MATH_SUPPORT_64=y CONFIG_ID=y CONFIG_INSTALL=y CONFIG_LN=y CONFIG_LS=y # host-tools.sh uses ls -tc to check for tarballs CONFIG_FEATURE_LS_SORTFILES=y CONFIG_FEATURE_LS_TIMESTAMPS=y CONFIG_FEATURE_LS_USERNAME=y CONFIG_MKDIR=y CONFIG_MV=y? CONFIG_OD=y? CONFIG_PWD=y CONFIG_READLINK=y CONFIG_RM=y CONFIG_RMDIR=y CONFIG_SHA1SUM=y CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y CONFIG_SLEEP=y CONFIG_SORT=y CONFIG_FEATURE_SORT_BIG=y # stat -c is used by sources/toys/gen_initramfs_list.sh CONFIG_STAT=y CONFIG_FEATURE_STAT_FORMAT=y CONFIG_TAIL=y CONFIG_TOUCH=y CONFIG_TR=y CONFIG_TRUE=y CONFIG_UNAME=y CONFIG_UNIQ=y CONFIG_WC=y CONFIG_WHOAMI=y CONFIG_YES=y CONFIG_FEATURE_AUTOWIDTH=y CONFIG_MKTEMP=y CONFIG_WHICH=y CONFIG_AWK=y CONFIG_CMP=y CONFIG_DIFF=y CONFIG_FEATURE_DIFF_DIR=y CONFIG_PATCH=y CONFIG_SED=y CONFIG_FIND=y CONFIG_FEATURE_FIND_PRINT0=y CONFIG_FEATURE_FIND_TYPE=y CONFIG_FEATURE_FIND_XDEV=y CONFIG_FEATURE_FIND_NOT=y CONFIG_FEATURE_FIND_PATH=y CONFIG_GREP=y CONFIG_XARGS=y CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y CONFIG_HOSTNAME=y CONFIG_ASH=y CONFIG_ASH_OPTIMIZE_FOR_SIZE=y CONFIG_FEATURE_SH_IS_ASH=y CONFIG_FEATURE_TEST_64=y CONFIG_ASH_BASH_COMPAT=y CONFIG_ASH_BUILTIN_TEST=y # for root file system use CONFIG_INIT=y CONFIG_FEATURE_INIT_SCTTY=y CONFIG_FDISK_SUPPORT_LARGE_DISKS=y CONFIG_MDEV=y CONFIG_MOUNT=y 1322581614.0 From rob at landley.net Wed Nov 30 12:22:33 2011 From: rob at landley.net (Rob Landley) Date: Wed, 30 Nov 2011 06:22:33 -0600 Subject: [Aboriginal] Status update (sparc32). Message-ID: <4ED62009.8050405@landley.net> So the thing that's been holding up a release with the 3.1 kernel is 32-bit sparc support, which is _almost_ working (as in almost building Linux From Scratch). The uClibc fix that gets sparc dynamic linking working is this: --- uClibc-0.9.32.bak/ldso/include/dl-hash.h +++ uClibc-0.9.32/ldso/include/dl-hash.h @@ -111,7 +111,7 @@ ElfW(Addr) relro_addr; size_t relro_size; - dev_t st_dev; /* device */ + int st_dev; /* device */ ino_t st_ino; /* inode */ #ifdef __powerpc__ Note that this has been broken in upstream uClibc for something like FIVE YEARS. Yeah that's a change to device independent code, and probably not the _right_ fix, but at this point I'm willing to slap an #ifdef on there and move on. If I was shipping a 3.1 kernel, life would be good. But 3.2 dies with a symbol relocation error. The kernel has a symbol relocator? 32 bit sparc does! And it breaks. The problem is that a symbol winds up in the list that doesn't need to be relocated, so the relocator doesn't know _how_ to relocate it, and barfs. It seems to be an off by one error, the symbol _after_ that one needs to be relocated. Where does the list of symbols to relocate come from? There's a tool arch/sparc/boot/btfixupprep.c which the Makefile uses like so: cmd_btfix = $(OBJDUMP) -x vmlinux | $(obj)/btfixupprep > $@ It's parsing the output of objdump, and apparently doing it wrong. The _other_ other problem is that when you get past _that_ (such as by disabling the ext4 code containing the symbol the fixup code is barfing on), you hit the kernel command line limit. Openbios or something barfs if qemu's -append option provides too much data. So run-emulator.sh boots but dev-environment.sh doesn't, due to the kernel command line length. Whee... Rob 1322655753.0 From rob at landley.net Wed Nov 30 12:05:20 2011 From: rob at landley.net (Rob Landley) Date: Wed, 30 Nov 2011 06:05:20 -0600 Subject: [Aboriginal] miniconfig-busybox In-Reply-To: References: <20111123151627.7e79c691.onefang@gmail.com>, <20111123161610.13b6f007.onefang@gmail.com>, <20111123164529.6ec76a89.onefang@gmail.com>, <20111123174854.73b5e14b.onefang@gmail.com>, <20111124021351.77614762.onefang@gmail.com> Message-ID: <4ED61C00.1060304@landley.net> On 11/29/2011 09:46 AM, James McMechan wrote: > > I saw David Seikel's comments about still being interested in trim-config > Here is how I use mini-config with busybox, it is not hard > though I have not yet gotten the auto build stuff to include the aboriginal > tarball and the package directory in my initramfs There was an initramfs bug recent-ish-ly, are you using a version after http://landley.net/hg/aboriginal/rev/1366 ? > --- busybox.orig 2011-11-27 05:41:26.000000000 -0800 > +++ busybox.build 2011-11-27 16:19:20.000000000 -0800 > @@ -5,7 +5,8 @@ > # Build busybox > > #make allyesconfig KCONFIG_ALLCONFIG="${SOURCES}/trimconfig-busybox" && > -make defconfig && > +#make defconfig && > +make allnoconfig KCONFIG_ALLCONFIG="${SOURCES}/mini-busybox" && I need to provide a way to select this, do a defconfig if no busybox config is provided, otherwise use that. Probably some kind of config setting. I'm also back to working on toybox, which means testing toybox, which means getting toybox and busybox to install alongside each other and gradually reduce the number of busybox commands I'm using. I'm not inflicting toybox on aboriginal's default configuration any time soon, but I personally need the option. > cp .config "$WORK"/config-busybox && > LDFLAGS="$LDFLAGS $STATIC_FLAGS" make -j $CPUS $VERBOSITY $DO_CROSS && > make busybox.links || dienow > > I was adding very little to config > > export NO_CPLUSPLUS=1 > export SYSIMAGE_TYPE=initramfs > > My preference is for mini-config rather than trim-config so I can turn on just what I want I admit the trimconfig was a bit of a hack; trying to use defconfig but it didn't work. And now busybox defconfig is back to not working because the UBI stuff doesn't build on ubuntu 11.10. > I am using a ~98 line mini-config which needs few changes between busybox versions > It is possible that a few more options can be turned off I would like to convert the > initramfs to bz2 and drop gzip. > Without genext2fs it appears it doesn't need TAR_OLDGNU_COMPATIBILITY > apparently that program's build environment was very very old. I need to write my own genext2fs. Now that I'm back working on toybox, I may manage that eventually... > #needed for od -t option in busybox build > CONFIG_DESKTOP=y I've argued with Denys about that. CONFIG_DESKTOP is not well defined, there's no clear rule for what it does and doesn't do. This config is enough to build aboriginal linux itself, with this in hostconfig? A) Does that include running the ./download.sh stage? B) Have you tried lfs-bootstrap.hdc with this? Rob 1322654720.0