[PATCH v2 2/4] x86, build: Add new paths for isolinux.bin and ldlinux.c32
From: changbin . du
Date: Sun Nov 05 2017 - 22:40:23 EST
From: Changbin Du <changbin.du@xxxxxxxxx>
Recently I failed to build isoimage target, because the path of isolinux.bin
changed to /usr/xxx/ISOLINUX/isolinux.bin, as well as ldlinux.c32 which
changed to /usr/xxx/syslinux/modules/bios/ldlinux.c32.
This patch improves the file search logic:
- Show a error message instead of silent fail.
- Add above new paths.
Signed-off-by: Changbin Du <changbin.du@xxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxxxxx>
---
v2: Improve description. (Ingo)
---
arch/x86/boot/genimage.sh | 23 ++++++++++++++++++-----
1 file changed, 18 insertions(+), 5 deletions(-)
diff --git a/arch/x86/boot/genimage.sh b/arch/x86/boot/genimage.sh
index 75a9de1..6c8100b 100644
--- a/arch/x86/boot/genimage.sh
+++ b/arch/x86/boot/genimage.sh
@@ -76,14 +76,27 @@ genisoimage() {
rm -rf $tmp_dir
mkdir $tmp_dir
for i in lib lib64 share end ; do
- if [ -f /usr/$i/syslinux/isolinux.bin ] ; then
- cp /usr/$i/syslinux/isolinux.bin $tmp_dir
- if [ -f /usr/$i/syslinux/ldlinux.c32 ]; then
- cp /usr/$i/syslinux/ldlinux.c32 $tmp_dir
+ for j in syslinux ISOLINUX ; do
+ if [ -f /usr/$i/$j/isolinux.bin ] ; then
+ isolinux=/usr/$i/$j/isolinux.bin
+ echo "Using $isolinux"
+ cp $isolinux $tmp_dir
fi
+ done
+ for j in syslinux syslinux/modules/bios ; do
+ if [ -f /usr/$i/$j/ldlinux.c32 ]; then
+ ldlinux=/usr/$i/$j/ldlinux.c32
+ echo "Using $ldlinux"
+ cp $ldlinux $tmp_dir
+ fi
+ done
+ if [ -n "$isolinux" -a -n "$ldlinux" ] ; then
break
fi
- if [ $i = end ] ; then exit 1 ; fi ;
+ if [ $i = end -a -z "$isolinux" ] ; then
+ echo 'Need an isolinux.bin file, please install syslinux/isolinux.'
+ exit 1
+ fi
done
cp $FBZIMAGE $tmp_dir/linux
echo "$KCMDLINE" > $tmp_dir/isolinux.cfg
--
2.7.4