2008-04-13 Robert Millan <rmh@aybabtu.com>
* gendistlist.sh (EXTRA_DISTFILES): Add `genpartmaplist.sh'. * genmk.rb (partmap): New variable. (CLEANFILES, PARTMAPFILES): Add #{partmap}. (#{partmap}): New target rule. * genpartmaplist.sh: New file. * Makefile.in (pkglib_DATA): Add partmap.lst. (partmap.lst): New target rule. * util/i386/pc/grub-mkrescue.in: Generate grub.cfg that loads needed modules (including all partition maps), instead of preloading them.
This commit is contained in:
parent
78b51059c3
commit
58cd3d85e0
5 changed files with 33 additions and 6 deletions
12
ChangeLog
12
ChangeLog
|
@ -1,3 +1,15 @@
|
||||||
|
2008-04-13 Robert Millan <rmh@aybabtu.com>
|
||||||
|
|
||||||
|
* gendistlist.sh (EXTRA_DISTFILES): Add `genpartmaplist.sh'.
|
||||||
|
* genmk.rb (partmap): New variable.
|
||||||
|
(CLEANFILES, PARTMAPFILES): Add #{partmap}.
|
||||||
|
(#{partmap}): New target rule.
|
||||||
|
* genpartmaplist.sh: New file.
|
||||||
|
* Makefile.in (pkglib_DATA): Add partmap.lst.
|
||||||
|
(partmap.lst): New target rule.
|
||||||
|
* util/i386/pc/grub-mkrescue.in: Generate grub.cfg that loads needed
|
||||||
|
modules (including all partition maps), instead of preloading them.
|
||||||
|
|
||||||
2007-04-13 Fabian Greffrath <fabian.greffrath@web.de>
|
2007-04-13 Fabian Greffrath <fabian.greffrath@web.de>
|
||||||
|
|
||||||
* util/grub.d/30_os-prober.in: New script. Use `os-prober' and
|
* util/grub.d/30_os-prober.in: New script. Use `os-prober' and
|
||||||
|
|
|
@ -123,7 +123,7 @@ include $(srcdir)/conf/$(target_cpu)-$(platform).mk
|
||||||
### General targets.
|
### General targets.
|
||||||
|
|
||||||
CLEANFILES += $(pkglib_DATA) $(pkgdata_DATA)
|
CLEANFILES += $(pkglib_DATA) $(pkgdata_DATA)
|
||||||
pkglib_DATA += moddep.lst command.lst fs.lst
|
pkglib_DATA += moddep.lst command.lst fs.lst partmap.lst
|
||||||
moddep.lst: $(DEFSYMFILES) $(UNDSYMFILES) genmoddep.awk
|
moddep.lst: $(DEFSYMFILES) $(UNDSYMFILES) genmoddep.awk
|
||||||
cat $(DEFSYMFILES) /dev/null \
|
cat $(DEFSYMFILES) /dev/null \
|
||||||
| $(AWK) -f $(srcdir)/genmoddep.awk $(UNDSYMFILES) > $@ \
|
| $(AWK) -f $(srcdir)/genmoddep.awk $(UNDSYMFILES) > $@ \
|
||||||
|
@ -135,6 +135,9 @@ command.lst: $(COMMANDFILES)
|
||||||
fs.lst: $(FSFILES)
|
fs.lst: $(FSFILES)
|
||||||
cat $^ /dev/null | sort > $@
|
cat $^ /dev/null | sort > $@
|
||||||
|
|
||||||
|
partmap.lst: $(PARTMAPFILES)
|
||||||
|
cat $^ /dev/null | sort > $@
|
||||||
|
|
||||||
ifeq (, $(UNIFONT_HEX))
|
ifeq (, $(UNIFONT_HEX))
|
||||||
else
|
else
|
||||||
pkgdata_DATA += unicode.pff ascii.pff
|
pkgdata_DATA += unicode.pff ascii.pff
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
#
|
#
|
||||||
# Copyright (C) 2005 Free Software Foundation, Inc.
|
# Copyright (C) 2005, 2008 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This gendistlist.sh is free software; the author
|
# This gendistlist.sh is free software; the author
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
|
@ -16,7 +16,7 @@
|
||||||
EXTRA_DISTFILES="AUTHORS COPYING ChangeLog DISTLIST INSTALL NEWS README \
|
EXTRA_DISTFILES="AUTHORS COPYING ChangeLog DISTLIST INSTALL NEWS README \
|
||||||
THANKS TODO Makefile.in aclocal.m4 autogen.sh config.guess \
|
THANKS TODO Makefile.in aclocal.m4 autogen.sh config.guess \
|
||||||
config.h.in config.sub configure configure.ac gencmdlist.sh \
|
config.h.in config.sub configure configure.ac gencmdlist.sh \
|
||||||
gendistlist.sh genfslist.sh genkernsyms.sh genmk.rb \
|
gendistlist.sh genfslist.sh genpartmaplist.sh genkernsyms.sh genmk.rb \
|
||||||
genmodsrc.sh gensymlist.sh install-sh mkinstalldirs stamp-h.in"
|
genmodsrc.sh gensymlist.sh install-sh mkinstalldirs stamp-h.in"
|
||||||
|
|
||||||
DISTDIRS="boot commands conf disk font fs hello include io kern loader \
|
DISTDIRS="boot commands conf disk font fs hello include io kern loader \
|
||||||
|
|
9
genmk.rb
9
genmk.rb
|
@ -141,6 +141,7 @@ endif
|
||||||
fake_obj = File.basename(src).suffix('o')
|
fake_obj = File.basename(src).suffix('o')
|
||||||
command = 'cmd-' + obj.suffix('lst')
|
command = 'cmd-' + obj.suffix('lst')
|
||||||
fs = 'fs-' + obj.suffix('lst')
|
fs = 'fs-' + obj.suffix('lst')
|
||||||
|
partmap = 'partmap-' + obj.suffix('lst')
|
||||||
dep = deps[i]
|
dep = deps[i]
|
||||||
flag = if /\.c$/ =~ src then 'CFLAGS' else 'ASFLAGS' end
|
flag = if /\.c$/ =~ src then 'CFLAGS' else 'ASFLAGS' end
|
||||||
extra_flags = if /\.S$/ =~ src then '-DASM_FILE=1' else '' end
|
extra_flags = if /\.S$/ =~ src then '-DASM_FILE=1' else '' end
|
||||||
|
@ -150,9 +151,10 @@ endif
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} $(TARGET_#{flag}) $(#{prefix}_#{flag}) -MD -c -o $@ $<
|
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) #{extra_flags} $(TARGET_#{flag}) $(#{prefix}_#{flag}) -MD -c -o $@ $<
|
||||||
-include #{dep}
|
-include #{dep}
|
||||||
|
|
||||||
CLEANFILES += #{command} #{fs}
|
CLEANFILES += #{command} #{fs} #{partmap}
|
||||||
COMMANDFILES += #{command}
|
COMMANDFILES += #{command}
|
||||||
FSFILES += #{fs}
|
FSFILES += #{fs}
|
||||||
|
PARTMAPFILES += #{partmap}
|
||||||
|
|
||||||
#{command}: #{src} $(#{src}_DEPENDENCIES) gencmdlist.sh
|
#{command}: #{src} $(#{src}_DEPENDENCIES) gencmdlist.sh
|
||||||
set -e; \
|
set -e; \
|
||||||
|
@ -164,6 +166,11 @@ FSFILES += #{fs}
|
||||||
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
||||||
| sh $(srcdir)/genfslist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
| sh $(srcdir)/genfslist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
#{partmap}: #{src} $(#{src}_DEPENDENCIES) genpartmaplist.sh
|
||||||
|
set -e; \
|
||||||
|
$(TARGET_CC) -I#{dir} -I$(srcdir)/#{dir} $(TARGET_CPPFLAGS) $(TARGET_#{flag}) $(#{prefix}_#{flag}) -E $< \
|
||||||
|
| sh $(srcdir)/genpartmaplist.sh #{symbolic_name} > $@ || (rm -f $@; exit 1)
|
||||||
|
|
||||||
|
|
||||||
"
|
"
|
||||||
end.join('')
|
end.join('')
|
||||||
|
|
|
@ -109,6 +109,11 @@ cp ${input_dir}/*.mod \
|
||||||
${input_dir}/command.lst ${input_dir}/moddep.lst ${input_dir}/fs.lst \
|
${input_dir}/command.lst ${input_dir}/moddep.lst ${input_dir}/fs.lst \
|
||||||
${aux_dir}/boot/grub/
|
${aux_dir}/boot/grub/
|
||||||
|
|
||||||
|
modules="biosdisk `cat ${input_dir}/partmap.lst` ${modules}"
|
||||||
|
for i in ${modules} ; do
|
||||||
|
echo "insmod $i"
|
||||||
|
done > ${aux_dir}/boot/grub/grub.cfg
|
||||||
|
|
||||||
if test "x$overlay" = x ; then : ; else
|
if test "x$overlay" = x ; then : ; else
|
||||||
cp -dpR ${overlay}/* ${aux_dir}/
|
cp -dpR ${overlay}/* ${aux_dir}/
|
||||||
fi
|
fi
|
||||||
|
@ -121,7 +126,7 @@ if [ "x${image_type}" = "xfloppy" ] ; then
|
||||||
|
|
||||||
# build core.img
|
# build core.img
|
||||||
core_img=`mktemp`
|
core_img=`mktemp`
|
||||||
${grub_mkimage} -d ${input_dir}/ -m ${memdisk_img} -o ${core_img} memdisk cpio biosdisk ${modules}
|
${grub_mkimage} -d ${input_dir}/ -m ${memdisk_img} -o ${core_img} memdisk cpio
|
||||||
rm -f ${memdisk_img}
|
rm -f ${memdisk_img}
|
||||||
|
|
||||||
# build floppy image
|
# build floppy image
|
||||||
|
@ -130,7 +135,7 @@ if [ "x${image_type}" = "xfloppy" ] ; then
|
||||||
else
|
else
|
||||||
# build core.img
|
# build core.img
|
||||||
core_img=`mktemp`
|
core_img=`mktemp`
|
||||||
${grub_mkimage} -d ${input_dir}/ -o ${core_img} biosdisk iso9660 ${modules}
|
${grub_mkimage} -d ${input_dir}/ -o ${core_img} biosdisk iso9660
|
||||||
|
|
||||||
# build grub_eltorito image
|
# build grub_eltorito image
|
||||||
cat ${input_dir}/cdboot.img ${core_img} > ${aux_dir}/boot/grub/grub_eltorito
|
cat ${input_dir}/cdboot.img ${core_img} > ${aux_dir}/boot/grub/grub_eltorito
|
||||||
|
|
Loading…
Reference in a new issue