[OE-core] [PATCH 17/30] linux-firware: use ${base_libdir} instead of /lib for packaging

Darren Hart dvhart at linux.intel.com
Mon Aug 6 18:10:33 UTC 2012


On 08/05/2012 08:54 AM, Javier Martinez Canillas wrote:
> It is considered good practice to use the build system provided
> variables instead of directly specify hardcoded paths.

The firmware location is explicitly set because this is where the Linux
kernel requires it to be. This patch will break firmware loading.

--
Darren

> Signed-off-by: Javier Martinez Canillas <javier at dowhile0.org>
> ---
>  .../linux-firmware/linux-firmware_git.bb           |   34 ++++++++++----------
>  1 files changed, 17 insertions(+), 17 deletions(-)
> 
> diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb
> index a7e4ed6..c5ab173 100644
> --- a/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb
> +++ b/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb
> @@ -35,50 +35,50 @@ do_compile() {
>  }
>  
>  do_install() {
> -	install -d  ${D}/lib/firmware/
> -	cp -r * ${D}/lib/firmware/
> +	install -d  ${D}${base_libdir}/firmware/
> +	cp -r * ${D}${base_libdir}/firmware/
>  
>  	# Libertas sd8686
> -	ln -sf libertas/sd8686_v9.bin ${D}/lib/firmware/sd8686.bin
> -	ln -sf libertas/sd8686_v9_helper.bin ${D}/lib/firmware/sd8686_helper.bin
> +	ln -sf libertas/sd8686_v9.bin ${D}${base_libdir}/firmware/sd8686.bin
> +	ln -sf libertas/sd8686_v9_helper.bin ${D}${base_libdir}/firmware/sd8686_helper.bin
>  
>  	# Realtek rtl8192* 
> -	install -m 0644 LICENCE.rtlwifi_firmware.txt ${D}/lib/firmware/rtlwifi/LICENCE.rtlwifi_firmware.txt
> +	install -m 0644 LICENCE.rtlwifi_firmware.txt ${D}${base_libdir}/firmware/rtlwifi/LICENCE.rtlwifi_firmware.txt
>  
>  	# fixup wl12xx location, after 2.6.37 the kernel searches a different location for it
> -	( cd ${D}/lib/firmware ; ln -sf ti-connectivity/* . )
> +	( cd ${D}${base_libdir}/firmware ; ln -sf ti-connectivity/* . )
>  }
>  
>  PACKAGES =+ "${PN}-sd8686 ${PN}-rtl8192cu linux-firmware-rtl8192ce linux-firmware-rtl8192su ${PN}-wl12xx"
>  
>  LICENSE_${PN}-sd8686 = "Firmware:LICENSE.libertas"
>  FILES_${PN}-sd8686 = " \
> -  /lib/firmware/libertas/sd8686_v9* \
> -  /lib/firmware/sd8686* \
> -  /lib/firmware/LICENCE.libertas \
> +  ${base_libdir}/firmware/libertas/sd8686_v9* \
> +  ${base_libdir}/firmware/sd8686* \
> +  ${base_libdir}/firmware/LICENCE.libertas \
>  "
>  
>  LICENSE_${PN}-rtl8192cu = "Firmware:LICENCE.rtlwifi_firmware"
>  FILES_${PN}-rtl8192cu = " \
> -  /lib/firmware/rtlwifi/rtl8192cufw.bin \
> -  /lib/firmware/rtlwifi/LICENCE.rtlwifi_firmware.txt \
> +  ${base_libdir}/firmware/rtlwifi/rtl8192cufw.bin \
> +  ${base_libdir}/firmware/rtlwifi/LICENCE.rtlwifi_firmware.txt \
>  "
>  
>  LICENSE_${PN}-rtl8192ce = "Firmware:LICENCE.rtlwifi_firmware"
>  FILES_${PN}-rtl8192ce = " \
> -  /lib/firmware/rtlwifi/rtl8192cfw.bin \
> +  ${base_libdir}/firmware/rtlwifi/rtl8192cfw.bin \
>  "
>  
>  LICENSE_${PN}-rtl8192su = "Firmware:LICENCE.rtlwifi_firmware"
>  FILES_${PN}-rtl8192su = " \
> -  /lib/firmware/rtlwifi/rtl8712u.bin \
> +  ${base_libdir}/firmware/rtlwifi/rtl8712u.bin \
>  "
>  
>  FILES_${PN}-wl12xx = " \
> -  /lib/firmware/wl12* \
> -  /lib/firmware/TI* \
> -  /lib/firmware/ti-connectivity \
> +  ${base_libdir}/firmware/wl12* \
> +  ${base_libdir}/firmware/TI* \
> +  ${base_libdir}/firmware/ti-connectivity \
>  "
>  
> -FILES_${PN} += "/lib/firmware/*"
> +FILES_${PN} += "${base_libdir}/firmware/*"
>  
> 

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Technical Lead - Linux Kernel




More information about the Openembedded-core mailing list