00:00.25 | mjn3 | trying again without the 300-120 patch |
00:00.52 | mjn3 | which i didn't use earlier today |
00:02.09 | mjn3 | not the only thing i changed. but i'm thinking it may be the culprit |
00:17.35 | sjhill | go go go |
00:18.49 | andersee | mjn3: ok it is official. The cause of the mysterious gcc 3.3.5 exception handling failure is definately sjlj. |
00:19.07 | mjn3 | cool. let's kill it |
00:19.18 | andersee | yup |
00:20.11 | sjhill | excellent, cross and native success for gcc-4.1.0 and binutils-2.16 |
00:20.19 | sjhill | now to turn on locale support |
00:20.22 | mjn3 | cool |
00:21.17 | andersee | mjn3: looks like this will do it |
00:21.20 | andersee | <PROTECTED> |
00:21.20 | andersee | <PROTECTED> |
00:21.20 | andersee | - default "--enable-sjlj-exceptions" |
00:21.20 | andersee | + default "--enable-sjlj-exceptions" if BR2_GCC_VERSION_3_3_3 |
00:21.20 | andersee | + default "" |
00:22.05 | CIA-10 | 03landley * r10215 10busybox/ (include/libbb.h libbb/setup_environment.c networking/zcip.c): (log message trimmed) |
00:22.05 | CIA-10 | On Tuesday 19 April 2005 21:10, Tito wrote and today added: |
00:22.05 | CIA-10 | > Hi, |
00:22.06 | andersee | Ideally, we would now kill off gcc 3.3.3, but I need to make certain I convince bcom first |
00:22.57 | mjn3 | hmm... what about even older gcc? i'd say just turn it off by default and change the comment to say "if using gcc 3.3.3 or older then you may need to set this to <old setting> for c++ exception handling to work" |
00:23.50 | andersee | I dont use it |
00:23.57 | sjhill | yay |
00:23.59 | andersee | and I dont support it... |
00:24.07 | andersee | all in favor? |
00:24.10 | sjhill | I |
00:24.24 | solar | +1 |
00:24.31 | andersee | All opposed? |
00:24.34 | mjn3 | works for me |
00:24.38 | andersee | <sound of crickets chirping> |
00:24.44 | andersee | the ayes have it |
00:26.04 | mjn3 | heh... i hadn't realized all gcc < 3.3.3 had been removed. guess i can clean up the soft float stuff in the .mk file then |
00:26.32 | mjn3 | and get rid of the 3.2.x spec file hackiness |
00:34.13 | CIA-10 | 03andersen * r10216 10buildroot/toolchain/gcc/Config.in: (log message trimmed) |
00:34.13 | CIA-10 | It is now official, the cause of the mysterious gcc 3.3.5 exception |
00:34.13 | CIA-10 | handling failure is definately sjlj. Only enable it for the apparently |
00:35.56 | andersee | anyone have any reason to keep gcc 3.3.4, 3.4.0, 3.4.1, and 3.4.2 in buildroot? |
00:38.07 | sjhill | make sure you leave a couple leaves, okay? |
00:38.38 | mjn3 | as far as i'm concerned, 3.3.4, 3.4.0, and 3.4.1 can go. i'd be tempted to keep 3.4.2 around a bit longer, just to have a quick check in case we see 3.4.3 doing something weird. i've done a lot more testing of 3.4.2 than 3.4.3 |
00:39.30 | mjn3 | of course, if got it on my machine here so you killing that too wouldn't be a big problem |
00:39.45 | mjn3 | s/if got/i've got/ |
00:40.54 | mjn3 | going to weed in binutils too? |
00:41.47 | andersee | mjn3: only gcc 3.3.3, 3.3.5, 3.4.2, 3.4.3, 4.0.0 will remain then |
00:41.55 | andersee | mjn3: yeah, I think so |
00:42.27 | sjhill | and 4.1.0 |
00:42.28 | sjhill | sheesh |
00:42.59 | mjn3 | heh |
00:43.16 | CIA-10 | 03andersen * r10217 10buildroot/toolchain/gcc/ (7 files in 5 dirs): Weed out older, no longer maintained versions of gcc |
00:43.50 | andersee | sjhill: heh |
00:43.59 | andersee | sjhill: yeah, that too |
00:44.01 | andersee | :) |
00:44.47 | andersee | any preferences for binutils versions that need to remain |
00:45.36 | andersee | How about I trim everything but 2.15, 2.15.94.0.2.2, and 2.16*? |
00:46.32 | mjn3 | sounds good to me |
00:46.49 | mjn3 | unless you want to also keep the latest 2.14 around |
00:46.57 | andersee | yeah, suppose so |
00:47.08 | andersee | some obscure arch or other may prefer that version |
00:47.11 | mjn3 | but i have uses anything outside your list in a while |
00:49.00 | andersee | mjn3: eh? |
00:49.16 | mjn3 | your list of proposed binutils versions to kee |
00:49.20 | mjn3 | keep |
00:49.43 | mjn3 | was just thinking someone might want to use a 2.14 with gcc 3.3.x |
00:51.48 | andersee | though we never had support for stock 2.14 |
00:52.31 | CIA-10 | 03andersen * r10218 10buildroot/toolchain/binutils/ (11 files in 11 dirs): |
00:52.31 | CIA-10 | Prune out a bunch of binutils versions that are no longer |
00:52.31 | CIA-10 | the latest and greatest in their respective binutils series |
00:53.01 | solar | is sparc on binutils-2.15 yet? |
00:54.32 | solar | n/m looks like they work with =binutils-2.15.92.0.2 |
00:55.13 | andersee | solar: how about 2.15.94.0.2.2? |
00:58.09 | andersee | guess we can bring it back to life if anybody whines about it |
00:58.16 | mjn3 | true |
01:20.53 | mjn3 | sjhill: it looks like that 300-120 patch breaks the libjava build. i removed it and the build is going fine. assuming the native build finishes, i'm going to punt it |
01:38.51 | sjhill | mjn3: sounds good |
01:38.59 | sjhill | i'm getting ready to check in my stuff for 4.1.0 |
01:39.25 | sjhill | i haven't tested java/objc yet |
01:39.48 | mjn3 | ok. i just finished supper and i'm about to start looking for the reason why the libstdc++ config.h is different for cross and native |
01:45.41 | sjhill | /home/sjhill/buildroot-gcc4/build_mips/staging_dir/bin-ccache/../lib/gcc/mips-linux-uclibc/4.1.0/../../../../mips-linux-uclibc/sys-include/unistd.h:240: error: two or more data types in declaration specifiers |
01:45.46 | sjhill | hmm |
01:45.51 | sjhill | that doesn't look good |
01:50.46 | mjn3 | doesn't look like any error message i've seen recently |
01:51.21 | sjhill | that was for e2fsprogs |
01:51.29 | sjhill | everything else is building without errors |
01:52.00 | mjn3 | ah. i've only been building the toolchain |
01:52.28 | sjhill | hmm, that was the only app that failed |
01:52.35 | sjhill | it just built the ext2 and cramfs images |
01:52.53 | mjn3 | well, that and gawk since there's some code in it that triggers a failure if limits.h doesn't get fixed up correctly |
01:53.16 | sjhill | hmmm, didn't notice that one |
01:53.21 | sjhill | let me investigate deeper |
02:06.49 | sjhill | gawk built |
02:06.57 | sjhill | e2fsprogs is the only bad one |
02:07.14 | mjn3 | what's the preprocessed output look like? |
02:07.24 | sjhill | i'm still trying to decipher it |
02:09.35 | sjhill | e2fsprogs, netkit-base (inetd), util-linux (mkfs.minix) |
02:09.40 | sjhill | those are the failures |
02:09.49 | sjhill | netkit and util have errors with lvalue problems |
02:22.33 | mjn3 | cool. soft float + locale built |
02:22.45 | sjhill | great |
02:22.56 | sjhill | fixed netkit |
02:23.14 | sjhill | gcc-4.x specific |
02:23.23 | sjhill | #define SWAP(type, a, b) {type c=(type)a; (type)a=(type)b; (type)b=(type)c;} |
02:23.31 | sjhill | replaced with: |
02:23.34 | sjhill | #define SWAP(type, a, b) {type c=(type)a; a=(type)b; b=(type)c;} |
02:31.22 | sjhill | essentially any place where there is: |
02:31.47 | sjhill | (type)var1=(type)var2; |
02:31.56 | sjhill | gcc-4.1.0 does not like |
02:32.01 | sjhill | looks like it became more strict |
02:33.35 | mjn3 | casting the lhs of an assignment was deprecated in gcc 3.4 |
02:33.45 | sjhill | well there you go :) |
02:33.53 | sjhill | so, you will hit that with 4.0 i would expect |
02:34.03 | mjn3 | yep |
02:34.13 | sjhill | i'll check in patches to netkit and util-linux in a few minutes |
02:34.37 | sjhill | netkit is a one line change |
02:34.40 | sjhill | util-linux....about 15 |
02:40.02 | mjn3 | hmm... something is hosed with this configure test |
02:47.45 | sjhill | whoo boy |
02:48.04 | sjhill | xdr.h is going to need an overhaul |
03:12.03 | mjn3 | as i recall, it is an ugly mess |
03:12.33 | mjn3 | perhaps it is already overhauled in glibc |
03:22.25 | CIA-10 | 03mjn3 * r10219 10buildroot/toolchain/binutils/2.16.90.0.2/300-120_mips_xgot_multigot_workaround.patch: No longer needed and actually breaks the gcc java build. |
03:31.14 | *** join/#uclibc quitte_ (~quitte@p54A09154.dip0.t-ipconnect.de) |
03:36.44 | sjhill | mjn3: still there? |
03:36.58 | mjn3 | yeah |
03:37.03 | sjhill | check me on this |
03:37.14 | sjhill | <PROTECTED> |
03:37.14 | sjhill | -((long)ntohl((u_long)*(*(u_int32_t**)&(buf))++)) |
03:37.14 | sjhill | +(long)ntohl((long)*(buf++)) |
03:37.40 | sjhill | i think those are equivalent without casts |
03:37.52 | sjhill | <PROTECTED> |
03:37.52 | sjhill | -(*(*(u_int32_t**)&(buf))++ = (long)htonl((u_long)(v))) |
03:37.52 | sjhill | +{buf = (long)htonl((u_long)(v)); buf++;} |
03:37.56 | sjhill | and that |
03:41.22 | mjn3 | afraid it isn't equivalent. what if buf is a char *? it only increments by one char and not by one long |
03:46.05 | sjhill | *sigh* |
03:46.18 | sjhill | i'm having a heck of time working around this lhs deprecated crap |
03:50.06 | mjn3 | yeah. that xdr code is exceedingly nasty |
03:54.19 | mjn3 | you might try something like ((long *) (buf = (void *)( ((char *)buf)+sizeof(long) )) )[-1] |
03:55.50 | mjn3 | nasty, but i think it is compliant |
03:56.08 | mjn3 | disclaimer.... untested |
04:00.38 | mjn3 | back in about 30 minutes |
04:12.25 | SpanKY | mjn3: work out hte binutils stuff ? |
04:14.19 | SpanKY | ah i e-mailed binutils about the tests a day or two ago actually |
04:14.36 | SpanKY | i didnt notice the configure.in though ... i'll e-mail about that too |
04:26.25 | sjhill | ok |
04:26.29 | sjhill | i think this correct now |
04:26.45 | sjhill | -((long)ntohl((u_long)*(*(u_int32_t**)&(buf))++)) |
04:26.54 | sjhill | +((long) ntohl(*((u_int32_t*)buf++))) |
04:27.16 | sjhill | and |
04:27.23 | mjn3 | back |
04:27.37 | sjhill | -v))) |
04:27.39 | sjhill | gah |
04:27.48 | sjhill | -(*(*(u_int32_t**)&(buf))++ = (long)htonl((u_long)(v))) |
04:28.00 | sjhill | +*((u_int32_t *)buf) = (long)htonl((u_long)v); |
04:28.08 | sjhill | +(u_int32_t *)buf++; |
04:28.16 | sjhill | i think that takes care of them |
04:28.31 | sjhill | mjn3: what's it look like? |
04:28.32 | mjn3 | SpanKY: just a few fixes. what's in svn now builds both cross and native for mipsel |
04:28.48 | mjn3 | gimme a sec. just walked in the door |
04:29.14 | SpanKY | yeah i saw the diffs on the list |
04:29.27 | SpanKY | i e-mailed the configure.in change upstream |
04:30.25 | mjn3 | sjhill: there's still an issue if buff is not a long *. that's why i went to the trouble of casting to char * and adding sizeof(long). i don't think you can portably increment a cast pointer |
04:30.56 | sjhill | but all of the macros do things in term of longs no matter what |
04:31.00 | mjn3 | SpanKY: there's still an issue with cross vs native libstdc++ config. i'm looking into it |
04:31.38 | sjhill | a long is always returned and then is casted, even it is a demotion in type |
04:31.40 | mjn3 | but what does the buf++ do? the macros have no guarantee on the type passed, do they? |
04:32.09 | sjhill | no |
04:32.18 | sjhill | but it gets cast to a u_int32_t |
04:32.22 | sjhill | regardless |
04:32.34 | sjhill | is my *((u_int32_t*)buf++)) incorrect? |
04:32.52 | sjhill | i want buf cast to a u_int32_t pointer and incremented |
04:32.59 | sjhill | i don't have my C book handy |
04:34.08 | SpanKY | mjn3: i havent gotten the gall up yet to ask gcc devs to change their config files to remove the '-gnu*' ;) |
04:34.58 | mjn3 | sjhill: i remember fixing some things like that in my string code a while back. you could run a test |
04:36.26 | mjn3 | SpanKY: heh |
04:37.16 | mjn3 | i haven't even tried building for anything other that x86 and mipsel. in particular, i'm not sure about one of the cris-related patches |
04:37.22 | sjhill | mjn3: can you point me to that? |
04:37.40 | mjn3 | sjhill: to what? |
04:37.51 | sjhill | nm |
04:42.03 | mjn3 | doing the following in a loop |
04:42.07 | mjn3 | <PROTECTED> |
04:42.07 | mjn3 | <PROTECTED> |
04:42.32 | mjn3 | winds up incrementing p by 1 char each time for p a char * |
04:42.53 | mjn3 | i.e. it won't do what you want |
04:48.54 | mjn3 | my suggestion earlier works |
05:00.27 | sjhill | *nod* |
05:00.30 | sjhill | okay |
05:00.34 | sjhill | i'll fix that stuff tomorrow |
05:00.37 | sjhill | thx |
05:00.40 | sjhill | good night |
05:31.46 | CIA-10 | 03mjn3 * r10220 10buildroot/toolchain/gcc/4.0.0/303-c99-complex-ugly-hack.patch: Ugly hack to force the configuration for the cross libstdc++ to fail for complex funcs we don't yet support. |
05:32.35 | mjn3 | ok... now the configs for libstdc++ match for both cross and native builds. ugly temporary workaround admittedly |
05:36.04 | andersee | nice |
05:47.14 | *** join/#uclibc courtc_ (~courtc@adsl-154-39-94.asm.bellsouth.net) |
07:13.10 | CIA-10 | 03andersen * r10221 10uClibc/ldso/ldso/mips/ (dl-sysdep.h elfinterp.c resolve.S): |
07:13.10 | CIA-10 | On mips, gdb explicitly looks for the symbol "__dl_runtime_resolve" so change |
07:13.10 | CIA-10 | the name of our mips resolver function to match gdb's expectations. |
07:23.10 | SpanKY | andersee: hey, in uclibc/libc/sysdeps/i386/syscall.S |
07:23.22 | SpanKY | the return value check |
07:23.23 | SpanKY | <PROTECTED> |
07:23.23 | SpanKY | <PROTECTED> |
07:23.31 | SpanKY | shouldnt that be jae ? |
07:25.12 | SpanKY | glibc utilizes jae |
07:25.13 | SpanKY | http://sourceware.org/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/i386/syscall.S?rev=1.11&content-type=text/x-cvsweb-markup&cvsroot=glibc |
07:25.21 | SpanKY | <PROTECTED> |
07:25.21 | SpanKY | <PROTECTED> |
07:28.23 | SpanKY | err nm, the two differ in how they treat the error |
07:28.26 | SpanKY | forget me :) |
07:38.20 | SpanKY | err, the i386 code should be 'jb' not 'jbe' ? |
07:55.23 | *** join/#uclibc ashes (~ashes@modemcable202.48-130-66.mc.videotron.ca) |
10:13.18 | *** join/#uclibc edrx (~user@200.141.112.167) |
10:14.43 | edrx | hi |
10:15.14 | edrx | I just wrote my first /etc/init.d/rcS for a busybox-only system |
10:15.34 | edrx | but I think it is wrong |
10:15.41 | edrx | here it is: |
10:15.42 | edrx | /etc/init.d/rcS |
10:15.53 | edrx | #!/bin/sh |
10:15.54 | edrx | . /etc/profile |
10:15.54 | edrx | prep2ep |
10:15.55 | edrx | telnetd |
10:15.55 | edrx | init |
10:15.57 | edrx | <PROTECTED> |
10:16.19 | edrx | (prep2ep is a shell function defind in /etc/profile) |
10:16.37 | edrx | the problem is that init is saying |
10:16.52 | edrx | "Usage: init |
10:17.10 | edrx | Init is the parent of all processes." |
10:17.54 | edrx | and so I'm not getting job control. |
10:33.11 | thomasez | Wee, lzmatools for buildroot working. |
11:14.34 | *** part/#uclibc edrx (~user@200.141.112.167) |
14:38.34 | *** join/#uclibc ambroseL (~bjb@67.71.251.210) |
14:39.47 | *** join/#uclibc mjn3 (~mjn3@c-67-164-173-93.hsd1.co.comcast.net) [NETSPLIT VICTIM] |
14:39.47 | *** join/#uclibc CIA-10 (~CIA@flapjack.navi.cx) [NETSPLIT VICTIM] |
15:25.17 | *** join/#uclibc CIA-10 (~CIA@flapjack.navi.cx) [NETSPLIT VICTIM] |
16:26.31 | mjn3 | looks like there's a mips-specific bug in ld from binutils 2.16.90.0.2 <grumble> |
16:49.28 | solar | fun ;/ |
16:57.06 | mjn3 | here's a bit of the readelf -a output for libdl.so. actually, a diff from two different builds using the same toolchain |
16:57.33 | mjn3 | <PROTECTED> |
16:57.33 | mjn3 | - 25: 000361b0 0 NOTYPE <unknown>: 5 DEFAULT UND MIC |
16:57.33 | mjn3 | + 25: 00000012 6 <OS specific>: 12 <unknown>: 4 PROTECTED 9 |
16:57.33 | mjn3 | <PROTECTED> |
16:58.24 | mjn3 | with the last 2.15* i used, free occurred right after _fbss. looks like an off-by-one kind of error |
17:00.15 | mjn3 | think it is mips specific. doing an x86 build now |
18:29.51 | solar | is there an easy way to alias an applet? like sash for ash |
21:01.32 | mjn3 | solar: you'd have to change the applet table in busybox since the main busybox app checks the invocation name and does a bsearch in the applet table to find the appropriate app_main to run |
21:05.46 | solar | ahh like CONFIG_TEST in ./include/applets.h |
21:06.13 | mjn3 | yes |
21:07.28 | mjn3 | just remember that it does a binary search so the applet table must remain sorted |
21:10.31 | solar | http://rafb.net/paste/results/XheBBR22.txt |
21:11.34 | solar | any idea how many bytes that would add? |
21:12.18 | mjn3 | one more entry in the table struct plus the bytes for the "sash" string |
21:13.14 | mjn3 | that's my guess anyway |
21:14.13 | mjn3 | was just popping in between errands. back later |
21:14.26 | solar | thanks. cya later. |
21:15.05 | *** join/#uclibc zcram (~zcram@xor.uninet.ee) |