* MACHINE_EXTRA_RRECOMMENDS not working?
@ 2011-03-12 4:31 Darren Hart
2011-03-12 4:40 ` Gary Thomas
[not found] ` <83D5A5C2-F470-425F-84BE-F726CD652759@beagleboard.org>
0 siblings, 2 replies; 4+ messages in thread
From: Darren Hart @ 2011-03-12 4:31 UTC (permalink / raw)
To: poky@yoctoproject.org
I'm working to get a certain package installed for a specific machine.
In particular, I wrote a simple init.d script called n450-audio which
sets the mixer for the n450 dev board to unmute the FRONT channel and
set the volume to 70% or so - as it is muted if left untouched. For now,
I just want to make this board work, so I want to make this package get
installed if it's dependencies are met (if amixer is installed).
As I understand it, the best way to do this is with something like the
following in the machine/n450.conf file:
MACHINE_EXTRA_RRECOMMENDS += " n450-audio "
And that recipe in turn defines:
RDEPENDS = "alsa-utils-amixer"
I then:
$ bitbake -c cleanall task-base poky-image-sato-live n450-audio
followed by:
$ bitbake poky-image-sato-live
The n450-audio recipe is built, but it does not appear in the generated
image (nor in the ext3 image).
I checked the dependency chain and task-base does depend on n450-audio:
$ bitbake -g -u depexp poky-image-sato-live
I then tried using the following variables in place of
MACHINE_EXTRA_RRECOMMENDS with the same result:
MACHINE_EXTRA_RDEPENDS
MACHINE_ESSENTIAL_RRECOMMENDS
MACHINE_ESSENTIAL_RDEPENDS
Finally, I added the following to my local.conf and the image built as
expected:
POKY_EXTRA_INSTALL = " n450-audio "
Am I completely off in the weeds here? If this isn't what these
directives are for - what are they for?
I took a look at what they are used for elsewhere and found:
$ cat ~/.bashrc | grep bb
alias bb='bitbake'
alias bbdeps='bitbake -g -u depexp'
dvhart@rage:poky.git$ git grep MACHINE_EXTRA_RRECOMMENDS
documentation/poky-ref-manual/ref-variables.xml: <glossentry id='var-MACHINE_EXTRA_RRECOMMENDS'><glossterm>MACHINE_
documentation/poky-ref-manual/ref-varlocality.xml: <para><glossterm linkend='var-MACHINE_EXTRA_RRECOMMENDS'>
meta/conf/bitbake.conf:MACHINE_EXTRA_RRECOMMENDS ?= ""
meta/conf/machine/atom-pc.conf:MACHINE_EXTRA_RRECOMMENDS = "kernel-modules eee-acpi-scripts"
meta/conf/machine/beagleboard.conf:MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
meta/conf/machine/qemumips.conf:MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
meta/conf/machine/routerstationpro.conf:MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
meta/recipes-core/tasks/task-base.bb:RRECOMMENDS_task-machine-base = "${MACHINE_EXTRA_RRECOMMENDS}"
Only two other recipes are referenced with these variables:
kernel-modules and eee-acpi-scripts. I had an atom-pc build so I mounted
the rootfs and dug around - not a trace of the eee-acpi-scripts to found
anywhere. I checked for modules under
/lib/modules/2.6.34.7-yocto-standard/ and found several *.*map files,
but nothing else (certainly no *.ko files). So this mechanism certainly
doesn't do what I thought it did.
Is it supposed to? If not, what does it do. It does cause the package
listed to be built, perhaps that is it's only purpose? The user can
install the package manually if they want it?
And, more to the point, if this isn't the right mechanism to cause a
package to be added (if deps are met) to any image for a specific
machine, what is?
If you want to see the branch in question, it's here:
http://git.pokylinux.org/cgit/cgit.cgi/meta-intel/log/?h=dvhart/n450-audio
(Yes, the init script is terrible - working on that.)
Thanks,
--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: MACHINE_EXTRA_RRECOMMENDS not working?
2011-03-12 4:31 MACHINE_EXTRA_RRECOMMENDS not working? Darren Hart
@ 2011-03-12 4:40 ` Gary Thomas
2011-03-12 5:06 ` Darren Hart
[not found] ` <83D5A5C2-F470-425F-84BE-F726CD652759@beagleboard.org>
1 sibling, 1 reply; 4+ messages in thread
From: Gary Thomas @ 2011-03-12 4:40 UTC (permalink / raw)
To: Darren Hart; +Cc: poky@yoctoproject.org
On 03/11/2011 09:31 PM, Darren Hart wrote:
> I'm working to get a certain package installed for a specific machine.
> In particular, I wrote a simple init.d script called n450-audio which
> sets the mixer for the n450 dev board to unmute the FRONT channel and
> set the volume to 70% or so - as it is muted if left untouched. For now,
> I just want to make this board work, so I want to make this package get
> installed if it's dependencies are met (if amixer is installed).
>
> As I understand it, the best way to do this is with something like the
> following in the machine/n450.conf file:
>
> MACHINE_EXTRA_RRECOMMENDS += " n450-audio "
>
> And that recipe in turn defines:
>
> RDEPENDS = "alsa-utils-amixer"
>
> I then:
>
> $ bitbake -c cleanall task-base poky-image-sato-live n450-audio
>
> followed by:
>
> $ bitbake poky-image-sato-live
>
> The n450-audio recipe is built, but it does not appear in the generated
> image (nor in the ext3 image).
>
> I checked the dependency chain and task-base does depend on n450-audio:
>
> $ bitbake -g -u depexp poky-image-sato-live
>
>
> I then tried using the following variables in place of
> MACHINE_EXTRA_RRECOMMENDS with the same result:
>
> MACHINE_EXTRA_RDEPENDS
> MACHINE_ESSENTIAL_RRECOMMENDS
> MACHINE_ESSENTIAL_RDEPENDS
>
> Finally, I added the following to my local.conf and the image built as
> expected:
>
> POKY_EXTRA_INSTALL = " n450-audio "
>
> Am I completely off in the weeds here? If this isn't what these
> directives are for - what are they for?
>
> I took a look at what they are used for elsewhere and found:
>
> $ cat ~/.bashrc | grep bb
> alias bb='bitbake'
> alias bbdeps='bitbake -g -u depexp'
> dvhart@rage:poky.git$ git grep MACHINE_EXTRA_RRECOMMENDS
> documentation/poky-ref-manual/ref-variables.xml:<glossentry id='var-MACHINE_EXTRA_RRECOMMENDS'><glossterm>MACHINE_
> documentation/poky-ref-manual/ref-varlocality.xml:<para><glossterm linkend='var-MACHINE_EXTRA_RRECOMMENDS'>
> meta/conf/bitbake.conf:MACHINE_EXTRA_RRECOMMENDS ?= ""
> meta/conf/machine/atom-pc.conf:MACHINE_EXTRA_RRECOMMENDS = "kernel-modules eee-acpi-scripts"
> meta/conf/machine/beagleboard.conf:MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
> meta/conf/machine/qemumips.conf:MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
> meta/conf/machine/routerstationpro.conf:MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
> meta/recipes-core/tasks/task-base.bb:RRECOMMENDS_task-machine-base = "${MACHINE_EXTRA_RRECOMMENDS}"
>
> Only two other recipes are referenced with these variables:
> kernel-modules and eee-acpi-scripts. I had an atom-pc build so I mounted
> the rootfs and dug around - not a trace of the eee-acpi-scripts to found
> anywhere. I checked for modules under
> /lib/modules/2.6.34.7-yocto-standard/ and found several *.*map files,
> but nothing else (certainly no *.ko files). So this mechanism certainly
> doesn't do what I thought it did.
>
> Is it supposed to? If not, what does it do. It does cause the package
> listed to be built, perhaps that is it's only purpose? The user can
> install the package manually if they want it?
>
> And, more to the point, if this isn't the right mechanism to cause a
> package to be added (if deps are met) to any image for a specific
> machine, what is?
>
> If you want to see the branch in question, it's here:
> http://git.pokylinux.org/cgit/cgit.cgi/meta-intel/log/?h=dvhart/n450-audio
>
> (Yes, the init script is terrible - working on that.)
>
> Thanks,
Did you rebuild task-machine-base?
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: MACHINE_EXTRA_RRECOMMENDS not working?
2011-03-12 4:40 ` Gary Thomas
@ 2011-03-12 5:06 ` Darren Hart
0 siblings, 0 replies; 4+ messages in thread
From: Darren Hart @ 2011-03-12 5:06 UTC (permalink / raw)
To: Gary Thomas; +Cc: poky@yoctoproject.org
On 03/11/2011 08:40 PM, Gary Thomas wrote:
> On 03/11/2011 09:31 PM, Darren Hart wrote:
>> I'm working to get a certain package installed for a specific machine.
>> In particular, I wrote a simple init.d script called n450-audio which
>> sets the mixer for the n450 dev board to unmute the FRONT channel and
>> set the volume to 70% or so - as it is muted if left untouched. For now,
>> I just want to make this board work, so I want to make this package get
>> installed if it's dependencies are met (if amixer is installed).
>>
>> As I understand it, the best way to do this is with something like the
>> following in the machine/n450.conf file:
>>
>> MACHINE_EXTRA_RRECOMMENDS += " n450-audio "
>>
>> And that recipe in turn defines:
>>
>> RDEPENDS = "alsa-utils-amixer"
>>
>> I then:
>>
>> $ bitbake -c cleanall task-base poky-image-sato-live n450-audio
>>
>> followed by:
>>
>> $ bitbake poky-image-sato-live
>>
>> The n450-audio recipe is built, but it does not appear in the generated
>> image (nor in the ext3 image).
>>
>> I checked the dependency chain and task-base does depend on n450-audio:
>>
>> $ bitbake -g -u depexp poky-image-sato-live
>>
>>
>> I then tried using the following variables in place of
>> MACHINE_EXTRA_RRECOMMENDS with the same result:
>>
>> MACHINE_EXTRA_RDEPENDS
>> MACHINE_ESSENTIAL_RRECOMMENDS
>> MACHINE_ESSENTIAL_RDEPENDS
>>
>> Finally, I added the following to my local.conf and the image built as
>> expected:
>>
>> POKY_EXTRA_INSTALL = " n450-audio "
>>
>> Am I completely off in the weeds here? If this isn't what these
>> directives are for - what are they for?
>>
>> I took a look at what they are used for elsewhere and found:
>>
>> $ cat ~/.bashrc | grep bb
>> alias bb='bitbake'
>> alias bbdeps='bitbake -g -u depexp'
>> dvhart@rage:poky.git$ git grep MACHINE_EXTRA_RRECOMMENDS
>> documentation/poky-ref-manual/ref-variables.xml:<glossentry
>> id='var-MACHINE_EXTRA_RRECOMMENDS'><glossterm>MACHINE_
>> documentation/poky-ref-manual/ref-varlocality.xml:<para><glossterm
>> linkend='var-MACHINE_EXTRA_RRECOMMENDS'>
>> meta/conf/bitbake.conf:MACHINE_EXTRA_RRECOMMENDS ?= ""
>> meta/conf/machine/atom-pc.conf:MACHINE_EXTRA_RRECOMMENDS =
>> "kernel-modules eee-acpi-scripts"
>> meta/conf/machine/beagleboard.conf:MACHINE_EXTRA_RRECOMMENDS = "
>> kernel-modules"
>> meta/conf/machine/qemumips.conf:MACHINE_EXTRA_RRECOMMENDS = "
>> kernel-modules"
>> meta/conf/machine/routerstationpro.conf:MACHINE_EXTRA_RRECOMMENDS = "
>> kernel-modules"
>> meta/recipes-core/tasks/task-base.bb:RRECOMMENDS_task-machine-base =
>> "${MACHINE_EXTRA_RRECOMMENDS}"
>>
>> Only two other recipes are referenced with these variables:
>> kernel-modules and eee-acpi-scripts. I had an atom-pc build so I mounted
>> the rootfs and dug around - not a trace of the eee-acpi-scripts to found
>> anywhere. I checked for modules under
>> /lib/modules/2.6.34.7-yocto-standard/ and found several *.*map files,
>> but nothing else (certainly no *.ko files). So this mechanism certainly
>> doesn't do what I thought it did.
>>
>> Is it supposed to? If not, what does it do. It does cause the package
>> listed to be built, perhaps that is it's only purpose? The user can
>> install the package manually if they want it?
>>
>> And, more to the point, if this isn't the right mechanism to cause a
>> package to be added (if deps are met) to any image for a specific
>> machine, what is?
>>
>> If you want to see the branch in question, it's here:
>> http://git.pokylinux.org/cgit/cgit.cgi/meta-intel/log/?h=dvhart/n450-audio
>>
>>
>> (Yes, the init script is terrible - working on that.)
>>
>> Thanks,
>
> Did you rebuild task-machine-base?
I did not - but the dependency graph showed task-base dependent on it.
$ bitbake -c cleanall task-machine-base task-base n450-audio
poky-image-sato-live
The output didn't make any reference to "task-machine-base".
$ bitbake poky-image-sato-live
mount and check the fs.... huh... it's there. Interesting...
I'm going to try a clean build now and ensure this works as intended,
and not just some hinky side-effect of the POKY_EXTRA_INSTALL I just
barely commented out of local.conf. Thanks for the tip Gary!
This doesn't adress the observations regarding kernel-modules and
eee-acpi-scripts though.
--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: MACHINE_EXTRA_RRECOMMENDS not working?
[not found] ` <83D5A5C2-F470-425F-84BE-F726CD652759@beagleboard.org>
@ 2011-03-12 7:45 ` Darren Hart
0 siblings, 0 replies; 4+ messages in thread
From: Darren Hart @ 2011-03-12 7:45 UTC (permalink / raw)
To: Koen Kooi; +Cc: poky@yoctoproject.org
On 03/11/2011 11:00 PM, Koen Kooi wrote:
>
>
> Op 12 mrt. 2011 om 05:31 heeft Darren Hart<dvhart@linux.intel.com> het volgende geschreven:
>
>> I'm working to get a certain package installed for a specific machine.
>> In particular, I wrote a simple init.d script called n450-audio which
>> sets the mixer for the n450 dev board to unmute the FRONT channel and
>> set the volume to 70% or so - as it is muted if left untouched.
>
> Wouldn't alsa-state be a better place for that?
It would be, yes. Turns out we don't have alsa-state in poky yet, and
adding it now would be a lot of last minute churn - so opted to fix this
particular recipe now (n450-audio already existed in some form) and look
into a more appropriate general purpose solution as a follow-up.
I wasn't aware of the alsa-state recipe in OE, had a look, and it looks
very similar to what I had in mind. Thanks for the pointer.
Thanks,
Darren
>
> regards,
>
> koen
>
>
>
>
>
>> For now,
>> I just want to make this board work, so I want to make this package get
>> installed if it's dependencies are met (if amixer is installed).
>>
>> As I understand it, the best way to do this is with something like the
>> following in the machine/n450.conf file:
>>
>> MACHINE_EXTRA_RRECOMMENDS += " n450-audio "
>>
>> And that recipe in turn defines:
>>
>> RDEPENDS = "alsa-utils-amixer"
>>
>> I then:
>>
>> $ bitbake -c cleanall task-base poky-image-sato-live n450-audio
>>
>> followed by:
>>
>> $ bitbake poky-image-sato-live
>>
>> The n450-audio recipe is built, but it does not appear in the generated
>> image (nor in the ext3 image).
>>
>> I checked the dependency chain and task-base does depend on n450-audio:
>>
>> $ bitbake -g -u depexp poky-image-sato-live
>>
>>
>> I then tried using the following variables in place of
>> MACHINE_EXTRA_RRECOMMENDS with the same result:
>>
>> MACHINE_EXTRA_RDEPENDS
>> MACHINE_ESSENTIAL_RRECOMMENDS
>> MACHINE_ESSENTIAL_RDEPENDS
>>
>> Finally, I added the following to my local.conf and the image built as
>> expected:
>>
>> POKY_EXTRA_INSTALL = " n450-audio "
>>
>> Am I completely off in the weeds here? If this isn't what these
>> directives are for - what are they for?
>>
>> I took a look at what they are used for elsewhere and found:
>>
>> $ cat ~/.bashrc | grep bb
>> alias bb='bitbake'
>> alias bbdeps='bitbake -g -u depexp'
>> dvhart@rage:poky.git$ git grep MACHINE_EXTRA_RRECOMMENDS
>> documentation/poky-ref-manual/ref-variables.xml:<glossentry id='var-MACHINE_EXTRA_RRECOMMENDS'><glossterm>MACHINE_
>> documentation/poky-ref-manual/ref-varlocality.xml:<para><glossterm linkend='var-MACHINE_EXTRA_RRECOMMENDS'>
>> meta/conf/bitbake.conf:MACHINE_EXTRA_RRECOMMENDS ?= ""
>> meta/conf/machine/atom-pc.conf:MACHINE_EXTRA_RRECOMMENDS = "kernel-modules eee-acpi-scripts"
>> meta/conf/machine/beagleboard.conf:MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
>> meta/conf/machine/qemumips.conf:MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
>> meta/conf/machine/routerstationpro.conf:MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
>> meta/recipes-core/tasks/task-base.bb:RRECOMMENDS_task-machine-base = "${MACHINE_EXTRA_RRECOMMENDS}"
>>
>> Only two other recipes are referenced with these variables:
>> kernel-modules and eee-acpi-scripts. I had an atom-pc build so I mounted
>> the rootfs and dug around - not a trace of the eee-acpi-scripts to found
>> anywhere. I checked for modules under
>> /lib/modules/2.6.34.7-yocto-standard/ and found several *.*map files,
>> but nothing else (certainly no *.ko files). So this mechanism certainly
>> doesn't do what I thought it did.
>>
>> Is it supposed to? If not, what does it do. It does cause the package
>> listed to be built, perhaps that is it's only purpose? The user can
>> install the package manually if they want it?
>>
>> And, more to the point, if this isn't the right mechanism to cause a
>> package to be added (if deps are met) to any image for a specific
>> machine, what is?
>>
>> If you want to see the branch in question, it's here:
>> http://git.pokylinux.org/cgit/cgit.cgi/meta-intel/log/?h=dvhart/n450-audio
>>
>> (Yes, the init script is terrible - working on that.)
>>
>> Thanks,
>>
>> --
>> Darren Hart
>> Intel Open Source Technology Center
>> Yocto Project - Linux Kernel
>> _______________________________________________
>> poky mailing list
>> poky@yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/poky
--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2011-03-12 7:45 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-12 4:31 MACHINE_EXTRA_RRECOMMENDS not working? Darren Hart
2011-03-12 4:40 ` Gary Thomas
2011-03-12 5:06 ` Darren Hart
[not found] ` <83D5A5C2-F470-425F-84BE-F726CD652759@beagleboard.org>
2011-03-12 7:45 ` Darren Hart
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.