Sunday, 2023-01-01

*** mx08 <mx08!~mx08@user/mx08> has quit IRC01:07
*** mx08 <mx08!~mx08@user/mx08> has joined #libre-soc01:08
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC01:25
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc01:29
*** Ritish <Ritish!~Ritish@202.131.158.114> has joined #libre-soc03:29
RitishHappy New Year everyone <304:16
*** Ritish <Ritish!~Ritish@202.131.158.114> has quit IRC04:48
*** Ritish <Ritish!~Ritish@202.131.158.114> has joined #libre-soc05:41
*** Ritish <Ritish!~Ritish@202.131.158.114> has quit IRC05:47
*** Ritish <Ritish!~Ritish@202.131.158.114> has joined #libre-soc05:52
*** Ritish <Ritish!~Ritish@202.131.158.114> has quit IRC06:07
*** Ritish <Ritish!~Ritish@202.131.158.114> has joined #libre-soc06:50
*** Ritish <Ritish!~Ritish@202.131.158.114> has quit IRC06:51
sadoon[m]Happy new year14:09
lkclhappy new year Ritish, sadoon[m]14:53
lkclsadoon[m], when you did the compile of debian for ppc64lesffs what options did you use? i have "-mno-vsx -mno-altivec" and am thinking that's probably all that's needed?15:12
sadoon[m]I haven't done that yet15:24
lkclah ok :)15:24
sadoon[m]I've only done ppc and ppc64 so far and only a set of packages15:24
sadoon[m]I'm a little worried about adding flags to debian build systems15:25
sadoon[m]As in, I'm worried how it can be universally done15:25
lkclmy understanding is it's best to define a new triplet15:25
lkclthen define a new machine15:25
sadoon[m]Ah good thinking15:25
lkclthen compile a version of gcc specifically containing that name15:26
lkclin this case15:26
lkclpowerpc64lesffs-linux-gnu-gcc15:26
sadoon[m]Much more tedious than something like arch or better yet gentoo, but I'll do it when I reach that point15:26
lkclgentoo is specifically optimised to allow users to change options easily and perform a full rebuild15:27
sadoon[m]Unfortunately I somehow lost the disk image containing the debian sid packages but I still have the repo clone so I can remake it15:27
lkcldebian is specifically designed to allow *debian developers* to reproduce builds in a stable way15:28
sadoon[m]lkcl: Huge plus for a project like us but unfortunately they don't have a stable set of packages with security updates like debian :(15:28
lkclthey don't have the resources/people15:28
* lkcl currently trying to get xchacha20 to run under ISACaller15:30
sadoon[m]My custom script does a full rebuild of a chosen deb-src repo which is useful, but that's it15:30
lkcl(which only supports sffs)15:30
lkclthe other thing that's a strict hard rule in debian is that builds must be done entirely on native hardware15:31
lkclbecause the problems that result on cross-compiling are subtle and an absolute sod to track down15:32
lkclgentoo/arch's attitude: "if you cross-compile, it's your problem"15:32
lkcl(again, not enough resources)15:32
lkclwhereas debian devs, having run into serious problems with cross-compiling, just put their foot down and said "no"15:33
lkclwhich helps explain why there's zero cross-compile support for debian: *nobody* does it.  or, correction: wookey used to maintain a minimal cross-compiled debian set of repos15:34
lkclsimilar to openwrt, some systems are so small they're literally incapable of native compiles.15:35
lkclemdebian.  that was it.15:35
lkclhttps://en.wikipedia.org/wiki/Emdebian_Grip15:35
lkcl"The main reasons stated as the cause for ending the project were a lack of embedded devices that do not provide support for expandable storage, and too much work involved with preparing the updates and releasing new versions."15:36
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC16:48
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc17:03
sadoon[m]Is it really cross compilation when you disable a feature on the ISA?17:08
sadoon[m]This is literally what they do for x86, they build for v1 or v2 and that leaves out many ISA additions since then17:08
sadoon[m]Talos systems are fully capable of running and natively compiling that code too17:09
sadoon[m]In the least there should be a universal on/off switch for compiler options17:10
sadoon[m]Gentoo does that well, Arch too to a lesser extent17:10
sadoon[m]It would make their lives easier yoo17:10
sadoon[m]Too*17:11
sadoon[m]I also could never find a way to point the sbuild to a local repo unless I manually inject it to the chroot17:12
sadoon[m]Meaning without some hackery you have to download every single dependency while building each package again and again17:12
sadoon[m]That is why I mirrored the repo and did some really hacky stuff to help out17:13
sadoon[m]I copy all the chroots to a tmpfs and I mount the repo inside them too just to avoid this17:13
sadoon[m]If gentoo had a stable release as well as the widespread compatibility with many projects I would leave debian without turning back17:14
programmerjakelkcl: you might want to use Mem.log_fancy rather than Mem.dump(asciidump=True) since it tries to match hexdump -C (or whatever the hd alias is on debian), it can do 16-byte lines (adjustable with log2_line_size=...)17:18
programmerjake<sadoon[m]> "Is it really cross compilation..." <- imho if it's a feature that's enabled by default, disabling it by default does require a different triple, different triple means cross compilation17:20
sadoon[m]Technically a different triple is not needed17:21
sadoon[m]Just a compiler option17:21
sadoon[m]Then again17:22
sadoon[m]Even if the triple is needed17:22
sadoon[m]The hardware is capable of running such software17:22
sadoon[m]And we can natively compile17:22
programmerjakebut it's not ABI compatible with existing libraries or ld.so, so imho it just works by accident.17:23
programmerjakethough running in a chroot would be fine17:23
programmerjakesince you can have then have a different ld.so and stuff17:24
sadoon[m]The same can be said of any of the Debian ports17:24
sadoon[m]They start by cross compilation17:24
sadoon[m]And then they continue to build natively17:24
programmerjakewhat i meant is it has to be treated as cross-compiling to work correctly, since disabling default features that affect ABI makes it incompatible with libraries with those features enabled...17:26
sadoon[m]Those libraries have to be rebuilt too ;)17:27
programmerjakewell, gtg, leaving for belated christmas party...ttyl17:28
sadoon[m]Enjoy!17:28
programmerjakethx!17:28
lkclsadoon[m], except that you're not allowed (in debian) to give any options, everything has to "appear to be native".18:24
lkcltherefore, when running "/usr/bin/gcc" its options *must* "do-the-right-thing(tm)"18:24
lkcli mean18:25
lkclonce everything is cross-compiled (including /usr/bin/gcc) and once everything is running [under qemu-with-vsx-disabled]18:25
lkclif you run "/usr/bin/gcc -dumpmachine" it should say "powerpc64elsffs-linux-gnu"18:26
lkcland if you run "/usr/bin/gcc -dumpspecs" it should say a whole stack of stuff18:27
lkclwhich includes18:27
lkcl*asm_cpu:18:27
lkcl mcpu=ppcsffs: -mppcsffs18:29
lkcl-mcpu=ppcsffs: -mno-vsx -mno-altivec18:29
lkcl*asm_default:18:29
lkcl-mppcsffs%{!m32:64}18:29
lkclsomething like that.  almost the same as -mpower418:31
lkclalso the default ld.so will have to be compiled with -mno-vsx -mno-altivec18:32
lkcland the machine/spec "detected" and "-DHAS_VSX" disabled during detection18:33
lkclwhich is where it gets hairy because IBM programmers continue to submit "#ifdef POWER9" in direct violation of programming practices18:34
lkcl> "disabling default features that affect ABI makes it incompatible with libraries with those features enabled..."18:36
lkclyyep, that's the whole point of the exercise.18:36
lkclto do precisely and exactly that.18:36
lkclonce the dust settles from "downgrading" [basically to EABI 1.5] then the dynamic feature detection which was present for years [and foolishly removed] can be added back in18:38
*** choozy <choozy!~choozy@75-63-174-82.ftth.glasoperator.nl> has joined #libre-soc19:46
*** choozy <choozy!~choozy@75-63-174-82.ftth.glasoperator.nl> has quit IRC20:27
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC21:39
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc22:06
lkclgaah fiinally got xchacha20.c to work (no svp64 - just ppc64lesffs)23:35

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!