IRC channel logs

2020-01-29.log

back to list of logs

<oriansj>fossy: For M2-Planet FILE is just an int
<fossy>ah
<oriansj>also the Posix standard is int
<xentrac>the standard answer is that the fileno(3) function gives you the fd of a FILE*
<oriansj>xentrac: thank you and it would be trivial to implement int fileno(FILE *stream); in M2-Planet (just return what was passed)
<xentrac>as long as nobody needs ungetc, I think all the buffering stuff is just an optimization
<oriansj>xentrac: well janneke did figure out how to do that in M2-Planet.
<xentrac>oh! in that case you're home free :)
<oriansj>xentrac: well yeah; we just need to finish mes-m2 and then we are done bootstrapping GCC from hex0
<fossy>hooray ;)
<fossy>i can't wait for that day
<fossy>when oriansj makes mes-m2 run mescc
<oriansj>fossy: well the bigger half will be when I get mes-m2 able to bootstrap guile and run guix
<fossy>true
<fossy>and Gash
<fossy>personally im more excited about hex0 -> GCC
<fossy>hooorayyyy i have make
<fossy>➜ ../bin/make --version
<fossy>GNU Make 3.80
<fossy>Copyright (C) 2002 Free Software Foundation, Inc.
<fossy>built from TCC
<fossy>janneke, you may be interested to know that i built that make from tcc-boot0
<fossy>;; FIXME: add sensible check target (without depending on make)
<fossy> ;; ./check.sh ?
<fossy>so you could hypothetically move make to before tcc-boot and depend on make
<xentrac>yaas!
<fossy>can someone point me to a link to gash-utils
<fossy>cant find it
<fossy>hm, trying to construct tcc-boot... -D seems to be highly buggy
<fossy>am plagued by errors like libtcc.c:757: error: identifier expected
<janneke>fossy: beautiful -- looks like the hard bit is done!
<fossy>janneke: yes!
<fossy>still fiddling with tcc-boot tho
<fossy>im tempted to just try doing the whole bootstrap without tcc-boot lol
<janneke>fossy: i have done many circles before the whole path worked
<janneke>fossy: in the scheme-only bootstrap, that's what we do
<janneke>tcc-boot0 builds make, gzip, bzip2, sed0, diffutils, patch, bash
<janneke>tcc-boot is really just "nice to have": to build an unpatched tcc
<fossy>janneke: ah, ok
<fossy>janneke: well mescc-tools-seed dosent use tarballs it uses git submodules (for better or for worse) so we can skip gzip bzip2 and patch
<fossy>janneke: how about the binutils glibc GCC triplet
<fossy>is that built using tcc-boot0?
<janneke>fossy: no, i'm using tcc-boot there; but not for a technical reason afaic remember
<fossy>okey
<janneke>so, okay to skip if you like
<janneke>you probably really want to build binutils, gcc-core, glibc, gcc
<janneke>and say you bootstrapped this gnu triplet
<janneke>fossy: here is gash: https://git.savannah.gnu.org/git/gash.git
<janneke>fossy: here is gash core utils (they are being split off): https://gitlab.com/janneke/gash/tree/gash-core-utils
<janneke>fossy: about mescc-tools-seed using git; that's just a developer's convenience
<janneke>in my wip-full-source-bootstrap setup i use mescc-tools and m2-planet tarballs
<fossy>thanls
<fossy>thanks
<jelle>janneke: I will mail you back soon btw :( I'll be at FOSDEM btw =)
<janneke>jelle: sure, no worries :-)
<janneke>jelle: have you considered coming to the guix days? https://libreplanet.org/wiki/Group:Guix/FOSDEM2020
<jelle>I have an Arch day tommorow and friday =)
<janneke>jelle: sure, great
<jelle>36 participants that's great
<janneke>yeah, would be good to have some cross-distro event though; guess that's sat+sun
<jelle>I probably won't attend talks so that would work
<dddddd>hi
<janneke>dddddd: will you be at fosdem?
<dddddd>no ):
<dddddd>But I'm looking forward the live stream.
<dddddd>oriansj, I guess that the next step on the AArch64 front would be adding support to the cc_* family, right?
<oriansj>dddddd: nope; after AArch64 is integrated into M2-Planet the steps have to be developed (hex0, hex1, hex2, M0, then finally cc_AArch64); along with porting MesCC to AArch64
<oriansj>A good step is writing the pieces in NASM (which we then can convert to M0 and hex*)
<oriansj>But honestly I'd first get AArch64 into an M2-Planet release and probably do the stage0 steps for AArch64 after I do the steps for ARMv7l (as that would be easier to do)
<dddddd>oriansj, I see. I'm hoping to send you the patches for M2-Planet not later than this weekend (past weekend I tried the commit-per-test but I didn't like it and prepared another idea of patch split). So, let's celebrate FOSDEM with the last(?) review and merge. (:
<dddddd>I'm not quite conviced of the need of NASM versions (which can't be used in a proper bootstrap AFAIU) but if there's kind of pressure to deliver them... so it be.
<dddddd>*convinced
<fossy>dddddd: no they can't be used in the bootstrap but they can be used to verify the bootstrap and help people to understand the hex*/M* code
<dddddd>You can get there disassembling the thing, which feels better for verification that looking to another (related, but not itself) the thing
<oriansj>dddddd: actually the NASM allows one to develop the 1:1 assembly required for the tools without having to figure out the M1 DEFINEs you need to use
<oriansj>So not absolutely required but I find it handy to get an idea before I write the M1 DEFINEs and do a line by line conversion to M1 (and then to hex2 and below)
<oriansj>also I was hoping for a M2-Planet release before janneke's talk so he can announce the release at the conference
<oriansj>(no rush fossy, I don't think you'll be able to get kaem good enough to bootstrap make via TCC or GCC in time for the talk)
<dddddd>Indeed an asm is nice to create the definitions (I used gas/objdump to get the encoding).
<oriansj>Plus I am aiming to get everything into talk-notes before thursday night, so that janneke has plenty of time to ask for clarifications.