[OE-core] what is meaning of "SRC_URI_append_whatever +=" ??

Chris Larson clarson at kergoth.com
Wed Mar 21 14:03:26 UTC 2012


On Wed, Mar 21, 2012 at 3:51 AM, Graeme Gregory <gg at slimlogic.co.uk> wrote:
> On 21/03/2012 10:46, Koen Kooi wrote:
>> Op 21 mrt. 2012, om 11:28 heeft Robert P. J. Day het volgende geschreven:
>>
>>> On Wed, 21 Mar 2012, Robert P. J. Day wrote:
>>>
>>>>  still perusing the very basics of oe-core and grepping madly, came
>>>> across the following oddity:
>>>>
>>>> $ grep -r SRC_URI_append *
>>>> ... snip ...
>>>> bitbake/doc/manual/usermanual.xml:SRC_URI_append_1.0.7+ = "file://some_patch_which_the_new_versions_need.patch;patch=1"</screen></para>
>>>> meta/recipes-support/gmp/gmp_5.0.4.bb:SRC_URI_append += "file://use-includedir.patch \
>>>> meta/recipes-support/libcroco/libcroco_0.6.3.bb:SRC_URI_append = " file://croco.patch;apply=yes "
>>>> ... snip ...
>>>>
>>>>  AIUI, there are two (common) variations for extending SRC_URI.  the
>>>> straightforward unconditional way:
>>>>
>>>>  SRC_URI += ... blah blah ...
>>>>
>>>> or if you need to make it conditional, then there's
>>>>
>>>>  SRC_URI_append_thingy = "whatever"
>>>>
>>>> so what's with the latter two entries above?
>>>>
>>>> meta/recipes-support/gmp/gmp_5.0.4.bb:SRC_URI_append += "file://use-includedir.patch \
>>>> meta/recipes-support/libcroco/libcroco_0.6.3.bb:SRC_URI_append = " file://croco.patch;apply=yes "
>>>>
>>>>  is there some subtlety i'm missing here?  why would one ever use
>>>> either of:
>>>>
>>>>  SRC_URI_append += "..."               (looks redundant)
>>>>  SRC_URI_append = "..."                (why not just SRC_URI +=?)
>>>>
>>>> can i just assume those are typoes?
>>>  following up on my own post, i decided to scan the entire oe-core
>>> tree:
>>>
>>> $ grep -r "_append +=" *
>>> meta/recipes-support/gmp/gmp_5.0.4.bb:SRC_URI_append += "file://use-includedir.patch \
>>> meta/recipes-core/eglibc/eglibc-package.inc:FILES_${PN}-dev_append += "${bindir}/rpcgen ${libdir}/*_nonshared.a \
>>> meta/recipes-core/eglibc/eglibc-package.inc:FILES_${PN}-staticdev_append += "${libdir}/*.a ${base_libdir}/*.a"
>>> meta/recipes-graphics/xorg-lib/libxp_1.0.1.bb:CFLAGS_append += " -I ${S}/include/X11/XprintUtil -I ${S}/include/X11/extensions"
>>> $
>>>
>>>  and i thought i'd look for another pattern as well:
>>>
>>> $ grep -r "_append_.*+=" *
>>> meta/recipes-graphics/tslib/tslib_1.0.bb:SRC_URI_append_qemumips += " file://32bitBE-support.patch"
>>> meta/recipes-graphics/tslib/tslib_1.0.bb:SRC_URI_append_qemuppc += " file://32bitBE-support.patch"
>>> meta/recipes-sato/leafpad/leafpad_0.8.18.1.bb:SRC_URI_append_poky += " file://owl-menu.patch;apply=yes "
>>> $
>>>
>>>  of course, if all of the above is perfectly valid, i'm going to be
>>> embarrassed.
>>
>> AFAICT '_append +=' is completely bogus.
>>
>
> I beleive its valid to do
>
> BLAH_append = "spanner"
> BLAH_append += "toolbox"
>
> then final result is BLAH_append variable is "spanner toolbox" then the
> overrides happen.


No, sorry, it's still bogus. _append isn't part of the variable name,
it's an operation. _append is *always* cumulative, so += is redundant,
only being used to add the " " separator which you could add yourself
just as easily.
-- 
Christopher Larson




More information about the Openembedded-core mailing list