From: Raphael Ning <raphn...@amazon.com> Fix a bug in create_patch() where cp, strip, etc. will fail if the new object file introduced by the patch is located in a new subdirectory:
DEBUG: cp: cannot create regular file `output/xen/common/lu/lu.o': No such file or directory DEBUG: strip: 'output/xen/common/lu/lu.o': No such file In this example, xen/common/lu/ does not exist in the original (unpatched) Xen source tree. It needs to be created in output/ as well. Signed-off-by: Raphael Ning <raphn...@amazon.com> Reviewed-by: Bjoern Doebel <doe...@amazon.de> Reviewed-by: Martin Pohlack <mpohl...@amazon.de> --- livepatch-build | 1 + 1 file changed, 1 insertion(+) diff --git a/livepatch-build b/livepatch-build index f7d6471..444daa9 100755 --- a/livepatch-build +++ b/livepatch-build @@ -232,6 +232,7 @@ function create_patch() NEW_FILES=$(comm -23 <(cd patched/xen && find . -type f -name '*.o' | sort) <(cd original/xen && find . -type f -name '*.o' | sort)) for i in $NEW_FILES; do + mkdir -p "output/$(dirname "$i")" cp "patched/$i" "output/$i" [[ $STRIP -eq 1 ]] && strip --strip-unneeded "output/$i" CHANGED=1 -- 2.38.1 Amazon Development Center Germany GmbH Krausenstr. 38 10117 Berlin Geschaeftsfuehrung: Christian Schlaeger, Jonathan Weiss Eingetragen am Amtsgericht Charlottenburg unter HRB 149173 B Sitz: Berlin Ust-ID: DE 289 237 879