diff options
author | Matthew Wilcox <mawilcox@microsoft.com> | 2017-11-14 09:10:11 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2017-12-16 10:23:31 -0500 |
commit | 5f0e3fe6b1504d4e6530294ec87c473aa6d2d02f (patch) | |
tree | da78c5204fb7929b0d585a4c249353d9149f95cf | |
parent | c739f930be1dd5fd949030e3475a884fe06dae9b (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.sh | 28 |
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 | ||
83 | genisoimage() { | 83 | geniso() { |
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; |
126 | esac | 130 | esac |