Skip to contentSkip to conversation

rpi-mkimage: install to bindir instead of libexecdir

PATCH In review Jonathan Liu 2 participants 4 messages Mar 1, 2016 Broadcom BCM2711/BCM2835 Arm architecture

lore
Share & tools
lore
#0 lore raw

PATCH v3 1/3 rpi-mkimage: install to bindir instead of libexecdir

On fido and earlier branches, ${libexecdir} depends on ${BPN} so it is not a good choice as ${libexecdir} is different depending on the recipe name.

For example, rpi-mkimage would install mkknlimg to:
[...]/sysroots/x86_64-linux/usr/lib/rpi-mkimage
but linux-raspberrypi would look for mkknlimg in the path:
[...]/sysroots/x86_64-linux/usr/lib/linux-raspberrypi

To resolve this, we use ${bindir} instead as it doesn't depend on ${BPN} in fido and earlier branches as well as in the master branch.

---
 recipes-bsp/rpi-mkimage/rpi-mkimage_git.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
recipes-bsp/rpi-mkimage/rpi-mkimage_git.bb +2 -2
index 7dea43d..cce91d7 100644
@@ -15,8 +15,8 @@ SRC_URI = " \
 S = "${WORKDIR}/git"
 
 do_install () {
-    install -d ${D}${libexecdir}
-    install -t ${D}${libexecdir} mkimage/*
+    install -d ${D}${bindir}
+    install -t ${D}${bindir} mkimage/*
 }
 
 BBCLASSEXTEND = "native"
Signature · 1 line
2.7.1
#1 lore raw

PATCH v3 2/3 linux-raspberrypi: update path to mkknlimg

---
 recipes-kernel/linux/linux-raspberrypi.inc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
recipes-kernel/linux/linux-raspberrypi.inc +2 -2
index 4f59c97..24e7fe2 100644
@@ -64,7 +64,7 @@ do_rpiboot_mkimage() {
     if test "x${KERNEL_IMAGETYPE}" != "xuImage" ; then
         if test -n "${KERNEL_DEVICETREE}"; then
             # Add RPi bootloader trailer to kernel image to enable DeviceTree support
-            ${STAGING_LIBEXECDIR_NATIVE}/mkknlimg --dtok ${KERNEL_OUTPUT} ${KERNEL_OUTPUT}
+            ${STAGING_BINDIR_NATIVE}/mkknlimg --dtok ${KERNEL_OUTPUT} ${KERNEL_OUTPUT}
         fi
     fi
 }
@@ -74,7 +74,7 @@ do_bundle_initramfs_append() {
         if test "x${KERNEL_IMAGETYPE}" != "xuImage" ; then
             if test -n "${KERNEL_DEVICETREE}"; then
                 # Add RPi bootloader trailer to kernel image to enable DeviceTree support
-                ${STAGING_LIBEXECDIR_NATIVE}/mkknlimg --dtok ${KERNEL_OUTPUT}.initramfs ${KERNEL_OUTPUT}.initramfs
+                ${STAGING_BINDIR_NATIVE}/mkknlimg --dtok ${KERNEL_OUTPUT}.initramfs ${KERNEL_OUTPUT}.initramfs
             fi
         fi
     fi
Signature · 1 line
2.7.1
#2 lore raw

PATCH v3 3/3 u-boot-rpi: update path to imagetool-uncompressed.py

In reply to Jonathan Liu
---
 recipes-bsp/u-boot/u-boot-rpi_git.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
recipes-bsp/u-boot/u-boot-rpi_git.bb +1 -1
index 8bffaa3..3e8d377 100644
@@ -24,6 +24,6 @@ COMPATIBLE_MACHINE = "raspberrypi"
 
 do_compile_append() {
     # Create kernel.img from uboot.bin and name it u-boot.img
-    ${STAGING_LIBEXECDIR_NATIVE}/imagetool-uncompressed.py u-boot.bin
+    ${STAGING_BINDIR_NATIVE}/imagetool-uncompressed.py u-boot.bin
     mv kernel.img u-boot.img
 }
Signature · 1 line
2.7.1
#3 lore raw
In reply to Jonathan Liu
Quoted 22 lines · Jonathan Liu

On fido and earlier branches, ${libexecdir} depends on ${BPN} so it is not a good choice as ${libexecdir} is different depending on the recipe name.

For example, rpi-mkimage would install mkknlimg to:
[...]/sysroots/x86_64-linux/usr/lib/rpi-mkimage
but linux-raspberrypi would look for mkknlimg in the path:
[...]/sysroots/x86_64-linux/usr/lib/linux-raspberrypi

To resolve this, we use ${bindir} instead as it doesn't depend on ${BPN} in fido and earlier branches as well as in the master branch.

---
 recipes-bsp/rpi-mkimage/rpi-mkimage_git.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
recipes-bsp/rpi-mkimage/rpi-mkimage_git.bb +0 -0
index 7dea43d..cce91d7 100644

recipes-bsp/rpi-mkimage/rpi-mkimage_git.bb SRC_URI = " \ · line 22

Quoted 10 lines
recipes-bsp/rpi-mkimage/rpi-mkimage_git.bb +2 -2
@@ -15,8 +15,8 @@ SRC_URI = " \
 S = "${WORKDIR}/git"
 
 do_install () {
-    install -d ${D}${libexecdir}
-    install -t ${D}${libexecdir} mkimage/*
+    install -d ${D}${bindir}
+    install -t ${D}${bindir} mkimage/*
 }
 
 BBCLASSEXTEND = "native"

Tested on default build and merged to master (all 3 patches). Thanks.

--
Andrei Gherzan