aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wilcox <mawilcox@microsoft.com>2017-11-14 09:10:11 -0500
committerIngo Molnar <mingo@kernel.org>2017-12-16 10:23:31 -0500
commit5f0e3fe6b1504d4e6530294ec87c473aa6d2d02f (patch)
treeda78c5204fb7929b0d585a4c249353d9149f95cf
parentc739f930be1dd5fd949030e3475a884fe06dae9b (diff)
x86/build: Make isoimage work on Debian
Debian does not ship a 'mkisofs' symlink to genisoimage. All modern distros ship genisoimage, so just use that directly. That requires renaming the 'genisoimage' function. Also neaten up the 'for' loop while I'm in here. Signed-off-by: Matthew Wilcox <mawilcox@microsoft.com> Cc: Changbin Du <changbin.du@intel.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: linux-kernel@vger.kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--arch/x86/boot/genimage.sh28
1 files changed, 16 insertions, 12 deletions
diff --git a/arch/x86/boot/genimage.sh b/arch/x86/boot/genimage.sh
index c9e8499fbfe7..6a10d52a4145 100644
--- a/arch/x86/boot/genimage.sh
+++ b/arch/x86/boot/genimage.sh
@@ -80,39 +80,43 @@ genfdimage288() {
80 mcopy $FBZIMAGE w:linux 80 mcopy $FBZIMAGE w:linux
81} 81}
82 82
83genisoimage() { 83geniso() {
84 tmp_dir=`dirname $FIMAGE`/isoimage 84 tmp_dir=`dirname $FIMAGE`/isoimage
85 rm -rf $tmp_dir 85 rm -rf $tmp_dir
86 mkdir $tmp_dir 86 mkdir $tmp_dir
87 for i in lib lib64 share end ; do 87 for i in lib lib64 share ; do
88 for j in syslinux ISOLINUX ; do 88 for j in syslinux ISOLINUX ; do
89 if [ -f /usr/$i/$j/isolinux.bin ] ; then 89 if [ -f /usr/$i/$j/isolinux.bin ] ; then
90 isolinux=/usr/$i/$j/isolinux.bin 90 isolinux=/usr/$i/$j/isolinux.bin
91 cp $isolinux $tmp_dir
92 fi 91 fi
93 done 92 done
94 for j in syslinux syslinux/modules/bios ; do 93 for j in syslinux syslinux/modules/bios ; do
95 if [ -f /usr/$i/$j/ldlinux.c32 ]; then 94 if [ -f /usr/$i/$j/ldlinux.c32 ]; then
96 ldlinux=/usr/$i/$j/ldlinux.c32 95 ldlinux=/usr/$i/$j/ldlinux.c32
97 cp $ldlinux $tmp_dir
98 fi 96 fi
99 done 97 done
100 if [ -n "$isolinux" -a -n "$ldlinux" ] ; then 98 if [ -n "$isolinux" -a -n "$ldlinux" ] ; then
101 break 99 break
102 fi 100 fi
103 if [ $i = end -a -z "$isolinux" ] ; then
104 echo 'Need an isolinux.bin file, please install syslinux/isolinux.'
105 exit 1
106 fi
107 done 101 done
102 if [ -z "$isolinux" ] ; then
103 echo 'Need an isolinux.bin file, please install syslinux/isolinux.'
104 exit 1
105 fi
106 if [ -z "$ldlinux" ] ; then
107 echo 'Need an ldlinux.c32 file, please install syslinux/isolinux.'
108 exit 1
109 fi
110 cp $isolinux $tmp_dir
111 cp $ldlinux $tmp_dir
108 cp $FBZIMAGE $tmp_dir/linux 112 cp $FBZIMAGE $tmp_dir/linux
109 echo "$KCMDLINE" > $tmp_dir/isolinux.cfg 113 echo "$KCMDLINE" > $tmp_dir/isolinux.cfg
110 if [ -f "$FDINITRD" ] ; then 114 if [ -f "$FDINITRD" ] ; then
111 cp "$FDINITRD" $tmp_dir/initrd.img 115 cp "$FDINITRD" $tmp_dir/initrd.img
112 fi 116 fi
113 mkisofs -J -r -input-charset=utf-8 -quiet -o $FIMAGE -b isolinux.bin \ 117 genisoimage -J -r -input-charset=utf-8 -quiet -o $FIMAGE \
114 -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table \ 118 -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 \
115 $tmp_dir 119 -boot-info-table $tmp_dir
116 isohybrid $FIMAGE 2>/dev/null || true 120 isohybrid $FIMAGE 2>/dev/null || true
117 rm -rf $tmp_dir 121 rm -rf $tmp_dir
118} 122}
@@ -121,6 +125,6 @@ case $1 in
121 bzdisk) genbzdisk;; 125 bzdisk) genbzdisk;;
122 fdimage144) genfdimage144;; 126 fdimage144) genfdimage144;;
123 fdimage288) genfdimage288;; 127 fdimage288) genfdimage288;;
124 isoimage) genisoimage;; 128 isoimage) geniso;;
125 *) echo 'Unknown image format'; exit 1; 129 *) echo 'Unknown image format'; exit 1;
126esac 130esac