<div dir="ltr">One way to keep it allarch would be to package<div>${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.AP6212.txt<br>${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.MUR1DX.txt<br></div><div>in 2 separate packages and handle</div><div>${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.txt<br></div><div>symlink with update-alternatives</div><div><br></div><div>most MACHINEs won't install either of these packages and those which need it will pull the right one (e.g. through MACHINE_EXTRA_RRECOMMENDS).</div><div><br></div><div>In worst case someone will try to install both packages and based on u-a priority one of them will win (use higher priority for the more common version).</div><div><br></div><div>Cheers,</div></div><br><div class="gmail_quote"><div dir="ltr">On Fri, Aug 24, 2018 at 4:53 AM Andre McCurdy <<a href="mailto:armccurdy@gmail.com">armccurdy@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Thu, Aug 23, 2018 at 1:15 AM, Ryan Harkin <<a href="mailto:ryan.harkin@linaro.org" target="_blank">ryan.harkin@linaro.org</a>> wrote:<br>
><br>
> So now the ln issue is resolved, I'm not convinced my MACHINEOVERRIDES is<br>
> the correct approach. Does anyone have any feedback on how I can improve<br>
> that?<br>
<br>
If you want to make a configurable symlink then perhaps the more usual<br>
approach would be to just use a variable in the linux-firmware recipe<br>
to weakly define a default target for the symlink. Machine config<br>
files could then either do nothing (ie use the default) or provide<br>
their own value. For example, in the linux-firmware recipe:<br>
<br>
BCM43430_NVRAM_SYMLINK ?= "brcmfmac43430-sdio.AP6212.txt"<br>
<br>
FILES_${PN}-bcm43430-nvram = " \<br>
${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.txt \<br>
${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.AP6212.txt \<br>
${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.MUR1DX.txt \<br>
"<br>
<br>
do_install() {<br>
...<br>
ln -sf ${BCM43430_NVRAM_SYMLINK}<br>
${D}${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.txt<br>
}<br>
<br>
And then in the machine config files of machines which need the MUR1DX<br>
firmware instead of the default, add:<br>
<br>
BCM43430_NVRAM_SYMLINK = "brcmfmac43430-sdio.MUR1DX.txt"<br>
<br>
However... note that currently the linux-firmware recipe is<br>
architecture independent (ie it won't be rebuilt if the target is<br>
changed). Adding a machine specific symlink is going to cause problems<br>
with that, so the above is still not a full solution.<br>
</blockquote></div>