On Mon, May 20, 2013 at 5:05 PM, Fathi Boudra <fathi.boudra@linaro.org> wrote:
On 20 May 2013 17:22, Nicolas Dechesne <nicolas.dechesne@linaro.org> wrote:
>
> On Mon, May 20, 2013 at 12:20 PM, Fathi Boudra <fathi.boudra@linaro.org>
> wrote:
>>
>> Hi,
>>
>> On 20 May 2013 13:00, Nicolas Dechesne <nicolas.dechesne@linaro.org>
>> wrote:
>> > hi there,
>> >
>> > i am aware and familiar with hwpacks that were initially designed and
>> > used
>> > to generate ubuntu/android Linaro images.
>> >
>> > however i don't know if hwpacks are being used for OE images nowadays?
>>
>> Yes, they are. To create an OE pre-built image, we use l-m-c in
>> combination of an OE rootfs+hwpack.
>
> ok.
>
>>
>>
>> > OE has intrinsic mechanism to generate/construct full images which
>> > include
>> > machine dependent binaries as well as generic components. So are we
>> > still
>> > using hwpacks for building OE images somehow or not? Can someone point
>> > me to
>> > relevant documentation?
>>
>> You can look at the following CI jobs:
>>
>> https://ci.linaro.org/jenkins/job/openembedded-armv7a-pre-built-images-panda
>>
>> https://ci.linaro.org/jenkins/job/openembedded-armv8-pre-built-images-vexpress64
>>
>
> the following folder seems to be empty:
>
> http://snapshots.linaro.org/openembedded/images/lamp-armv7-gcc-4.7

You're looking at the wrong directory:
http://snapshots.linaro.org/openembedded/pre-built/panda/latest

ok, i was confused by the output directory name for vexpress.

so currently, iirc, the process of 'building' a hwpack requires to 1) push the appropriate source packages in a dedicated PPA, 2) let l-h-c pull the binary and create the hwpack.

well, we seem to be doing something different for vexpress64 which i don't really understand, but i guess is something that will be streamlined with hwpacks v4...
 


> so, from that job, i can see that Panda OE prebuilt images are made by
> re-using the 'ubuntu' hwpacks which I believe is generated from this job:
>
> https://ci.linaro.org/jenkins/view/engineering-builds/job/ubuntu-armhf-hwpacks/

That's right.

> And that 'versatile' OE images are built using OE hwpacks (it's about the
> -pw argument).

I don't follow here. What's an OE hwpack? there isn't such thing.
The -pw argument is used to specify the platform when you create the
pre-built image.
The code path is slightly different depending on the platform (ubuntu vs oe).

what I meant is that vexpress64 hwpacks are stored here:

http://snapshots.linaro.org/openembedded/hwpacks/vexpress64 

while other hwpackas are stored here:

http://snapshots.linaro.org/raring/hwpacks

that's what triggered my question (and my confusion)


> So couple of more questions:
>  - why are there raring hwpacks for PAnda and OE hwpacks for versatile? is
> that what hwpack v4 is about? do we intend to get a single hwpack for all
> distro that we care about?

See http://cards.linaro.org/browse/CARD-481

We want to consolidate our approaches into a single approach that
scales across distributions.

>  - i don't find the job that creates the versatile hwpacks in Jenkins, can
> you give me the link? i'd like to understand how it's built.

Same as other hwpacks, see
https://ci.linaro.org/jenkins/job/ubuntu-armhf-hwpacks/

> Well, i find all these things a little bit convoluted, i hope this is
> because i am new to it ;-) and having the scripts spread across multiple
> repo (git, lp, and part of the scripts in Jenkins job definition) doesn't
> really help.
>
>>
>> For historical reason, linaro-image-tools is making a few assumptions
>> (ubuntu and deb packages).
>> Since our engineering builds have evolved (android, fedora,
>> openembedded, ubuntu),
>> we're slowly fixing those assumptions and going to a distro agnostic
>> approach.
>
> does that mean moving all scripts/tools away from LP? I can see a few things
> from LP bazaar, i think having all our tools on git.linaro.org would be
> nice. no rant here.. just consistency ;-)

Same here, historically reasons. I moved some bits to git but there's
still some things on LP.
Rome Wasn't Built in a Day :)

sure, that i understand ;-) but good to know that it's on-going! 

>>
>> There's a session planned to talk about this topic: hwpackv4.
>
>
> i will attend for sure. is there any wiki/doc already available on what
> might change?

Not yet.

> i remember the very first discussions about hwpacks couple of years ago, and
> i think i understand the main motivations for them, however with OE i tend
> to believe that hwpacks are much less needed and more a source of pain than
> something useful. The thing is that most of the problems that hwpacks want
> to solve are solved already in OE, unlike with Ubuntu and Android which were
> the 2 distro used when hwpacks were designed.

hwpacks were never designed for Android. The Android hwpack is pretty new.
It was designed for Ubuntu only and that was a fair assumption at that time.

> so from the perspective of a Linaro user, or a customer who will care only
> about OE, and there will be such cases, we need to make sure that we don't
> create a tool that is going to be counter-productive vs a 'vanilla' OE
> solution.

That's something to discuss... We don't have "customers". The
engineering builds are done to support our engineering effort, in the
fastest and cost effective way
The hwpack concept is still valid but not as it used to be (hardware
specific abstraction). We still want to have a single hwpack that
works for the supported distributions.

There's pros/cons for both solutions. I see it as: common approach
(hwpack+rootfs) vs native/distro specific approach. Talk to you at the
connect session :)

>>
>>
>> > in the short future i will have to build OE images for a couple of
>> > different
>> > h/w boards, so i am trying to understand the process to do that a-la
>> > Linaro.
>> >
>> > thanks
>> >
>> > nicolas
>>
>> Cheers,
>> Fathi

Cheers,
--
Fathi Boudra
Builds and Baselines Manager | Release Manager
Linaro.org | Open source software for ARM SoCs