From 6d4a5accf1c04c81f38d27345c8a400a44f22b6c Mon Sep 17 00:00:00 2001 From: Ian Campbell Date: Mon, 15 Jun 2015 11:42:18 +0100 Subject: [PATCH] Collect xen.efi into xendist and install in appropriate place Previously these binaries would have been included in the regular ("tools") dist file, whereas they really belong in the xen one. Install into /boot/efi/EFI/osstest ready for use when chainloading. Note that /boot/efi is (or should be) a VFAT filesystem. So a bit of care is needed WRT symlinks etc. This is also what prevents us from just including /boot/efi/EFI/osstest/xen.efi in the dist tarball since untarring over a VFAT needs a little care WRT the case of directories etc. Signed-off-by: Ian Campbell Acked-by: Ian Jackson --- ts-xen-build | 7 +++++++ ts-xen-install | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/ts-xen-build b/ts-xen-build index 353a82c..cebfaf3 100755 --- a/ts-xen-build +++ b/ts-xen-build @@ -172,6 +172,13 @@ sub divide () { mv \$mvfiles xeninstall/boot/. fi fi + if test -d install/usr/lib64/efi/; then + if test -f install/usr/lib64/efi/xen.efi; then + mkdir -p xeninstall/usr/lib64/efi + mvfiles=`find install/usr/lib64/efi -name 'xen[a-z]*' -prune -o -name 'xen*' -print` + mv \$mvfiles xeninstall/usr/lib64/efi/. + fi + fi END } diff --git a/ts-xen-install b/ts-xen-install index 69478ce..0f53382 100755 --- a/ts-xen-install +++ b/ts-xen-install @@ -77,6 +77,13 @@ sub extract () { target_extract_jobdistpath($ho, $part, "path_${part}dist", $r{"${part}buildjob"}, \%distpath); } + if (target_file_exists($ho, "/usr/lib64/efi/xen.efi")) { + target_cmd_root($ho,<