[yocto] explanation for ALTERNATIVE_LINK_NAME in ref manual seems incomplete

Chris Larson clarson at kergoth.com
Sun Nov 3 18:58:21 PST 2013


On Sat, Nov 2, 2013 at 3:13 AM, Robert P. J. Day <rpjday at crashcourse.ca>wrote:

>  on my quest to spiff up the ref manual variables glossary, a question
> about ALTERNATIVE_LINK_NAME, explained here:
>
>
> http://www.yoctoproject.org/docs/latest/ref-manual/ref-manual.html#var-ALTERNATIVE_LINK_NAME
>
>  at first glance, that explanation *suggests* that the purpose of that
> variable is to support an alternative name to an existing command, but
> it doesn't make it clear that a *very* common usage is to simply
> create a link with precisely the same name elsewhere. you see a *lot*
> of this throughout the recipes (like this snippet from util-linux):
>
> ALTERNATIVE_LINK_NAME[dmesg] = "${base_bindir}/dmesg"
> ALTERNATIVE_LINK_NAME[kill] = "${base_bindir}/kill"
> ALTERNATIVE_LINK_NAME[more] = "${base_bindir}/more"
> ALTERNATIVE_LINK_NAME[mkswap] = "${base_sbindir}/mkswap"
> ALTERNATIVE_LINK_NAME[blockdev] = "${base_sbindir}/blockdev"
>
> which appears to simply create symlinks from /bin to programs in
> /usr/bin, yes? (that's what it's doing, right?) i suspect it would be
> useful to mention that application in the explanation, unless i'm
> totally misunderstanding what i'm reading.
>

I’m pretty sure that’s not the case. Afaik it creates a link from
ALTERNATIVE_TARGET[name] to ALTERNATIVE_LINK_NAME[name]. If the target
isn’t defined, iirc it defaults to adding a .${BPN} suffix to the link
name. See lines 41 through 45 of update-alternatives.bbclass:

    # NOTE: If ALTERNATIVE_TARGET is not defined, it will inherit the value
    # from ALTERNATIVE_LINK_NAME.
    #
    # NOTE: If the ALTERNATIVE_LINK_NAME and ALTERNATIVE_TARGET are the
same,
    # ALTERNATIVE_TARGET will have '.{BPN}' appended to it.
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20131103/ceb129c7/attachment.html>


More information about the yocto mailing list