mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 12:59:02 +02:00
devicetree: minor improvements
- Do not use the ${} bitbake syntax for shell internal variables - Fix shellcheck SC2045 warning: Iterating over ls output is fragile. Use globs. - Improve error handling for dtc. Print the output, not only the exit value. (From OE-Core rev: f33ee0cfb3c664c4857c18271dd55981bc369cc1) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
5b006dbc3d
commit
437043d9f3
|
@ -109,7 +109,11 @@ def devicetree_compile(dtspath, includes, d):
|
|||
ppargs.append("-I{0}".format(i))
|
||||
ppargs += ["-o", "{0}.pp".format(dts), dtspath]
|
||||
bb.note("Running {0}".format(" ".join(ppargs)))
|
||||
subprocess.run(ppargs, check = True)
|
||||
try:
|
||||
subprocess.run(ppargs, check=True, capture_output=True)
|
||||
except subprocess.CalledProcessError as e:
|
||||
bb.fatal(f"Command '{' '.join(ppargs)}' failed with return code {e.returncode}\nstdout: {e.stdout.decode()}\nstderr: {e.stderr.decode()}\ndtspath: {os.path.abspath(dtspath)}")
|
||||
|
||||
|
||||
# determine if the file is an overlay or not (using the preprocessed file)
|
||||
isoverlay = devicetree_source_is_overlay("{0}.pp".format(dts))
|
||||
|
@ -125,7 +129,11 @@ def devicetree_compile(dtspath, includes, d):
|
|||
dtcargs += ["-o", "{0}.{1}".format(dtname, "dtbo" if isoverlay else "dtb")]
|
||||
dtcargs += ["-I", "dts", "-O", "dtb", "{0}.pp".format(dts)]
|
||||
bb.note("Running {0}".format(" ".join(dtcargs)))
|
||||
subprocess.run(dtcargs, check = True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
||||
try:
|
||||
subprocess.run(dtcargs, check=True, capture_output=True)
|
||||
except subprocess.CalledProcessError as e:
|
||||
bb.fatal(f"Command '{' '.join(dtcargs)}' failed with return code {e.returncode}\nstdout: {e.stdout.decode()}\nstderr: {e.stderr.decode()}\ndtname: {dtname}")
|
||||
|
||||
|
||||
python devicetree_do_compile() {
|
||||
import re
|
||||
|
@ -144,14 +152,16 @@ python devicetree_do_compile() {
|
|||
}
|
||||
|
||||
devicetree_do_install() {
|
||||
for DTB_FILE in `ls *.dtb *.dtbo`; do
|
||||
install -Dm 0644 ${B}/${DTB_FILE} ${D}/boot/devicetree/${DTB_FILE}
|
||||
for dtb_file in *.dtb *.dtbo; do
|
||||
[ -e "$dtb_file" ] || continue
|
||||
install -Dm 0644 "${B}/$dtb_file" "${D}/boot/devicetree/$dtb_file"
|
||||
done
|
||||
}
|
||||
|
||||
devicetree_do_deploy() {
|
||||
for DTB_FILE in `ls *.dtb *.dtbo`; do
|
||||
install -Dm 0644 ${B}/${DTB_FILE} ${DEPLOYDIR}/devicetree/${DTB_FILE}
|
||||
for dtb_file in *.dtb *.dtbo; do
|
||||
[ -e "$dtb_file" ] || continue
|
||||
install -Dm 0644 "${B}/$dtb_file" "${DEPLOYDIR}/devicetree/$dtb_file"
|
||||
done
|
||||
}
|
||||
addtask deploy before do_build after do_install
|
||||
|
|
Loading…
Reference in New Issue
Block a user