*** Pali has quit IRC | 04:23 | |
*** Pali has joined #maemo-meeting | 11:47 | |
*** Pali has quit IRC | 12:35 | |
*** Pali has joined #maemo-meeting | 13:20 | |
*** Pali has quit IRC | 13:25 | |
*** GeneralAntilles has quit IRC | 14:11 | |
*** GeneralAntilles has joined #maemo-meeting | 14:53 | |
*** Pali has joined #maemo-meeting | 16:06 | |
*** javispedro has joined #maemo-meeting | 17:25 | |
X-Fade | lbt: ping :) | 17:59 |
---|---|---|
lbt | pong | 18:00 |
X-Fade | Ah, there he is. | 18:01 |
X-Fade | Anyone else awake? | 18:01 |
* merlin1991 is | 18:01 | |
X-Fade | javispedro: ? | 18:01 |
X-Fade | He'll probably show up soonish :) | 18:03 |
X-Fade | Ok then, well let's first start with the basics then. | 18:06 |
X-Fade | The reason I invited lbt is to talk about using the SB2 in OBS approach for building fremantle apps. | 18:06 |
javispedro | I'm here already | 18:06 |
X-Fade | :D | 18:06 |
lbt | *nod* | 18:06 |
X-Fade | Together with Stskeeps, lbt has been working on using SB2 in OBS as a clean way to do cross compilation. | 18:07 |
X-Fade | Right, so far lbt? | 18:07 |
lbt | yes | 18:07 |
X-Fade | With the added benefit of being able to accelerate builds. | 18:08 |
X-Fade | What I would like to discuss is what we would need to do an experiment with that. | 18:08 |
X-Fade | And what kind of issues we would run in to. | 18:09 |
lbt | fremantle ? | 18:10 |
javispedro | e.g. what might be different from maemo sdk+ | 18:10 |
javispedro | and potentially diablo or even older :) | 18:10 |
X-Fade | And harmattan too. | 18:10 |
lbt | OK | 18:10 |
X-Fade | But we would start with fremantle as that would be the way to move to OBS instead of autobuilder based repos. | 18:11 |
X-Fade | Fremantle on SB used rootstraps, this is not so much the case in SB2, right? | 18:11 |
lbt | correct | 18:12 |
javispedro | well, it is the case with maemo sdk+ afaik | 18:12 |
lbt | I'm not familiar with sdk_ | 18:12 |
lbt | + | 18:12 |
lbt | I used it >2yrs ago a couple of times | 18:13 |
lbt | OBS is based around preparing a custom build root | 18:13 |
X-Fade | With minimal dependencies, based on the build requirements. | 18:14 |
lbt | typically we make that minimal to ensure that builddeps are specified correctly - this ensures that rebuilds are done riht | 18:14 |
lbt | g | 18:14 |
lbt | it also makes it a tad quicker for smaller builds | 18:14 |
lbt | so we need to ensure that we have the ability to make appropriate build environments | 18:15 |
lbt | over and above the src they contain tools, libs and header files | 18:15 |
X-Fade | But it requires some minimal rootstrap like repository? | 18:16 |
lbt | yeah, there's always a set of packages available to satisfy deps | 18:16 |
lbt | core, tools and -devel | 18:16 |
X-Fade | And these come from a loaded repository for instance? | 18:17 |
lbt | yep | 18:17 |
X-Fade | So we could prime that with the packages from the SDK repo. | 18:17 |
lbt | yep | 18:17 |
lbt | and fill in any blanks | 18:17 |
lbt | and make substitutions | 18:17 |
lbt | eg busybox/gnu-utils | 18:18 |
lbt | in certain situations | 18:18 |
X-Fade | That I have already done in the current setup. | 18:18 |
lbt | so that gets you emulated builds | 18:18 |
lbt | typically | 18:18 |
X-Fade | But you would replace some arm binaries with native versions? | 18:19 |
lbt | mmm | 18:19 |
lbt | replace gives the wrong impression | 18:19 |
lbt | that's actually how I used to do it for Mer on maemo | 18:19 |
lbt | sb2 does it a little differently | 18:20 |
javispedro | iirc there's a "whitelist" of stuff that gets redirected? | 18:21 |
lbt | essentially, yes | 18:21 |
X-Fade | One thing that happened in SB based SDK was for instance that in libqt4-dev for armel, there was a i386 based qmake in the package. | 18:21 |
X-Fade | This makes OBS unhappy atm :) | 18:22 |
lbt | *nod* | 18:22 |
lbt | I've not looked at that yet | 18:22 |
X-Fade | Ok, so how would you configure your SB2 target? | 18:23 |
lbt | "A target is a rootfs that contains development files like headers, libraries and possibly programs. Notably it does *not* need to contain compilers, linkers etc." | 18:24 |
lbt | http://wiki.merproject.org/wiki/Platform_SDK_and_SB2#Target_Preparation | 18:24 |
X-Fade | Yeah, so that requires us to create some kind of rootfs? | 18:25 |
lbt | so the rootstrap is where we put x86 things (like gcc-cross and all the cross tools, but also perl etc) | 18:25 |
lbt | then we create a minimal development rootfs | 18:25 |
X-Fade | Ok, there we take some parts from the i386 SDK. But we would need to create some cross compiler packages. | 18:27 |
lbt | right now that approach uses a rootfs | 18:27 |
lbt | today stskeeps got that working with a package approach | 18:27 |
lbt | and yes, we'd need cross-compilers | 18:28 |
X-Fade | Ok, so our first todo would be to create the cross compilers. | 18:28 |
lbt | and they should be in the maemo SDK | 18:29 |
lbt | I wonder if we can use the Mer SDK | 18:30 |
lbt | and have a fremantle targetfs | 18:30 |
X-Fade | compiler version issues come to mind. | 18:30 |
lbt | as a way to get going | 18:30 |
lbt | yeah, don't install gcc | 18:30 |
lbt | instead, cpio2rpm the maemo gcc binutils etc binaries | 18:31 |
lbt | there may be too many .so issues | 18:31 |
merlin1991 | couldn't we reuse the cross compilers from the maemo sdk packages? | 18:32 |
javispedro | was thinking the maemosdk_+_ packages, the maemosdk toolchains have sb1 garbage | 18:32 |
X-Fade | We might be able to use those. | 18:34 |
lbt | well, what's the fremantle prjconf for a minimal build root | 18:34 |
X-Fade | https://build.obs.maemo.org/project/prjconf?project=Maemo%3AFremantle%3A1.3 | 18:35 |
lbt | can you turn that into an SDK | 18:35 |
lbt | and then add sb2 | 18:35 |
X-Fade | We could use the arm-2007q3 crosscompilers. | 18:38 |
lbt | yes | 18:38 |
X-Fade | I don't think we had newer ones? | 18:38 |
lbt | which are passed directly to the sb2-init | 18:38 |
javispedro | X-Fade: those are fremantle's, if that's what you asked | 18:39 |
X-Fade | javispedro: Yeah. | 18:39 |
X-Fade | So, we would need to figure out which packages we would need. | 18:40 |
X-Fade | I guess we can document that in the wiki. | 18:40 |
X-Fade | Once we have this 'light' sdk, how to continue? | 18:41 |
lbt | sb2 support for cross into OBS | 18:42 |
X-Fade | You mean adding it to the fremantle project? | 18:43 |
X-Fade | Or updating the infra? :) | 18:43 |
lbt | adding it to bs_worker and "build" | 18:43 |
X-Fade | Ok, so your patch set. | 18:43 |
lbt | but that's "just" replicating stskeeps work for rpm to the deb install side | 18:43 |
X-Fade | That is something for me then... | 18:43 |
X-Fade | Who could help look into the SDK side of things? | 18:44 |
javispedro | is there documentation regarding the different mappings I see there? sdk-build, sdk-install, when to use which one, where to place the tools.. | 18:44 |
lbt | the build mappings are a subset of install | 18:45 |
lbt | less rules == faster | 18:45 |
javispedro | ah | 18:45 |
lbt | so just use install for now and it should be OK for build too - optimise later | 18:46 |
javispedro | so what we need is crosscompiler(cs2009) + the minimal set of x86 tools required to start dpkg -ing things | 18:49 |
X-Fade | And perl to run the build scripts, right? | 18:49 |
javispedro | put those "somewhere" (need to read the mappings I guess?) | 18:49 |
lbt | and "osc build" should do the majority of the work locally | 18:49 |
lbt | then "osc chroot" | 18:49 |
javispedro | perl will be a nightmare | 18:50 |
lbt | and sb2 is probably packaged for deb | 18:50 |
lbt | javispedro: perl isn't too bad until you get to devel-side .xs files | 18:50 |
javispedro | and thinking that as last resort one could make the build and install mappings different, make build use native perl, install use x86 perl | 18:51 |
lbt | yes | 18:51 |
lbt | perl and things with binary extensions are hard | 18:52 |
X-Fade | The mappings can't be configured through the prjconf, right? | 18:52 |
lbt | mmm | 18:52 |
lbt | no ... but... maybe an idea | 18:52 |
lbt | the platform sb2 provides the rules | 18:53 |
lbt | in Mer's case they're part of the SDK setup | 18:54 |
lbt | I've not decided how to sync them to OBS yet | 18:54 |
*** Pali has quit IRC | 18:54 | |
javispedro | http://maemo.gitorious.org/scratchbox2/scratchbox2/trees/master/lua_scripts/pathmaps the stock ones | 18:55 |
javispedro | lots of maemo specific stuff there, e.g. (/usr/lib/apt, ...) | 18:56 |
X-Fade | Yeah, but we are doing maemo ;) | 18:58 |
javispedro | exactly | 18:58 |
javispedro | so maybe the stock ones might even be more useful to us than mer's | 18:58 |
javispedro | (but dunno at this point, really) | 18:58 |
X-Fade | So basically we need to build sb2 for fremantle? | 18:59 |
lbt | yep | 18:59 |
lbt | http://maemo.gitorious.org/scratchbox2/scratchbox2/trees/master/debian | 19:00 |
X-Fade | Doesn't need a whole lot, so that should be doable. | 19:00 |
X-Fade | Who wants to package it? :) | 19:01 |
javispedro | wait a moment... why? :P | 19:01 |
X-Fade | You need to install scratchbox in your buildroot too? | 19:02 |
X-Fade | Here is Carsten's build log: http://releases.merproject.org/~carsten/sb2-b1-obs-victory.txt | 19:03 |
X-Fade | [97/100] installing scratchbox2-2.3.52-1.1 | 19:04 |
javispedro | ah, the double chroot thing :( | 19:04 |
X-Fade | We have most of it available, just not the sb2 packages yet. | 19:05 |
javispedro | dammit, I get it now | 19:05 |
javispedro | so the VM is actually running Fremantle X86, so sb2 gets the tool from the _host_, no special path required as in maemosdk+ | 19:05 |
javispedro | *the tools | 19:06 |
javispedro | ok, starts to make sense :) | 19:06 |
X-Fade | That log got me puzzled this morning too though :) | 19:06 |
javispedro | so we need to package both sb2 and cs2009 cross compiler for fremantle x86 | 19:08 |
X-Fade | javispedro, merlin1991: Up for a bit of playing with that? | 19:08 |
X-Fade | I can do the server side setup. | 19:08 |
X-Fade | lbt: This can be tested with local builds too, right? | 19:09 |
lbt | yes | 19:09 |
javispedro | I don't have a remote/local OBS setup anywhere in any case, but I can boot a Fremantle x86 VM on my own | 19:09 |
lbt | javispedro: yes | 19:10 |
X-Fade | javispedro: And setting up a local build is as simple as 'osc co -A https://api.obs.maemo.org Extras:Testing13/debhelper' or something like that. | 19:10 |
X-Fade | But yeah, I guess part can be done in a fremantle X86 env too. | 19:11 |
javispedro | ok then, I can play with t hat | 19:12 |
X-Fade | Ok, let's try to document our progress and issues in the wiki. | 19:13 |
javispedro | btw | 19:13 |
X-Fade | I'll try to get the OBS updated and configured.. | 19:13 |
javispedro | the nosb2 builds, how did they go? | 19:14 |
X-Fade | fairly well actually. | 19:14 |
X-Fade | I can't show it atm as I triggered a rebuild this morning :) | 19:14 |
X-Fade | https://build.obs.maemo.org/project/show?project=Extras%3ATesting13 | 19:14 |
javispedro | ah | 19:14 |
javispedro | well lots of unresolvable | 19:15 |
X-Fade | Yeah, but that is because it uses 'useforbuild' | 19:15 |
javispedro | ah, temporary | 19:15 |
javispedro | so we'll see. | 19:15 |
X-Fade | So it can't resolve until a package 'provides' certain things. | 19:15 |
javispedro | https://build.obs.maemo.org/package/live_build_log?arch=armv7el&package=cpumem-applet&project=Extras%3ATesting13&repository=Maemo_Fremantle_1.3_standard | 19:16 |
javispedro | first example of a package that assumes autoconf 1.7... | 19:16 |
X-Fade | Big issue is that qt4 apps don't compile. | 19:16 |
javispedro | this is provided by host tools in sb1.. | 19:16 |
X-Fade | Due to that nice i386 binary in the armel qt4-dev packages. | 19:16 |
javispedro | ah | 19:16 |
javispedro | nice one too | 19:16 |
javispedro | what was the problem with armel qmake? qemu crash? | 19:17 |
X-Fade | So I might try to build qmake for arm and replace it. | 19:17 |
X-Fade | I guess they did that to speed things up? | 19:17 |
javispedro | ah! might be. | 19:17 |
javispedro | ugly | 19:18 |
javispedro | (that's what the maemo devkit was for! ;P ) | 19:18 |
X-Fade | I filed a bug for it a long time ago :( https://bugs.maemo.org/show_bug.cgi?id=11445 | 19:18 |
povbot | Bug 11445: Package libqt4-dev 4.7.0~git20100909-0maemo1+0m5_armel.deb contains Intel386 binaries | 19:18 |
X-Fade | I might use that package from the bug and replace the maemo one.. | 19:19 |
X-Fade | But anyway, almost 600 packages compiled without problems. | 19:20 |
X-Fade | But I expect that if I add armel qmake version that we get quite a few more. | 19:22 |
X-Fade | Anything else we should discuss? | 19:24 |
* javispedro is updating wiki | 19:25 | |
X-Fade | Ok, cool :) | 19:25 |
X-Fade | I got to get me some dinner soonish.. | 19:25 |
javispedro | nothing else I think | 19:26 |
javispedro | let's what we can make out of this | 19:26 |
X-Fade | Let's at least meet again next week? | 19:26 |
javispedro | yep | 19:26 |
lbt | sure | 19:26 |
X-Fade | Ok, let's do that. | 19:27 |
X-Fade | lbt: Thanks for your input. | 19:27 |
javispedro | indeed | 19:27 |
lbt | np ... wish I had some spare time to get involved more | 19:27 |
X-Fade | Now go out and enjoy the summer :) | 19:27 |
javispedro | meh, everyone wishes that :) | 19:27 |
lbt | yeah ... blue skies! | 19:28 |
lbt | o/ | 19:28 |
X-Fade | 27C, nice! :) | 19:28 |
X-Fade | Ok, talk to you later. Thanks! | 19:29 |
javispedro | cya | 19:29 |
javispedro | just tought about having to build sb2 for pre-diablo... brrrr... | 19:36 |
*** javispedro has quit IRC | 19:40 | |
*** Pali has joined #maemo-meeting | 20:53 | |
*** Pali has quit IRC | 20:54 | |
*** cwoodward has joined #maemo-meeting | 23:22 | |
*** Woody14619 has quit IRC | 23:24 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!