mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-05-07 04:58:57 +00:00
arm-bsp/n1sdp-board-firmware: rewrite recipe
Any recipe that needs to use RM_WORK_EXCLUDE is either being very clever or is breaking expectations. This recipe is doing several things in non-idiomatic ways that breaks other tools, for example the source doesn't exist in do_unpack. Rename from board-firmware-n1sdp to n1sdp-board-firmware to match the repository name. As this recipe simply ships some precompiled binary, set INHIBIT_DEFAULT_DEPS to avoid depending on the toolchain to reduce how often it needs to be rebuilt. Unpack normally and promptly delete the large SOFTWARE/ directory that we don't care about, instead of unpacking in do_install. Ensure deploy is scheduled appropriately. Remove LICENSE_FLAGS, this is for licenses which need to be opted-in. Setting LICENSE_FLAGS and then enabling it by default makes no sense. Change-Id: I1fe906634977d323086de6f6c67a9c45aeb7585e Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit is contained in:
@@ -39,6 +39,4 @@ EFI_PROVIDER ?= "grub-efi"
|
|||||||
MACHINE_FEATURES += "efi"
|
MACHINE_FEATURES += "efi"
|
||||||
|
|
||||||
# SD-Card firmware
|
# SD-Card firmware
|
||||||
# Board firmware prebuilts are shared under custom license
|
|
||||||
LICENSE_FLAGS_WHITELIST += "stm-sla0044"
|
|
||||||
EXTRA_IMAGEDEPENDS += "sdcard-image-n1sdp"
|
EXTRA_IMAGEDEPENDS += "sdcard-image-n1sdp"
|
||||||
|
|||||||
@@ -1,53 +0,0 @@
|
|||||||
DESCRIPTION = "Board Firmware binaries for N1SDP"
|
|
||||||
|
|
||||||
# Board-firmware-n1sdp custom license is whitelisted in n1sdp.conf file.
|
|
||||||
# Uncomment, or copy this line to your local.conf to build board firmware,
|
|
||||||
# if you are using custom n1sdp.conf file.
|
|
||||||
# Please make sure to check the applicable license beforehand!
|
|
||||||
#LICENSE_FLAGS_WHITELIST = "stm-sla0044"
|
|
||||||
|
|
||||||
LICENSE = "STM-SLA0044-Rev5"
|
|
||||||
LICENSE_FLAGS = "stm-sla0044"
|
|
||||||
|
|
||||||
LIC_FILES_CHKSUM = "file://${S}/LICENSES/STM.TXT;md5=4b8dab81d0bfc0a5f63c9a983402705b"
|
|
||||||
|
|
||||||
SECTION = "firmware"
|
|
||||||
|
|
||||||
inherit deploy
|
|
||||||
|
|
||||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
|
||||||
|
|
||||||
COMPATIBLE_MACHINE = "n1sdp"
|
|
||||||
RM_WORK_EXCLUDE += "${PN}"
|
|
||||||
|
|
||||||
PV = "2020.07.27"
|
|
||||||
TAG = "N1SDP-${PV}"
|
|
||||||
FIRMWARE_TARBALL = "n1sdp-board-firmware-${TAG}"
|
|
||||||
UNPACK_DIR = "n1sdp-board-firmware_source"
|
|
||||||
S = "${WORKDIR}/${UNPACK_DIR}"
|
|
||||||
|
|
||||||
SRC_URI = "https://git.linaro.org/landing-teams/working/arm/n1sdp-board-firmware.git/snapshot/${FIRMWARE_TARBALL}.tar.gz;unpack=0"
|
|
||||||
SRC_URI[md5sum] = "8ba3807ff8f222201154861f11524b14"
|
|
||||||
SRC_URI[sha256sum] = "57feba404026f2d6d49c167d63e0e84653ad8b808b13e2244b81fea9e0d58d66"
|
|
||||||
|
|
||||||
do_configure[noexec] = "1"
|
|
||||||
do_compile[noexec] = "1"
|
|
||||||
|
|
||||||
do_install() {
|
|
||||||
cd ${WORKDIR}
|
|
||||||
tar -xvaf ${WORKDIR}/${FIRMWARE_TARBALL}.tar.gz --exclude=${FIRMWARE_TARBALL}/SOFTWARE/*
|
|
||||||
mv -v ${WORKDIR}/${FIRMWARE_TARBALL}/* ${S}
|
|
||||||
|
|
||||||
cp -R --no-dereference --preserve=mode,links -v ${S} ${D}
|
|
||||||
}
|
|
||||||
do_install[dirs] += "${S}"
|
|
||||||
do_install[cleandirs] += "${S}"
|
|
||||||
|
|
||||||
FILES_${PN} = "/${UNPACK_DIR}/*"
|
|
||||||
SYSROOT_DIRS += "/${UNPACK_DIR}"
|
|
||||||
addtask install after do_unpack before do_populate_lic
|
|
||||||
|
|
||||||
do_deploy() {
|
|
||||||
cp -av ${S} ${DEPLOYDIR}
|
|
||||||
}
|
|
||||||
addtask deploy after do_install
|
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
SUMMARY = "Board Firmware binaries for N1SDP"
|
||||||
|
SECTION = "firmware"
|
||||||
|
|
||||||
|
LICENSE = "STM-SLA0044-Rev5"
|
||||||
|
LIC_FILES_CHKSUM = "file://LICENSES/STM.TXT;md5=4b8dab81d0bfc0a5f63c9a983402705b"
|
||||||
|
|
||||||
|
inherit deploy
|
||||||
|
|
||||||
|
INHIBIT_DEFAULT_DEPS = "1"
|
||||||
|
|
||||||
|
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||||
|
COMPATIBLE_MACHINE = "n1sdp"
|
||||||
|
|
||||||
|
SRC_URI = "https://git.linaro.org/landing-teams/working/arm/n1sdp-board-firmware.git/snapshot/${BPN}-N1SDP-${PV}.tar.gz"
|
||||||
|
SRC_URI[sha256sum] = "57feba404026f2d6d49c167d63e0e84653ad8b808b13e2244b81fea9e0d58d66"
|
||||||
|
|
||||||
|
S = "${WORKDIR}/${BPN}-N1SDP-${PV}"
|
||||||
|
|
||||||
|
INSTALL_DIR = "/n1sdp-board-firmware_source"
|
||||||
|
|
||||||
|
do_install() {
|
||||||
|
rm -rf ${S}/SOFTWARE
|
||||||
|
install -d ${D}${INSTALL_DIR}
|
||||||
|
cp -Rp --no-preserve=ownership ${S}/* ${D}${INSTALL_DIR}
|
||||||
|
}
|
||||||
|
|
||||||
|
FILES_${PN} = "${INSTALL_DIR}"
|
||||||
|
SYSROOT_DIRS += "${INSTALL_DIR}"
|
||||||
|
|
||||||
|
do_deploy() {
|
||||||
|
install -d ${DEPLOYDIR}${INSTALL_DIR}
|
||||||
|
cp -Rp --no-preserve=ownership ${S}/* ${DEPLOYDIR}${INSTALL_DIR}
|
||||||
|
}
|
||||||
|
addtask deploy after do_install before do_build
|
||||||
@@ -4,7 +4,7 @@ inherit deploy nopackages
|
|||||||
|
|
||||||
DEPENDS = "virtual/uefi-firmware \
|
DEPENDS = "virtual/uefi-firmware \
|
||||||
virtual/control-processor-firmware \
|
virtual/control-processor-firmware \
|
||||||
board-firmware-n1sdp"
|
n1sdp-board-firmware"
|
||||||
|
|
||||||
LICENSE = "MIT"
|
LICENSE = "MIT"
|
||||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||||
|
|||||||
Reference in New Issue
Block a user