Merge lp:~superm1/ubuntu/natty/grub2/bootx64-improvements into lp:ubuntu/natty/grub2

Proposed by Mario Limonciello
Status: Needs review
Proposed branch: lp:~superm1/ubuntu/natty/grub2/bootx64-improvements
Merge into: lp:ubuntu/natty/grub2
Diff against target: 371582 lines (+365736/-0) (has conflicts)
1121 files modified
.bzrignore (+82/-0)
AUTHORS (+23/-0)
COPYING (+674/-0)
ChangeLog (+29184/-0)
INSTALL (+183/-0)
Makefile.in (+575/-0)
NEWS (+266/-0)
README (+22/-0)
THANKS (+38/-0)
TODO (+13/-0)
acinclude.m4 (+460/-0)
autogen.sh (+25/-0)
boot/i386/pc/boot.S (+479/-0)
boot/i386/pc/cdboot.S (+173/-0)
boot/i386/pc/diskboot.S (+380/-0)
boot/i386/pc/lnxboot.S (+290/-0)
boot/i386/pc/pxeboot.S (+42/-0)
boot/i386/qemu/boot.S (+67/-0)
boot/mips/yeeloong/fwstart.S (+630/-0)
boot/sparc64/ieee1275/boot.S (+209/-0)
boot/sparc64/ieee1275/diskboot.S (+146/-0)
bus/bonito.c (+90/-0)
bus/cs5536.c (+380/-0)
bus/emu/pci.c (+76/-0)
bus/pci.c (+119/-0)
bus/usb/emu/usb.c (+201/-0)
bus/usb/ohci.c (+1415/-0)
bus/usb/uhci.c (+729/-0)
bus/usb/usb.c (+308/-0)
bus/usb/usbhub.c (+488/-0)
bus/usb/usbtrans.c (+281/-0)
commands/acpi.c (+776/-0)
commands/blocklist.c (+119/-0)
commands/boot.c (+196/-0)
commands/cat.c (+103/-0)
commands/cmp.c (+119/-0)
commands/configfile.c (+75/-0)
commands/crc.c (+71/-0)
commands/date.c (+146/-0)
commands/echo.c (+124/-0)
commands/efi/acpi.c (+59/-0)
commands/efi/fixvideo.c (+110/-0)
commands/efi/loadbios.c (+218/-0)
commands/extcmd.c (+96/-0)
commands/gptsync.c (+256/-0)
commands/halt.c (+46/-0)
commands/hashsum.c (+277/-0)
commands/hdparm.c (+421/-0)
commands/help.c (+142/-0)
commands/hexdump.c (+133/-0)
commands/i386/cmostest.c (+59/-0)
commands/i386/cpuid.c (+98/-0)
commands/i386/pc/acpi.c (+81/-0)
commands/i386/pc/drivemap.c (+421/-0)
commands/i386/pc/drivemap_int13h.S (+110/-0)
commands/i386/pc/halt.c (+58/-0)
commands/i386/pc/play.c (+273/-0)
commands/i386/pc/pxecmd.c (+52/-0)
commands/i386/pc/vbeinfo.c (+185/-0)
commands/i386/pc/vbetest.c (+179/-0)
commands/ieee1275/suspend.c (+49/-0)
commands/iorw.c (+150/-0)
commands/keystatus.c (+93/-0)
commands/loadenv.c (+400/-0)
commands/ls.c (+276/-0)
commands/lsmmap.c (+57/-0)
commands/lspci.c (+234/-0)
commands/memrw.c (+149/-0)
commands/minicmd.c (+372/-0)
commands/mips/yeeloong/lsspd.c (+92/-0)
commands/parttool.c (+332/-0)
commands/password.c (+86/-0)
commands/password_pbkdf2.c (+197/-0)
commands/probe.c (+161/-0)
commands/read.c (+90/-0)
commands/reboot.c (+45/-0)
commands/regexp.c (+80/-0)
commands/search.c (+174/-0)
commands/search_file.c (+6/-0)
commands/search_label.c (+6/-0)
commands/search_uuid.c (+6/-0)
commands/search_wrap.c (+95/-0)
commands/setpci.c (+341/-0)
commands/sleep.c (+113/-0)
commands/terminal.c (+246/-0)
commands/test.c (+433/-0)
commands/true.c (+57/-0)
commands/usbtest.c (+216/-0)
commands/videotest.c (+193/-0)
commands/xnu_uuid.c (+100/-0)
conf/any-emu.rmk (+112/-0)
conf/common.rmk (+837/-0)
conf/i386-coreboot.rmk (+78/-0)
conf/i386-efi.rmk (+5/-0)
conf/i386-ieee1275.rmk (+82/-0)
conf/i386-multiboot.rmk (+74/-0)
conf/i386-pc-cygwin-img-ld.sc (+53/-0)
conf/i386-pc.rmk (+301/-0)
conf/i386-qemu.rmk (+86/-0)
conf/i386.rmk (+94/-0)
conf/mips-qemu-mips.rmk (+28/-0)
conf/mips-yeeloong.rmk (+125/-0)
conf/mips.rmk (+27/-0)
conf/powerpc-ieee1275.rmk (+68/-0)
conf/sparc64-ieee1275.rmk (+104/-0)
conf/tests.rmk (+94/-0)
conf/x86-efi.rmk (+112/-0)
conf/x86_64-efi.rmk (+5/-0)
config.rpath (+672/-0)
configure.ac (+880/-0)
debian/NEWS (+13/-0)
debian/changelog (+4343/-0)
debian/compat (+1/-0)
debian/config.in (+70/-0)
debian/control (+243/-0)
debian/copyright (+25/-0)
debian/default/grub (+32/-0)
debian/default/grub.md5sum (+2/-0)
debian/dirs.in (+4/-0)
debian/examples.in (+1/-0)
debian/grub-common.dirs (+2/-0)
debian/grub-common.examples (+1/-0)
debian/grub-common.init (+42/-0)
debian/grub-common.install (+1/-0)
debian/grub-common.pm-sleep (+11/-0)
debian/grub-common.preinst (+52/-0)
debian/grub-extras/915resolution/915resolution.c (+971/-0)
debian/grub-extras/915resolution/COPYING (+674/-0)
debian/grub-extras/915resolution/README (+11/-0)
debian/grub-extras/915resolution/conf/common.rmk (+2/-0)
debian/grub-extras/915resolution/conf/i386-pc.rmk (+6/-0)
debian/grub-extras/lua/COPYING (+674/-0)
debian/grub-extras/lua/README (+11/-0)
debian/grub-extras/lua/conf/common.rmk (+18/-0)
debian/grub-extras/lua/grub_lib.c (+460/-0)
debian/grub-extras/lua/grub_lib.h (+24/-0)
debian/grub-extras/lua/grub_lua.h (+114/-0)
debian/grub-extras/lua/grub_main.c (+245/-0)
debian/grub-extras/lua/lapi.c (+1088/-0)
debian/grub-extras/lua/lapi.h (+16/-0)
debian/grub-extras/lua/lauxlib.c (+685/-0)
debian/grub-extras/lua/lauxlib.h (+175/-0)
debian/grub-extras/lua/lbaselib.c (+652/-0)
debian/grub-extras/lua/lcode.c (+848/-0)
debian/grub-extras/lua/lcode.h (+76/-0)
debian/grub-extras/lua/ldblib.c (+398/-0)
debian/grub-extras/lua/ldebug.c (+638/-0)
debian/grub-extras/lua/ldebug.h (+33/-0)
debian/grub-extras/lua/ldo.c (+519/-0)
debian/grub-extras/lua/ldo.h (+57/-0)
debian/grub-extras/lua/ldump.c (+164/-0)
debian/grub-extras/lua/lfunc.c (+174/-0)
debian/grub-extras/lua/lfunc.h (+34/-0)
debian/grub-extras/lua/lgc.c (+713/-0)
debian/grub-extras/lua/lgc.h (+110/-0)
debian/grub-extras/lua/linit.c (+38/-0)
debian/grub-extras/lua/liolib.c (+553/-0)
debian/grub-extras/lua/llex.c (+467/-0)
debian/grub-extras/lua/llex.h (+81/-0)
debian/grub-extras/lua/llimits.h (+128/-0)
debian/grub-extras/lua/lmathlib.c (+263/-0)
debian/grub-extras/lua/lmem.c (+86/-0)
debian/grub-extras/lua/lmem.h (+50/-0)
debian/grub-extras/lua/loadlib.c (+665/-0)
debian/grub-extras/lua/lobject.c (+216/-0)
debian/grub-extras/lua/lobject.h (+380/-0)
debian/grub-extras/lua/lopcodes.c (+102/-0)
debian/grub-extras/lua/lopcodes.h (+268/-0)
debian/grub-extras/lua/loslib.c (+243/-0)
debian/grub-extras/lua/lparser.c (+1340/-0)
debian/grub-extras/lua/lparser.h (+82/-0)
debian/grub-extras/lua/lstate.c (+213/-0)
debian/grub-extras/lua/lstate.h (+169/-0)
debian/grub-extras/lua/lstring.c (+112/-0)
debian/grub-extras/lua/lstring.h (+31/-0)
debian/grub-extras/lua/lstrlib.c (+872/-0)
debian/grub-extras/lua/ltable.c (+594/-0)
debian/grub-extras/lua/ltable.h (+40/-0)
debian/grub-extras/lua/ltablib.c (+288/-0)
debian/grub-extras/lua/ltm.c (+76/-0)
debian/grub-extras/lua/ltm.h (+54/-0)
debian/grub-extras/lua/lua.h (+388/-0)
debian/grub-extras/lua/luaconf.h (+811/-0)
debian/grub-extras/lua/lualib.h (+53/-0)
debian/grub-extras/lua/lundump.c (+229/-0)
debian/grub-extras/lua/lundump.h (+36/-0)
debian/grub-extras/lua/lvm.c (+764/-0)
debian/grub-extras/lua/lvm.h (+36/-0)
debian/grub-extras/lua/lzio.c (+83/-0)
debian/grub-extras/lua/lzio.h (+67/-0)
debian/grub-extras/lua/osdetect.lua (+204/-0)
debian/grub-extras/ntldr-img/COPYING (+674/-0)
debian/grub-extras/ntldr-img/README (+11/-0)
debian/grub-extras/ntldr-img/bin2h.c (+69/-0)
debian/grub-extras/ntldr-img/conf/common.rmk (+2/-0)
debian/grub-extras/ntldr-img/conf/i386-pc.rmk (+37/-0)
debian/grub-extras/ntldr-img/g2hdr.S (+99/-0)
debian/grub-extras/ntldr-img/grldrstart.S (+5753/-0)
debian/grub-extras/ntldr-img/grubinst.c (+1031/-0)
debian/grub-extras/ntldr-img/ntfsbs.S (+1502/-0)
debian/grub-extras/ntldr-img/utils.c (+391/-0)
debian/grub-extras/ntldr-img/utils.h (+59/-0)
debian/grub-extras/ntldr-img/version.h (+3/-0)
debian/grub-extras/zfs/COPYING (+674/-0)
debian/grub-extras/zfs/README (+11/-0)
debian/grub-extras/zfs/conf/common.rmk (+13/-0)
debian/grub-extras/zfs/include/grub/zfs/dmu.h (+105/-0)
debian/grub-extras/zfs/include/grub/zfs/dmu_objset.h (+37/-0)
debian/grub-extras/zfs/include/grub/zfs/dnode.h (+78/-0)
debian/grub-extras/zfs/include/grub/zfs/dsl_dataset.h (+53/-0)
debian/grub-extras/zfs/include/grub/zfs/dsl_dir.h (+49/-0)
debian/grub-extras/zfs/include/grub/zfs/spa.h (+281/-0)
debian/grub-extras/zfs/include/grub/zfs/uberblock_impl.h (+61/-0)
debian/grub-extras/zfs/include/grub/zfs/vdev_impl.h (+70/-0)
debian/grub-extras/zfs/include/grub/zfs/zap_impl.h (+110/-0)
debian/grub-extras/zfs/include/grub/zfs/zap_leaf.h (+104/-0)
debian/grub-extras/zfs/include/grub/zfs/zfs.h (+119/-0)
debian/grub-extras/zfs/include/grub/zfs/zfs_acl.h (+60/-0)
debian/grub-extras/zfs/include/grub/zfs/zfs_znode.h (+70/-0)
debian/grub-extras/zfs/include/grub/zfs/zil.h (+51/-0)
debian/grub-extras/zfs/include/grub/zfs/zio.h (+83/-0)
debian/grub-extras/zfs/include/grub/zfs/zio_checksum.h (+50/-0)
debian/grub-extras/zfs/zfs.c (+2482/-0)
debian/grub-extras/zfs/zfs_fletcher.c (+86/-0)
debian/grub-extras/zfs/zfs_lzjb.c (+95/-0)
debian/grub-extras/zfs/zfs_sha256.c (+145/-0)
debian/grub-extras/zfs/zfsinfo.c (+414/-0)
debian/grub-firmware-qemu.dirs (+1/-0)
debian/grub-firmware-qemu.install (+1/-0)
debian/grub-firmware-qemu_grub.cfg (+37/-0)
debian/grub-pc.dirs.in (+1/-0)
debian/grub-pc.install.in (+3/-0)
debian/grub-pc.prerm (+28/-0)
debian/grub-pc.templates.in (+160/-0)
debian/grub-rescue-efi-amd64.install (+1/-0)
debian/grub-rescue-efi-amd64.links (+3/-0)
debian/grub-rescue-pc.README.Debian (+22/-0)
debian/grub-rescue-pc.install (+2/-0)
debian/grub-rescue-pc.links (+3/-0)
debian/grub.d/05_debian_theme (+64/-0)
debian/grub2.dirs (+1/-0)
debian/grub2.install (+2/-0)
debian/hwmatch.lua (+44/-0)
debian/install.in (+8/-0)
debian/kernel/zz-update-grub (+17/-0)
debian/legacy/update-grub (+1094/-0)
debian/legacy/upgrade-from-grub-legacy (+42/-0)
debian/manpages.in (+3/-0)
debian/patches/boot_blocklist_hack.patch (+20/-0)
debian/patches/core_in_fs.patch (+31/-0)
debian/patches/disable_floppies.patch (+28/-0)
debian/patches/dmraid_mapper_paths.patch (+46/-0)
debian/patches/dmraid_pool_leak.patch (+99/-0)
debian/patches/dpkg_version_comparison.patch (+25/-0)
debian/patches/enable_zfs.patch (+90/-0)
debian/patches/fix_usb_boot.patch (+17/-0)
debian/patches/gfxpayload_keep_default.patch (+38/-0)
debian/patches/grub.cfg_400.patch (+15/-0)
debian/patches/grub_legacy_0_based_partitions.patch (+43/-0)
debian/patches/increase_disk_limit.patch (+25/-0)
debian/patches/install_stage2_confusion.patch (+23/-0)
debian/patches/kfreebsd_ext2.patch (+33/-0)
debian/patches/linux_mdraid_1x.patch (+307/-0)
debian/patches/mkconfig_skip_dmcrypt.patch (+30/-0)
debian/patches/mkrescue_diet.patch (+54/-0)
debian/patches/olpc_prefix_hack.patch (+50/-0)
debian/patches/series (+52/-0)
debian/patches/ubuntu_crashkernel.patch (+31/-0)
debian/patches/ubuntu_disable_bochs_cirrus.patch (+33/-0)
debian/patches/ubuntu_diskless_partitions.patch (+81/-0)
debian/patches/ubuntu_drive_probe.patch (+24/-0)
debian/patches/ubuntu_efi_install.patch (+334/-0)
debian/patches/ubuntu_embed_signatures.patch (+166/-0)
debian/patches/ubuntu_failed_boot_menu.patch (+51/-0)
debian/patches/ubuntu_fix_usb_efi_boot.patch (+16/-0)
debian/patches/ubuntu_gfxpayload_filter.patch (+70/-0)
debian/patches/ubuntu_grub_standards.patch (+16/-0)
debian/patches/ubuntu_handle_loopback.patch (+46/-0)
debian/patches/ubuntu_hostdisk_hd.patch (+122/-0)
debian/patches/ubuntu_langpacks.patch (+32/-0)
debian/patches/ubuntu_linux_no_loopmount.patch (+37/-0)
debian/patches/ubuntu_linux_quiet.patch (+43/-0)
debian/patches/ubuntu_lua_bitop.patch (+230/-0)
debian/patches/ubuntu_lua_enum_pci.patch (+77/-0)
debian/patches/ubuntu_lvm_raid_probe.patch (+264/-0)
debian/patches/ubuntu_no_device_map.patch (+117/-0)
debian/patches/ubuntu_normal_quiet.patch (+58/-0)
debian/patches/ubuntu_qemu.patch (+20/-0)
debian/patches/ubuntu_quick_boot.patch (+131/-0)
debian/patches/ubuntu_quiet_grub_loading.patch (+102/-0)
debian/patches/ubuntu_raid_virtio.patch (+168/-0)
debian/patches/ubuntu_really_quiet.patch (+55/-0)
debian/patches/ubuntu_sleep_shift.patch (+42/-0)
debian/patches/ubuntu_vesafb.patch (+45/-0)
debian/patches/yeeloong_boot_info.patch (+62/-0)
debian/patches/zfs_fix_chroot.patch (+26/-0)
debian/patches/zfs_fix_label_arg.patch (+17/-0)
debian/patches/zfs_fix_mkrelpath.patch (+19/-0)
debian/patches/zfs_fix_pathname.patch (+18/-0)
debian/patches/zfs_fix_segfault.patch (+38/-0)
debian/patches/zfs_v23.patch (+17/-0)
debian/po/POTFILES.in (+2/-0)
debian/po/ar.po (+302/-0)
debian/po/ast.po (+306/-0)
debian/po/be.po (+348/-0)
debian/po/bg.po (+303/-0)
debian/po/ca.po (+270/-0)
debian/po/cs.po (+306/-0)
debian/po/da.po (+320/-0)
debian/po/de.po (+314/-0)
debian/po/eo.po (+306/-0)
debian/po/es.po (+372/-0)
debian/po/eu.po (+309/-0)
debian/po/fa.po (+299/-0)
debian/po/fi.po (+305/-0)
debian/po/fr.po (+316/-0)
debian/po/gl.po (+306/-0)
debian/po/he.po (+297/-0)
debian/po/hr.po (+304/-0)
debian/po/id.po (+308/-0)
debian/po/it.po (+307/-0)
debian/po/ja.po (+305/-0)
debian/po/ka.po (+276/-0)
debian/po/kk.po (+301/-0)
debian/po/nb.po (+310/-0)
debian/po/nl.po (+310/-0)
debian/po/pt.po (+312/-0)
debian/po/pt_BR.po (+352/-0)
debian/po/ro.po (+347/-0)
debian/po/ru.po (+308/-0)
debian/po/sk.po (+306/-0)
debian/po/sl.po (+275/-0)
debian/po/sv.po (+312/-0)
debian/po/ta.po (+271/-0)
debian/po/templates.pot (+253/-0)
debian/po/uk.po (+273/-0)
debian/po/vi.po (+304/-0)
debian/po/zh_CN.po (+282/-0)
debian/po/zh_TW.po (+286/-0)
debian/postinst.in (+663/-0)
debian/postrm.in (+47/-0)
debian/preinst.in (+15/-0)
debian/presubj (+23/-0)
debian/rules (+255/-0)
debian/script (+31/-0)
debian/templates.in (+45/-0)
debian/update-grub (+3/-0)
debian/update-grub.8 (+14/-0)
debian/update-grub2 (+3/-0)
debian/update-grub2.8 (+16/-0)
debian/watch (+2/-0)
disk/ata.c (+917/-0)
disk/ata_pthru.c (+107/-0)
disk/dmraid_nvidia.c (+169/-0)
disk/efi/efidisk.c (+851/-0)
disk/host.c (+96/-0)
disk/i386/pc/biosdisk.c (+415/-0)
disk/ieee1275/nand.c (+215/-0)
disk/ieee1275/ofdisk.c (+285/-0)
disk/loopback.c (+241/-0)
disk/lvm.c (+693/-0)
disk/mdraid_linux.c (+424/-0)
disk/memdisk.c (+116/-0)
disk/raid.c (+724/-0)
disk/raid5_recover.c (+72/-0)
disk/raid6_recover.c (+219/-0)
disk/scsi.c (+610/-0)
disk/usbms.c (+435/-0)
docs/fdl.texi (+452/-0)
docs/grub.cfg (+75/-0)
docs/grub.texi (+3115/-0)
docs/man/grub-bin2h.h2m (+2/-0)
docs/man/grub-editenv.h2m (+2/-0)
docs/man/grub-emu.h2m (+2/-0)
docs/man/grub-fstest.h2m (+2/-0)
docs/man/grub-install.h2m (+2/-0)
docs/man/grub-macho2img.h2m (+2/-0)
docs/man/grub-mkconfig.h2m (+2/-0)
docs/man/grub-mkdevicemap.h2m (+2/-0)
docs/man/grub-mkfont.h2m (+2/-0)
docs/man/grub-mkimage.h2m (+2/-0)
docs/man/grub-mkpasswd-pbkdf2.h2m (+2/-0)
docs/man/grub-mkrelpath.h2m (+2/-0)
docs/man/grub-mkrescue.h2m (+2/-0)
docs/man/grub-ofpathname.h2m (+2/-0)
docs/man/grub-pe2elf.h2m (+2/-0)
docs/man/grub-probe.h2m (+2/-0)
docs/man/grub-reboot.h2m (+2/-0)
docs/man/grub-script-check.h2m (+2/-0)
docs/man/grub-set-default.h2m (+2/-0)
docs/man/grub-setup.h2m (+2/-0)
docs/mdate-sh (+205/-0)
docs/texinfo.tex (+8959/-0)
efiemu/i386/coredetect.c (+60/-0)
efiemu/i386/loadcore32.c (+114/-0)
efiemu/i386/loadcore64.c (+120/-0)
efiemu/i386/pc/cfgtables.c (+76/-0)
efiemu/loadcore.c (+370/-0)
efiemu/loadcore32.c (+22/-0)
efiemu/loadcore64.c (+22/-0)
efiemu/loadcore_common.c (+189/-0)
efiemu/main.c (+347/-0)
efiemu/mm.c (+633/-0)
efiemu/pnvram.c (+280/-0)
efiemu/prepare.c (+153/-0)
efiemu/prepare32.c (+22/-0)
efiemu/prepare64.c (+22/-0)
efiemu/runtime/config.h (+34/-0)
efiemu/runtime/efiemu.S (+159/-0)
efiemu/runtime/efiemu.c (+630/-0)
efiemu/runtime/efiemu.sh (+4/-0)
efiemu/symbols.c (+271/-0)
font/font.c (+1533/-0)
font/font_cmd.c (+80/-0)
fs/affs.c (+550/-0)
fs/afs.c (+718/-0)
fs/afs_be.c (+2/-0)
fs/befs.c (+3/-0)
fs/befs_be.c (+4/-0)
fs/cpio.c (+376/-0)
fs/ext2.c (+951/-0)
fs/fat.c (+876/-0)
fs/fshelp.c (+315/-0)
fs/hfs.c (+1122/-0)
fs/hfsplus.c (+1039/-0)
fs/i386/pc/pxe.c (+595/-0)
fs/iso9660.c (+897/-0)
fs/jfs.c (+902/-0)
fs/minix.c (+614/-0)
fs/nilfs2.c (+1178/-0)
fs/ntfs.c (+1111/-0)
fs/ntfscomp.c (+374/-0)
fs/reiserfs.c (+1382/-0)
fs/sfs.c (+597/-0)
fs/tar.c (+2/-0)
fs/udf.c (+939/-0)
fs/ufs.c (+813/-0)
fs/ufs2.c (+3/-0)
fs/xfs.c (+823/-0)
gencmdlist.sh (+22/-0)
gendistlist.sh (+46/-0)
genemuinit.sh (+72/-0)
genemuinitheader.sh (+52/-0)
genfslist.sh (+26/-0)
genhandlerlist.sh (+19/-0)
geninit.sh (+75/-0)
geninitheader.sh (+45/-0)
genkernsyms.sh.in (+27/-0)
genmk.rb (+475/-0)
genmoddep.awk (+61/-0)
genmodsrc.sh (+47/-0)
genpartmaplist.sh (+26/-0)
genparttoollist.sh (+19/-0)
gensymlist.sh.in (+78/-0)
genterminallist.sh (+20/-0)
gentrigtables.c (+48/-0)
genvideolist.sh (+26/-0)
gettext/gettext.c (+373/-0)
gfxmenu/font.c (+109/-0)
gfxmenu/gfxmenu.c (+151/-0)
gfxmenu/gui_box.c (+412/-0)
gfxmenu/gui_canvas.c (+267/-0)
gfxmenu/gui_circular_progress.c (+308/-0)
gfxmenu/gui_image.c (+269/-0)
gfxmenu/gui_label.c (+254/-0)
gfxmenu/gui_list.c (+620/-0)
gfxmenu/gui_progress_bar.c (+391/-0)
gfxmenu/gui_string_util.c (+327/-0)
gfxmenu/gui_util.c (+101/-0)
gfxmenu/icon_manager.c (+263/-0)
gfxmenu/named_colors.c (+209/-0)
gfxmenu/theme_loader.c (+723/-0)
gfxmenu/view.c (+448/-0)
gfxmenu/widget-box.c (+313/-0)
gnulib/alloca.h (+56/-0)
gnulib/argp-ba.c (+34/-0)
gnulib/argp-eexst.c (+30/-0)
gnulib/argp-fmtstream.c (+435/-0)
gnulib/argp-fmtstream.h (+354/-0)
gnulib/argp-fs-xinl.c (+42/-0)
gnulib/argp-help.c (+1951/-0)
gnulib/argp-namefrob.h (+157/-0)
gnulib/argp-parse.c (+952/-0)
gnulib/argp-pin.c (+27/-0)
gnulib/argp-pv.c (+34/-0)
gnulib/argp-pvh.c (+31/-0)
gnulib/argp-version-etc.c (+38/-0)
gnulib/argp-version-etc.h (+40/-0)
gnulib/argp-xinl.c (+42/-0)
gnulib/argp.h (+645/-0)
gnulib/error.c (+366/-0)
gnulib/error.h (+65/-0)
gnulib/fnmatch.c (+354/-0)
gnulib/fnmatch.h (+65/-0)
gnulib/fnmatch_loop.c (+1215/-0)
gnulib/getdelim.c (+137/-0)
gnulib/getline.c (+30/-0)
gnulib/getopt.c (+1185/-0)
gnulib/getopt.h (+225/-0)
gnulib/getopt1.c (+170/-0)
gnulib/getopt_int.h (+132/-0)
gnulib/gettext.h (+280/-0)
gnulib/progname.c (+92/-0)
gnulib/progname.h (+62/-0)
gnulib/regcomp.c (+3877/-0)
gnulib/regex.c (+72/-0)
gnulib/regex.h (+676/-0)
gnulib/regex_internal.c (+1740/-0)
gnulib/regex_internal.h (+871/-0)
gnulib/regexec.c (+4416/-0)
hello/hello.c (+49/-0)
hook/datehook.c (+105/-0)
include/grub/acorn_filecore.h (+53/-0)
include/grub/acpi.h (+75/-0)
include/grub/aout.h (+128/-0)
include/grub/at_keyboard.h (+54/-0)
include/grub/ata.h (+174/-0)
include/grub/auth.h (+37/-0)
include/grub/autoefi.h (+78/-0)
include/grub/bitmap.h (+70/-0)
include/grub/bitmap_scale.h (+49/-0)
include/grub/boot.h (+27/-0)
include/grub/bsdlabel.h (+91/-0)
include/grub/bufio.h (+28/-0)
include/grub/cache.h (+36/-0)
include/grub/charset.h (+127/-0)
include/grub/cmos.h (+72/-0)
include/grub/command.h (+122/-0)
include/grub/crypto.h (+275/-0)
include/grub/cs5536.h (+190/-0)
include/grub/datetime.h (+55/-0)
include/grub/device.h (+41/-0)
include/grub/disk.h (+180/-0)
include/grub/dl.h (+118/-0)
include/grub/efi/api.h (+1191/-0)
include/grub/efi/console.h (+31/-0)
include/grub/efi/console_control.h (+57/-0)
include/grub/efi/disk.h (+33/-0)
include/grub/efi/efi.h (+73/-0)
include/grub/efi/graphics_output.h (+96/-0)
include/grub/efi/memory.h (+48/-0)
include/grub/efi/pe32.h (+315/-0)
include/grub/efi/time.h (+30/-0)
include/grub/efi/uga_draw.h (+76/-0)
include/grub/efiemu/efiemu.h (+286/-0)
include/grub/efiemu/runtime.h (+37/-0)
include/grub/elf.h (+2378/-0)
include/grub/elfload.h (+58/-0)
include/grub/emu/console.h (+28/-0)
include/grub/emu/getroot.h (+34/-0)
include/grub/emu/hostdisk.h (+30/-0)
include/grub/emu/misc.h (+81/-0)
include/grub/env.h (+62/-0)
include/grub/env_private.h (+46/-0)
include/grub/err.h (+72/-0)
include/grub/extcmd.h (+55/-0)
include/grub/fbblit.h (+182/-0)
include/grub/fbfill.h (+75/-0)
include/grub/fbutil.h (+43/-0)
include/grub/file.h (+72/-0)
include/grub/font.h (+125/-0)
include/grub/fontformat.h (+38/-0)
include/grub/fs.h (+112/-0)
include/grub/fshelp.h (+82/-0)
include/grub/gfxmenu_model.h (+1/-0)
include/grub/gfxmenu_view.h (+115/-0)
include/grub/gfxterm.h (+44/-0)
include/grub/gfxwidgets.h (+49/-0)
include/grub/gpt_partition.h (+71/-0)
include/grub/gui.h (+275/-0)
include/grub/gui_string_util.h (+37/-0)
include/grub/gzio.h (+28/-0)
include/grub/hfs.h (+61/-0)
include/grub/i18n.h (+68/-0)
include/grub/i386/at_keyboard.h (+25/-0)
include/grub/i386/bsd.h (+101/-0)
include/grub/i386/cmos.h (+28/-0)
include/grub/i386/coreboot/boot.h (+1/-0)
include/grub/i386/coreboot/console.h (+25/-0)
include/grub/i386/coreboot/init.h (+28/-0)
include/grub/i386/coreboot/loader.h (+1/-0)
include/grub/i386/coreboot/memory.h (+71/-0)
include/grub/i386/coreboot/serial.h (+24/-0)
include/grub/i386/coreboot/time.h (+1/-0)
include/grub/i386/cpuid.h (+24/-0)
include/grub/i386/efi/loader.h (+22/-0)
include/grub/i386/efi/memory.h (+1/-0)
include/grub/i386/efi/serial.h (+1/-0)
include/grub/i386/efi/time.h (+24/-0)
include/grub/i386/efiemu.h (+33/-0)
include/grub/i386/freebsd_linker.h (+74/-0)
include/grub/i386/freebsd_reboot.h (+77/-0)
include/grub/i386/ieee1275/ieee1275.h (+1/-0)
include/grub/i386/ieee1275/loader.h (+29/-0)
include/grub/i386/ieee1275/memory.h (+1/-0)
include/grub/i386/ieee1275/serial.h (+1/-0)
include/grub/i386/ieee1275/time.h (+1/-0)
include/grub/i386/io.h (+72/-0)
include/grub/i386/linux.h (+281/-0)
include/grub/i386/loader.h (+37/-0)
include/grub/i386/macho.h (+46/-0)
include/grub/i386/memory.h (+30/-0)
include/grub/i386/multiboot.h (+41/-0)
include/grub/i386/multiboot/boot.h (+1/-0)
include/grub/i386/multiboot/console.h (+1/-0)
include/grub/i386/multiboot/init.h (+1/-0)
include/grub/i386/multiboot/kernel.h (+1/-0)
include/grub/i386/multiboot/loader.h (+1/-0)
include/grub/i386/multiboot/memory.h (+1/-0)
include/grub/i386/multiboot/serial.h (+1/-0)
include/grub/i386/multiboot/time.h (+1/-0)
include/grub/i386/netbsd_bootinfo.h (+112/-0)
include/grub/i386/netbsd_reboot.h (+81/-0)
include/grub/i386/openbsd_bootarg.h (+72/-0)
include/grub/i386/openbsd_reboot.h (+79/-0)
include/grub/i386/pc/biosdisk.h (+126/-0)
include/grub/i386/pc/biosnum.h (+6/-0)
include/grub/i386/pc/boot.h (+73/-0)
include/grub/i386/pc/chainloader.h (+30/-0)
include/grub/i386/pc/console.h (+61/-0)
include/grub/i386/pc/efiemu.h (+24/-0)
include/grub/i386/pc/init.h (+44/-0)
include/grub/i386/pc/kernel.h (+49/-0)
include/grub/i386/pc/loader.h (+28/-0)
include/grub/i386/pc/memory.h (+139/-0)
include/grub/i386/pc/pxe.h (+314/-0)
include/grub/i386/pc/time.h (+29/-0)
include/grub/i386/pc/vbe.h (+230/-0)
include/grub/i386/pc/vga.h (+31/-0)
include/grub/i386/pci.h (+89/-0)
include/grub/i386/pit.h (+27/-0)
include/grub/i386/qemu/boot.h (+25/-0)
include/grub/i386/qemu/console.h (+1/-0)
include/grub/i386/qemu/init.h (+1/-0)
include/grub/i386/qemu/kernel.h (+41/-0)
include/grub/i386/qemu/loader.h (+1/-0)
include/grub/i386/qemu/memory.h (+45/-0)
include/grub/i386/qemu/serial.h (+1/-0)
include/grub/i386/qemu/time.h (+1/-0)
include/grub/i386/relocator.h (+41/-0)
include/grub/i386/setjmp.h (+33/-0)
include/grub/i386/time.h (+29/-0)
include/grub/i386/tsc.h (+141/-0)
include/grub/i386/types.h (+31/-0)
include/grub/i386/vga_common.h (+32/-0)
include/grub/i386/xnu.h (+119/-0)
include/grub/icon_manager.h (+41/-0)
include/grub/ieee1275/console.h (+31/-0)
include/grub/ieee1275/ieee1275.h (+190/-0)
include/grub/ieee1275/ofdisk.h (+25/-0)
include/grub/kernel.h (+97/-0)
include/grub/lib/LzFind.h (+130/-0)
include/grub/lib/LzHash.h (+77/-0)
include/grub/lib/LzmaDec.h (+246/-0)
include/grub/lib/LzmaEnc.h (+95/-0)
include/grub/lib/LzmaTypes.h (+151/-0)
include/grub/lib/arg.h (+72/-0)
include/grub/lib/crc.h (+25/-0)
include/grub/lib/envblk.h (+55/-0)
include/grub/lib/hexdump.h (+25/-0)
include/grub/libgcc.h (+84/-0)
include/grub/libpciaccess.h (+26/-0)
include/grub/libusb.h (+29/-0)
include/grub/list.h (+117/-0)
include/grub/loader.h (+66/-0)
include/grub/lvm.h (+129/-0)
include/grub/macho.h (+124/-0)
include/grub/machoload.h (+73/-0)
include/grub/memory.h (+52/-0)
include/grub/menu.h (+99/-0)
include/grub/menu_viewer.h (+48/-0)
include/grub/mips/at_keyboard.h (+1/-0)
include/grub/mips/cache.h (+27/-0)
include/grub/mips/cmos.h (+1/-0)
include/grub/mips/io.h (+62/-0)
include/grub/mips/loongson.h (+90/-0)
include/grub/mips/multiboot.h (+36/-0)
include/grub/mips/pci.h (+1/-0)
include/grub/mips/qemu-mips/kernel.h (+32/-0)
include/grub/mips/qemu-mips/memory.h (+54/-0)
include/grub/mips/qemu-mips/serial.h (+24/-0)
include/grub/mips/qemu-mips/time.h (+34/-0)
include/grub/mips/relocator.h (+39/-0)
include/grub/mips/setjmp.h (+27/-0)
include/grub/mips/types.h (+38/-0)
include/grub/mips/yeeloong/at_keyboard.h (+25/-0)
include/grub/mips/yeeloong/cmos.h (+28/-0)
include/grub/mips/yeeloong/ec.h (+41/-0)
include/grub/mips/yeeloong/kernel.h (+31/-0)
include/grub/mips/yeeloong/memory.h (+68/-0)
include/grub/mips/yeeloong/pci.h (+121/-0)
include/grub/mips/yeeloong/serial.h (+30/-0)
include/grub/mips/yeeloong/time.h (+37/-0)
include/grub/misc.h (+318/-0)
include/grub/mm.h (+72/-0)
include/grub/msdos_partition.h (+117/-0)
include/grub/multiboot.h (+74/-0)
include/grub/multiboot_loader.h (+28/-0)
include/grub/net.h (+72/-0)
include/grub/normal.h (+120/-0)
include/grub/ntfs.h (+183/-0)
include/grub/offsets.h (+173/-0)
include/grub/parser.h (+91/-0)
include/grub/partition.h (+117/-0)
include/grub/parttool.h (+58/-0)
include/grub/pci.h (+136/-0)
include/grub/pciutils.h (+103/-0)
include/grub/powerpc/ieee1275/biosdisk.h (+46/-0)
include/grub/powerpc/ieee1275/ieee1275.h (+28/-0)
include/grub/powerpc/ieee1275/loader.h (+32/-0)
include/grub/powerpc/ieee1275/memory.h (+26/-0)
include/grub/powerpc/ieee1275/time.h (+29/-0)
include/grub/powerpc/ieee1275/util/biosdisk.h (+27/-0)
include/grub/powerpc/kernel.h (+22/-0)
include/grub/powerpc/setjmp.h (+27/-0)
include/grub/powerpc/time.h (+28/-0)
include/grub/powerpc/types.h (+32/-0)
include/grub/raid.h (+88/-0)
include/grub/reader.h (+29/-0)
include/grub/script_sh.h (+356/-0)
include/grub/scsi.h (+106/-0)
include/grub/scsicmd.h (+166/-0)
include/grub/sdl.h (+24/-0)
include/grub/search.h (+26/-0)
include/grub/serial.h (+73/-0)
include/grub/setjmp.h (+33/-0)
include/grub/smbus.h (+70/-0)
include/grub/sparc64/ieee1275/boot.h (+55/-0)
include/grub/sparc64/ieee1275/ieee1275.h (+48/-0)
include/grub/sparc64/ieee1275/kernel.h (+37/-0)
include/grub/sparc64/ieee1275/loader.h (+27/-0)
include/grub/sparc64/ieee1275/memory.h (+26/-0)
include/grub/sparc64/ieee1275/time.h (+29/-0)
include/grub/sparc64/setjmp.h (+29/-0)
include/grub/sparc64/time.h (+28/-0)
include/grub/sparc64/types.h (+32/-0)
include/grub/symbol.h (+52/-0)
include/grub/term.h (+468/-0)
include/grub/terminfo.h (+77/-0)
include/grub/test.h (+85/-0)
include/grub/time.h (+47/-0)
include/grub/tparm.h (+26/-0)
include/grub/trig.h (+44/-0)
include/grub/types.h (+204/-0)
include/grub/unicode.h (+272/-0)
include/grub/usb.h (+234/-0)
include/grub/usbdesc.h (+119/-0)
include/grub/usbtrans.h (+114/-0)
include/grub/util/deviceiter.h (+11/-0)
include/grub/util/libnvpair.h (+39/-0)
include/grub/util/libzfs.h (+45/-0)
include/grub/util/lvm.h (+27/-0)
include/grub/util/misc.h (+63/-0)
include/grub/util/ofpath.h (+6/-0)
include/grub/util/raid.h (+27/-0)
include/grub/util/resolve.h (+35/-0)
include/grub/vga.h (+195/-0)
include/grub/video.h (+409/-0)
include/grub/video_fb.h (+136/-0)
include/grub/x86_64/at_keyboard.h (+1/-0)
include/grub/x86_64/efi/loader.h (+26/-0)
include/grub/x86_64/efi/memory.h (+1/-0)
include/grub/x86_64/efi/serial.h (+1/-0)
include/grub/x86_64/efi/time.h (+24/-0)
include/grub/x86_64/io.h (+19/-0)
include/grub/x86_64/linux.h (+19/-0)
include/grub/x86_64/macho.h (+1/-0)
include/grub/x86_64/multiboot.h (+1/-0)
include/grub/x86_64/pci.h (+19/-0)
include/grub/x86_64/relocator.h (+1/-0)
include/grub/x86_64/setjmp.h (+27/-0)
include/grub/x86_64/time.h (+29/-0)
include/grub/x86_64/types.h (+31/-0)
include/grub/x86_64/xnu.h (+1/-0)
include/grub/xnu.h (+115/-0)
include/multiboot.h (+259/-0)
include/multiboot2.h (+314/-0)
io/bufio.c (+205/-0)
io/gzio.c (+1251/-0)
kern/command.c (+58/-0)
kern/corecmd.c (+191/-0)
kern/device.c (+169/-0)
kern/disk.c (+608/-0)
kern/dl.c (+701/-0)
kern/efi/efi.c (+785/-0)
kern/efi/init.c (+107/-0)
kern/efi/mm.c (+448/-0)
kern/elf.c (+480/-0)
kern/emu/console.c (+322/-0)
kern/emu/getroot.c (+818/-0)
kern/emu/hostdisk.c (+1554/-0)
kern/emu/hostfs.c (+175/-0)
kern/emu/main.c (+296/-0)
kern/emu/misc.c (+553/-0)
kern/emu/mm.c (+85/-0)
kern/emu/time.c (+46/-0)
kern/env.c (+242/-0)
kern/err.c (+135/-0)
kern/file.c (+166/-0)
kern/fs.c (+231/-0)
kern/generic/millisleep.c (+39/-0)
kern/generic/rtc_get_time_ms.c (+37/-0)
kern/i386/coreboot/init.c (+155/-0)
kern/i386/coreboot/mmap.c (+107/-0)
kern/i386/coreboot/startup.S (+91/-0)
kern/i386/dl.c (+109/-0)
kern/i386/efi/init.c (+47/-0)
kern/i386/efi/startup.S (+66/-0)
kern/i386/halt.c (+42/-0)
kern/i386/ieee1275/init.c (+28/-0)
kern/i386/ieee1275/startup.S (+69/-0)
kern/i386/loader.S (+120/-0)
kern/i386/misc.S (+29/-0)
kern/i386/multiboot_mmap.c (+87/-0)
kern/i386/pc/init.c (+248/-0)
kern/i386/pc/lzma_decode.S (+677/-0)
kern/i386/pc/mmap.c (+68/-0)
kern/i386/pc/startup.S (+2075/-0)
kern/i386/pit.c (+56/-0)
kern/i386/qemu/init.c (+152/-0)
kern/i386/qemu/mmap.c (+94/-0)
kern/i386/qemu/startup.S (+99/-0)
kern/i386/realmode.S (+242/-0)
kern/i386/tsc.c (+74/-0)
kern/ieee1275/cmain.c (+174/-0)
kern/ieee1275/ieee1275.c (+609/-0)
kern/ieee1275/init.c (+299/-0)
kern/ieee1275/mmap.c (+74/-0)
kern/ieee1275/openfw.c (+436/-0)
kern/list.c (+87/-0)
kern/main.c (+198/-0)
kern/mips/cache.S (+7/-0)
kern/mips/cache_flush.S (+23/-0)
kern/mips/dl.c (+237/-0)
kern/mips/init.c (+34/-0)
kern/mips/qemu-mips/init.c (+61/-0)
kern/mips/startup.S (+226/-0)
kern/mips/yeeloong/init.c (+245/-0)
kern/misc.c (+1014/-0)
kern/mm.c (+600/-0)
kern/parser.c (+267/-0)
kern/partition.c (+253/-0)
kern/powerpc/cache.S (+48/-0)
kern/powerpc/dl.c (+136/-0)
kern/powerpc/ieee1275/startup.S (+64/-0)
kern/rescue_parser.c (+76/-0)
kern/rescue_reader.c (+97/-0)
kern/sparc64/cache.S (+41/-0)
kern/sparc64/dl.c (+142/-0)
kern/sparc64/ieee1275/crt0.S (+92/-0)
kern/sparc64/ieee1275/ieee1275.c (+91/-0)
kern/sparc64/ieee1275/init.c (+174/-0)
kern/term.c (+136/-0)
kern/time.c (+37/-0)
kern/x86_64/dl.c (+119/-0)
kern/x86_64/efi/callwrap.S (+116/-0)
kern/x86_64/efi/startup.S (+63/-0)
lib/LzFind.c (+774/-0)
lib/LzmaDec.c (+1035/-0)
lib/LzmaEnc.c (+2355/-0)
lib/arg.c (+392/-0)
lib/cmos_datetime.c (+155/-0)
lib/crc.c (+75/-0)
lib/crypto.c (+453/-0)
lib/efi/datetime.c (+79/-0)
lib/envblk.c (+296/-0)
lib/hexdump.c (+85/-0)
lib/i386/pc/biosnum.c (+46/-0)
lib/i386/relocator.c (+102/-0)
lib/i386/relocator_asm.S (+250/-0)
lib/i386/relocator_backward.S (+2/-0)
lib/i386/setjmp.S (+56/-0)
lib/ieee1275/datetime.c (+142/-0)
lib/libgcrypt/cipher/ChangeLog (+3900/-0)
lib/libgcrypt/cipher/ac.c (+3301/-0)
lib/libgcrypt/cipher/arcfour.c (+156/-0)
lib/libgcrypt/cipher/bithelp.h (+54/-0)
lib/libgcrypt/cipher/blowfish.c (+605/-0)
lib/libgcrypt/cipher/camellia-glue.c (+253/-0)
lib/libgcrypt/cipher/camellia.c (+1461/-0)
lib/libgcrypt/cipher/camellia.h (+81/-0)
lib/libgcrypt/cipher/cast5.c (+620/-0)
lib/libgcrypt/cipher/cipher.c (+1932/-0)
lib/libgcrypt/cipher/crc.c (+297/-0)
lib/libgcrypt/cipher/des.c (+1196/-0)
lib/libgcrypt/cipher/dsa.c (+1181/-0)
lib/libgcrypt/cipher/ecc.c (+1390/-0)
lib/libgcrypt/cipher/elgamal.c (+846/-0)
lib/libgcrypt/cipher/hash-common.c (+94/-0)
lib/libgcrypt/cipher/hash-common.h (+33/-0)
lib/libgcrypt/cipher/hmac-tests.c (+732/-0)
lib/libgcrypt/cipher/md.c (+1375/-0)
lib/libgcrypt/cipher/md4.c (+328/-0)
lib/libgcrypt/cipher/md5.c (+355/-0)
lib/libgcrypt/cipher/primegen.c (+1862/-0)
lib/libgcrypt/cipher/pubkey.c (+2749/-0)
lib/libgcrypt/cipher/rfc2268.c (+345/-0)
lib/libgcrypt/cipher/rijndael-tables.h (+1687/-0)
lib/libgcrypt/cipher/rijndael.c (+1253/-0)
lib/libgcrypt/cipher/rmd.h (+37/-0)
lib/libgcrypt/cipher/rmd160.c (+572/-0)
lib/libgcrypt/cipher/rsa.c (+1379/-0)
lib/libgcrypt/cipher/seed.c (+478/-0)
lib/libgcrypt/cipher/serpent.c (+978/-0)
lib/libgcrypt/cipher/sha1.c (+479/-0)
lib/libgcrypt/cipher/sha256.c (+487/-0)
lib/libgcrypt/cipher/sha512.c (+553/-0)
lib/libgcrypt/cipher/tiger.c (+851/-0)
lib/libgcrypt/cipher/twofish.c (+1040/-0)
lib/libgcrypt/cipher/whirlpool.c (+1406/-0)
lib/libgcrypt_wrap/cipher_wrap.h (+86/-0)
lib/mips/relocator.c (+112/-0)
lib/mips/relocator_asm.S (+58/-0)
lib/mips/setjmp.S (+65/-0)
lib/pbkdf2.c (+102/-0)
lib/posix_wrap/assert.h (+33/-0)
lib/posix_wrap/ctype.h (+103/-0)
lib/posix_wrap/errno.h (+28/-0)
lib/posix_wrap/langinfo.h (+38/-0)
lib/posix_wrap/localcharset.h (+28/-0)
lib/posix_wrap/stdint.h (+1/-0)
lib/posix_wrap/stdio.h (+29/-0)
lib/posix_wrap/stdlib.h (+56/-0)
lib/posix_wrap/string.h (+40/-0)
lib/posix_wrap/sys/types.h (+32/-0)
lib/posix_wrap/wchar.h (+25/-0)
lib/powerpc/setjmp.S (+84/-0)
lib/relocator.c (+137/-0)
lib/sparc64/setjmp.S (+47/-0)
lib/x86_64/setjmp.S (+65/-0)
loader/aout.c (+62/-0)
loader/efi/appleloader.c (+332/-0)
loader/efi/chainloader.c (+347/-0)
loader/i386/bsd.c (+1326/-0)
loader/i386/bsd32.c (+6/-0)
loader/i386/bsd64.c (+6/-0)
loader/i386/bsdXX.c (+329/-0)
loader/i386/bsd_helper.S (+45/-0)
loader/i386/bsd_pagetable.c (+88/-0)
loader/i386/bsd_trampoline.S (+124/-0)
loader/i386/efi/linux.c (+945/-0)
loader/i386/ieee1275/linux.c (+311/-0)
loader/i386/linux.c (+1022/-0)
loader/i386/linux_trampoline.S (+129/-0)
loader/i386/multiboot_mbi.c (+541/-0)
loader/i386/pc/chainloader.c (+173/-0)
loader/i386/pc/linux.c (+411/-0)
loader/i386/xnu.c (+1137/-0)
loader/macho.c (+161/-0)
loader/macho32.c (+18/-0)
loader/macho64.c (+18/-0)
loader/machoXX.c (+239/-0)
loader/mips/linux.c (+398/-0)
loader/multiboot.c (+362/-0)
loader/multiboot_elfxx.c (+164/-0)
loader/multiboot_mbi2.c (+700/-0)
loader/powerpc/ieee1275/linux.c (+363/-0)
loader/sparc64/ieee1275/linux.c (+529/-0)
loader/xnu.c (+1471/-0)
loader/xnu_resume.c (+145/-0)
mkinstalldirs (+161/-0)
mmap/efi/mmap.c (+284/-0)
mmap/i386/mmap.c (+98/-0)
mmap/i386/pc/mmap.c (+216/-0)
mmap/i386/pc/mmap_helper.S (+133/-0)
mmap/i386/uppermem.c (+85/-0)
mmap/mips/yeeloong/uppermem.c (+66/-0)
mmap/mmap.c (+426/-0)
normal/auth.c (+250/-0)
normal/autofs.c (+136/-0)
normal/charset.c (+1294/-0)
normal/cmdline.c (+639/-0)
normal/color.c (+145/-0)
normal/completion.c (+507/-0)
normal/context.c (+183/-0)
normal/crypto.c (+151/-0)
normal/datetime.c (+100/-0)
normal/dyncmd.c (+167/-0)
normal/main.c (+719/-0)
normal/menu.c (+651/-0)
normal/menu_entry.c (+1414/-0)
normal/menu_text.c (+459/-0)
normal/misc.c (+120/-0)
normal/term.c (+795/-0)
partmap/acorn.c (+145/-0)
partmap/amiga.c (+151/-0)
partmap/apple.c (+197/-0)
partmap/bsdlabel.c (+147/-0)
partmap/gpt.c (+136/-0)
partmap/msdos.c (+152/-0)
partmap/sun.c (+164/-0)
partmap/sunpc.c (+144/-0)
parttool/msdospart.c (+155/-0)
po/POTFILES (+80/-0)
po/POTFILES-shell (+5/-0)
po/README (+24/-0)
po/ast.po (+1705/-0)
po/ca.po (+1345/-0)
po/da.po (+1349/-0)
po/de.po (+1688/-0)
po/fi.po (+1444/-0)
po/fr.po (+1476/-0)
po/hu.po (+1346/-0)
po/id.po (+1951/-0)
po/it.po (+1363/-0)
po/nl.po (+1687/-0)
po/pl.po (+1350/-0)
po/ru.po (+1342/-0)
po/sv.po (+1831/-0)
po/vi.po (+1342/-0)
po/zh_CN.po (+1876/-0)
script/execute.c (+392/-0)
script/function.c (+114/-0)
script/lexer.c (+346/-0)
script/main.c (+41/-0)
script/parser.y (+288/-0)
script/script.c (+407/-0)
script/yylex.l (+327/-0)
term/at_keyboard.c (+303/-0)
term/efi/console.c (+374/-0)
term/gfxterm.c (+1220/-0)
term/i386/pc/console.c (+83/-0)
term/i386/pc/vga_text.c (+173/-0)
term/i386/vga_common.c (+48/-0)
term/ieee1275/ofconsole.c (+246/-0)
term/serial.c (+399/-0)
term/terminfo.c (+627/-0)
term/tparm.c (+761/-0)
term/usb_keyboard.c (+328/-0)
tests/example_functional_test.c (+35/-0)
tests/example_grub_script_test.in (+3/-0)
tests/example_scripted_test.in (+3/-0)
tests/example_unit_test.c (+38/-0)
tests/grub_script_blanklines.in (+14/-0)
tests/grub_script_comments.in (+28/-0)
tests/grub_script_dollar.in (+5/-0)
tests/grub_script_echo1.in (+32/-0)
tests/grub_script_echo_keywords.in (+3/-0)
tests/grub_script_final_semicolon.in (+10/-0)
tests/grub_script_for1.in (+27/-0)
tests/grub_script_if.in (+31/-0)
tests/grub_script_vars1.in (+34/-0)
tests/grub_script_while1.in (+32/-0)
tests/lib/functional_test.c (+48/-0)
tests/lib/test.c (+157/-0)
tests/lib/unit_test.c (+105/-0)
tests/util/grub-shell-tester.in (+109/-0)
tests/util/grub-shell.in (+146/-0)
unicode/ArabicShaping.txt (+373/-0)
unicode/BidiMirroring.txt (+588/-0)
unicode/COPYING (+9/-0)
unicode/UnicodeData.txt (+21829/-0)
unidata.c (+1494/-0)
util/bin2h.c (+127/-0)
util/deviceiter.c (+884/-0)
util/devicemap.c (+13/-0)
util/grub-editenv.c (+321/-0)
util/grub-fstest.c (+582/-0)
util/grub-install.in (+426/-0)
util/grub-macho2img.c (+116/-0)
util/grub-mkconfig.in (+321/-0)
util/grub-mkconfig_lib.in (+204/-0)
util/grub-mkdevicemap.c (+190/-0)
util/grub-mkfont.c (+1227/-0)
util/grub-mkimage.c (+1412/-0)
util/grub-mkimagexx.c (+756/-0)
util/grub-mkpasswd-pbkdf2.c (+342/-0)
util/grub-mkrelpath.c (+107/-0)
util/grub-mkrescue.in (+318/-0)
util/grub-pe2elf.c (+523/-0)
util/grub-probe.c (+458/-0)
util/grub-reboot.in (+131/-0)
util/grub-script-check.c (+263/-0)
util/grub-set-default.in (+122/-0)
util/grub.d/00_header.in (+257/-0)
util/grub.d/10_hurd.in (+124/-0)
util/grub.d/10_kfreebsd.in (+151/-0)
util/grub.d/10_linux.in (+145/-0)
util/grub.d/10_netbsd.in (+87/-0)
util/grub.d/10_windows.in (+94/-0)
util/grub.d/20_linux_xen.in (+143/-0)
util/grub.d/30_os-prober.in (+204/-0)
util/grub.d/40_custom.in (+5/-0)
util/grub.d/41_custom.in (+7/-0)
util/grub.d/README (+11/-0)
util/i386/efi/grub-dumpdevtree (+22/-0)
util/i386/efi/grub-install.in (+261/-0)
util/i386/pc/grub-setup.c (+857/-0)
util/ieee1275/devicemap.c (+49/-0)
util/ieee1275/grub-install.in (+273/-0)
util/ieee1275/grub-ofpathname.c (+47/-0)
util/ieee1275/ofpath.c (+418/-0)
util/import_gcry.py (+341/-0)
util/import_unicode.py (+189/-0)
util/lvm.c (+52/-0)
util/misc.c (+311/-0)
util/powerpc/ieee1275/grub-mkrescue.in (+143/-0)
util/raid.c (+112/-0)
util/resolve.c (+267/-0)
util/sparc64/ieee1275/grub-setup.c (+656/-0)
util/update-grub_lib.in (+23/-0)
video/bitmap.c (+253/-0)
video/bitmap_scale.c (+308/-0)
video/bochs.c (+423/-0)
video/cirrus.c (+520/-0)
video/efi_gop.c (+401/-0)
video/efi_uga.c (+341/-0)
video/emu/sdl.c (+240/-0)
video/fb/fbblit.c (+1420/-0)
video/fb/fbfill.c (+177/-0)
video/fb/fbutil.c (+178/-0)
video/fb/video_fb.c (+1513/-0)
video/i386/pc/vbe.c (+613/-0)
video/i386/pc/vga.c (+367/-0)
video/ieee1275.c (+302/-0)
video/readers/jpeg.c (+762/-0)
video/readers/png.c (+913/-0)
video/readers/tga.c (+495/-0)
video/sm712.c (+268/-0)
video/sm712_init.c (+546/-0)
video/video.c (+673/-0)
Conflict adding file .bzrignore.  Moved existing file to .bzrignore.moved.
Conflict adding file AUTHORS.  Moved existing file to AUTHORS.moved.
Conflict adding file COPYING.  Moved existing file to COPYING.moved.
Conflict adding file ChangeLog.  Moved existing file to ChangeLog.moved.
Conflict adding file INSTALL.  Moved existing file to INSTALL.moved.
Conflict adding file Makefile.in.  Moved existing file to Makefile.in.moved.
Conflict adding file NEWS.  Moved existing file to NEWS.moved.
Conflict adding file README.  Moved existing file to README.moved.
Conflict adding file THANKS.  Moved existing file to THANKS.moved.
Conflict adding file TODO.  Moved existing file to TODO.moved.
Conflict adding file acinclude.m4.  Moved existing file to acinclude.m4.moved.
Conflict adding file autogen.sh.  Moved existing file to autogen.sh.moved.
Conflict adding file boot.  Moved existing file to boot.moved.
Conflict adding file bus.  Moved existing file to bus.moved.
Conflict adding file commands.  Moved existing file to commands.moved.
Conflict adding file conf.  Moved existing file to conf.moved.
Conflict adding file config.rpath.  Moved existing file to config.rpath.moved.
Conflict adding file configure.ac.  Moved existing file to configure.ac.moved.
Conflict adding file debian.  Moved existing file to debian.moved.
Conflict adding file disk.  Moved existing file to disk.moved.
Conflict adding file docs.  Moved existing file to docs.moved.
Conflict adding file efiemu.  Moved existing file to efiemu.moved.
Conflict adding file font.  Moved existing file to font.moved.
Conflict adding file fs.  Moved existing file to fs.moved.
Conflict adding file gencmdlist.sh.  Moved existing file to gencmdlist.sh.moved.
Conflict adding file gendistlist.sh.  Moved existing file to gendistlist.sh.moved.
Conflict adding file genemuinit.sh.  Moved existing file to genemuinit.sh.moved.
Conflict adding file genemuinitheader.sh.  Moved existing file to genemuinitheader.sh.moved.
Conflict adding file genfslist.sh.  Moved existing file to genfslist.sh.moved.
Conflict adding file genhandlerlist.sh.  Moved existing file to genhandlerlist.sh.moved.
Conflict adding file geninit.sh.  Moved existing file to geninit.sh.moved.
Conflict adding file geninitheader.sh.  Moved existing file to geninitheader.sh.moved.
Conflict adding file genkernsyms.sh.in.  Moved existing file to genkernsyms.sh.in.moved.
Conflict adding file genmk.rb.  Moved existing file to genmk.rb.moved.
Conflict adding file genmoddep.awk.  Moved existing file to genmoddep.awk.moved.
Conflict adding file genmodsrc.sh.  Moved existing file to genmodsrc.sh.moved.
Conflict adding file genpartmaplist.sh.  Moved existing file to genpartmaplist.sh.moved.
Conflict adding file genparttoollist.sh.  Moved existing file to genparttoollist.sh.moved.
Conflict adding file gensymlist.sh.in.  Moved existing file to gensymlist.sh.in.moved.
Conflict adding file genterminallist.sh.  Moved existing file to genterminallist.sh.moved.
Conflict adding file gentrigtables.c.  Moved existing file to gentrigtables.c.moved.
Conflict adding file genvideolist.sh.  Moved existing file to genvideolist.sh.moved.
Conflict adding file gettext.  Moved existing file to gettext.moved.
Conflict adding file gfxmenu.  Moved existing file to gfxmenu.moved.
Conflict adding file gnulib.  Moved existing file to gnulib.moved.
Conflict adding file hello.  Moved existing file to hello.moved.
Conflict adding file hook.  Moved existing file to hook.moved.
Conflict adding file include.  Moved existing file to include.moved.
Conflict adding file io.  Moved existing file to io.moved.
Conflict adding file kern.  Moved existing file to kern.moved.
Conflict adding file lib.  Moved existing file to lib.moved.
Conflict adding file loader.  Moved existing file to loader.moved.
Conflict adding file mkinstalldirs.  Moved existing file to mkinstalldirs.moved.
Conflict adding file mmap.  Moved existing file to mmap.moved.
Conflict adding file normal.  Moved existing file to normal.moved.
Conflict adding file partmap.  Moved existing file to partmap.moved.
Conflict adding file parttool.  Moved existing file to parttool.moved.
Conflict adding file po.  Moved existing file to po.moved.
Conflict adding file script.  Moved existing file to script.moved.
Conflict adding file term.  Moved existing file to term.moved.
Conflict adding file tests.  Moved existing file to tests.moved.
Conflict adding file unicode.  Moved existing file to unicode.moved.
Conflict adding file unidata.c.  Moved existing file to unidata.c.moved.
Conflict adding file util.  Moved existing file to util.moved.
Conflict adding file video.  Moved existing file to video.moved.
To merge this branch: bzr merge lp:~superm1/ubuntu/natty/grub2/bootx64-improvements
Reviewer Review Type Date Requested Status
Colin Watson Pending
Review via email: mp+41387@code.launchpad.net
To post a comment you must log in.

Unmerged revisions

2055. By Mario Limonciello

Built part_msdos and vfat into bootx64.efi (LP: #677758)

2054. By Colin Watson

merge from Debian 1.98+20100804-8

2053. By Colin Watson

mark UNRELEASED - this hasn't been uploaded

2052. By Colin Watson

merge lp:~broder/ubuntu/natty/grub2/gfxpayload-blacklist

2051. By Colin Watson

releasing version 1.98+20100804-7ubuntu1

2050. By Colin Watson

merge from Debian 1.98+20100804-7

2049. By Colin Watson

releasing version 1.98+20100804-6ubuntu1

2048. By Colin Watson

merge from Debian 1.98+20100804-6

2047. By Colin Watson

releasing version 1.98+20100804-5ubuntu3

2046. By Colin Watson

handle more unames

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== added file '.bzrignore'
--- .bzrignore 1970-01-01 00:00:00 +0000
+++ .bzrignore 2010-11-20 07:24:56 +0000
@@ -0,0 +1,82 @@
1.pc
200_header
310_*
420_linux_xen
530_os-prober
640_custom
741_custom
8aclocal.m4
9ascii.bitmaps
10ascii.h
11autom4te.cache
12build_env.mk
13.bzrignore
14config.cache
15config.guess
16config.h
17config.h.in
18config.log
19config.status
20config.sub
21configure
22conf/*.mk
23conf/gcry.rmk
24*.d
25DISTLIST
26debian/grub-extras/*/conf/*.mk
27docs/*.info
28docs/stamp-vti
29docs/version.texi
30*.elf
31*.exec
32genkernsyms.sh
33gensymlist.sh
34gentrigtables
35grub-bin2h
36grub-dumpbios
37grub-editenv
38grub-emu
39grub_emu_init.c
40grub_emu_init.h
41grub-fstest
42grub_fstest_init.c
43grub_fstest_init.h
44grub-install
45grub-mk*
46grub-mkpasswd-pbkdf2
47grub-pe2elf
48grub-probe
49grub_probe_init.c
50grub_probe_init.h
51grub-reboot
52grub-script-check
53grub_script_check_init.c
54grub_script_check_init.h
55grub_script.tab.c
56grub_script.tab.h
57grub_script.yy.c
58grub_script.yy.h
59grub-set-default
60grub-setup
61grub_setup_init.c
62grub_setup_init.h
63*.img
64include/grub/cpu
65include/grub/machine
66install-sh
67lib/libgcrypt-grub
68*.lst
69Makefile
70*.mod
71mod-*.c
72missing
73*.pf2
74po/*.mo
75po/grub.pot
76stamp-h
77stamp-h1
78stamp-h.in
79symlist.c
80trigtables.c
81update-grub_lib
82unidata.c
083
=== renamed file '.bzrignore' => '.bzrignore.moved'
=== added file 'AUTHORS'
--- AUTHORS 1970-01-01 00:00:00 +0000
+++ AUTHORS 2010-11-20 07:24:56 +0000
@@ -0,0 +1,23 @@
1The following authors assigned copyright on their work to the Free
2Software Foundation:
3
4Yoshinori K. Okuji designed and implemented the initial version.
5
6Jeroen Dekkers added initrd support, Multiboot support, and fixed bugs
7in ext2fs.
8
9Marco Gerards added ext2fs support, grub-emu, a new command-line
10engine, and fixed many bugs.
11
12Omniflux added terminfo and serial support.
13
14Vincent Pelletier added Sparc64 support.
15
16Hollis Blanchard implemented many parts of PowerPC support.
17
18Tomas Ebenlendr added the command chainloader into the normal mode,
19fixed some bugs.
20
21Guillem Jover merged architecture-independent ELF support code.
22
23Vesa Jaaskelainen added VBE support.
024
=== renamed file 'AUTHORS' => 'AUTHORS.moved'
=== added file 'COPYING'
--- COPYING 1970-01-01 00:00:00 +0000
+++ COPYING 2010-11-20 07:24:56 +0000
@@ -0,0 +1,674 @@
1 GNU GENERAL PUBLIC LICENSE
2 Version 3, 29 June 2007
3
4 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
5 Everyone is permitted to copy and distribute verbatim copies
6 of this license document, but changing it is not allowed.
7
8 Preamble
9
10 The GNU General Public License is a free, copyleft license for
11software and other kinds of works.
12
13 The licenses for most software and other practical works are designed
14to take away your freedom to share and change the works. By contrast,
15the GNU General Public License is intended to guarantee your freedom to
16share and change all versions of a program--to make sure it remains free
17software for all its users. We, the Free Software Foundation, use the
18GNU General Public License for most of our software; it applies also to
19any other work released this way by its authors. You can apply it to
20your programs, too.
21
22 When we speak of free software, we are referring to freedom, not
23price. Our General Public Licenses are designed to make sure that you
24have the freedom to distribute copies of free software (and charge for
25them if you wish), that you receive source code or can get it if you
26want it, that you can change the software or use pieces of it in new
27free programs, and that you know you can do these things.
28
29 To protect your rights, we need to prevent others from denying you
30these rights or asking you to surrender the rights. Therefore, you have
31certain responsibilities if you distribute copies of the software, or if
32you modify it: responsibilities to respect the freedom of others.
33
34 For example, if you distribute copies of such a program, whether
35gratis or for a fee, you must pass on to the recipients the same
36freedoms that you received. You must make sure that they, too, receive
37or can get the source code. And you must show them these terms so they
38know their rights.
39
40 Developers that use the GNU GPL protect your rights with two steps:
41(1) assert copyright on the software, and (2) offer you this License
42giving you legal permission to copy, distribute and/or modify it.
43
44 For the developers' and authors' protection, the GPL clearly explains
45that there is no warranty for this free software. For both users' and
46authors' sake, the GPL requires that modified versions be marked as
47changed, so that their problems will not be attributed erroneously to
48authors of previous versions.
49
50 Some devices are designed to deny users access to install or run
51modified versions of the software inside them, although the manufacturer
52can do so. This is fundamentally incompatible with the aim of
53protecting users' freedom to change the software. The systematic
54pattern of such abuse occurs in the area of products for individuals to
55use, which is precisely where it is most unacceptable. Therefore, we
56have designed this version of the GPL to prohibit the practice for those
57products. If such problems arise substantially in other domains, we
58stand ready to extend this provision to those domains in future versions
59of the GPL, as needed to protect the freedom of users.
60
61 Finally, every program is threatened constantly by software patents.
62States should not allow patents to restrict development and use of
63software on general-purpose computers, but in those that do, we wish to
64avoid the special danger that patents applied to a free program could
65make it effectively proprietary. To prevent this, the GPL assures that
66patents cannot be used to render the program non-free.
67
68 The precise terms and conditions for copying, distribution and
69modification follow.
70
71 TERMS AND CONDITIONS
72
73 0. Definitions.
74
75 "This License" refers to version 3 of the GNU General Public License.
76
77 "Copyright" also means copyright-like laws that apply to other kinds of
78works, such as semiconductor masks.
79
80 "The Program" refers to any copyrightable work licensed under this
81License. Each licensee is addressed as "you". "Licensees" and
82"recipients" may be individuals or organizations.
83
84 To "modify" a work means to copy from or adapt all or part of the work
85in a fashion requiring copyright permission, other than the making of an
86exact copy. The resulting work is called a "modified version" of the
87earlier work or a work "based on" the earlier work.
88
89 A "covered work" means either the unmodified Program or a work based
90on the Program.
91
92 To "propagate" a work means to do anything with it that, without
93permission, would make you directly or secondarily liable for
94infringement under applicable copyright law, except executing it on a
95computer or modifying a private copy. Propagation includes copying,
96distribution (with or without modification), making available to the
97public, and in some countries other activities as well.
98
99 To "convey" a work means any kind of propagation that enables other
100parties to make or receive copies. Mere interaction with a user through
101a computer network, with no transfer of a copy, is not conveying.
102
103 An interactive user interface displays "Appropriate Legal Notices"
104to the extent that it includes a convenient and prominently visible
105feature that (1) displays an appropriate copyright notice, and (2)
106tells the user that there is no warranty for the work (except to the
107extent that warranties are provided), that licensees may convey the
108work under this License, and how to view a copy of this License. If
109the interface presents a list of user commands or options, such as a
110menu, a prominent item in the list meets this criterion.
111
112 1. Source Code.
113
114 The "source code" for a work means the preferred form of the work
115for making modifications to it. "Object code" means any non-source
116form of a work.
117
118 A "Standard Interface" means an interface that either is an official
119standard defined by a recognized standards body, or, in the case of
120interfaces specified for a particular programming language, one that
121is widely used among developers working in that language.
122
123 The "System Libraries" of an executable work include anything, other
124than the work as a whole, that (a) is included in the normal form of
125packaging a Major Component, but which is not part of that Major
126Component, and (b) serves only to enable use of the work with that
127Major Component, or to implement a Standard Interface for which an
128implementation is available to the public in source code form. A
129"Major Component", in this context, means a major essential component
130(kernel, window system, and so on) of the specific operating system
131(if any) on which the executable work runs, or a compiler used to
132produce the work, or an object code interpreter used to run it.
133
134 The "Corresponding Source" for a work in object code form means all
135the source code needed to generate, install, and (for an executable
136work) run the object code and to modify the work, including scripts to
137control those activities. However, it does not include the work's
138System Libraries, or general-purpose tools or generally available free
139programs which are used unmodified in performing those activities but
140which are not part of the work. For example, Corresponding Source
141includes interface definition files associated with source files for
142the work, and the source code for shared libraries and dynamically
143linked subprograms that the work is specifically designed to require,
144such as by intimate data communication or control flow between those
145subprograms and other parts of the work.
146
147 The Corresponding Source need not include anything that users
148can regenerate automatically from other parts of the Corresponding
149Source.
150
151 The Corresponding Source for a work in source code form is that
152same work.
153
154 2. Basic Permissions.
155
156 All rights granted under this License are granted for the term of
157copyright on the Program, and are irrevocable provided the stated
158conditions are met. This License explicitly affirms your unlimited
159permission to run the unmodified Program. The output from running a
160covered work is covered by this License only if the output, given its
161content, constitutes a covered work. This License acknowledges your
162rights of fair use or other equivalent, as provided by copyright law.
163
164 You may make, run and propagate covered works that you do not
165convey, without conditions so long as your license otherwise remains
166in force. You may convey covered works to others for the sole purpose
167of having them make modifications exclusively for you, or provide you
168with facilities for running those works, provided that you comply with
169the terms of this License in conveying all material for which you do
170not control copyright. Those thus making or running the covered works
171for you must do so exclusively on your behalf, under your direction
172and control, on terms that prohibit them from making any copies of
173your copyrighted material outside their relationship with you.
174
175 Conveying under any other circumstances is permitted solely under
176the conditions stated below. Sublicensing is not allowed; section 10
177makes it unnecessary.
178
179 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
180
181 No covered work shall be deemed part of an effective technological
182measure under any applicable law fulfilling obligations under article
18311 of the WIPO copyright treaty adopted on 20 December 1996, or
184similar laws prohibiting or restricting circumvention of such
185measures.
186
187 When you convey a covered work, you waive any legal power to forbid
188circumvention of technological measures to the extent such circumvention
189is effected by exercising rights under this License with respect to
190the covered work, and you disclaim any intention to limit operation or
191modification of the work as a means of enforcing, against the work's
192users, your or third parties' legal rights to forbid circumvention of
193technological measures.
194
195 4. Conveying Verbatim Copies.
196
197 You may convey verbatim copies of the Program's source code as you
198receive it, in any medium, provided that you conspicuously and
199appropriately publish on each copy an appropriate copyright notice;
200keep intact all notices stating that this License and any
201non-permissive terms added in accord with section 7 apply to the code;
202keep intact all notices of the absence of any warranty; and give all
203recipients a copy of this License along with the Program.
204
205 You may charge any price or no price for each copy that you convey,
206and you may offer support or warranty protection for a fee.
207
208 5. Conveying Modified Source Versions.
209
210 You may convey a work based on the Program, or the modifications to
211produce it from the Program, in the form of source code under the
212terms of section 4, provided that you also meet all of these conditions:
213
214 a) The work must carry prominent notices stating that you modified
215 it, and giving a relevant date.
216
217 b) The work must carry prominent notices stating that it is
218 released under this License and any conditions added under section
219 7. This requirement modifies the requirement in section 4 to
220 "keep intact all notices".
221
222 c) You must license the entire work, as a whole, under this
223 License to anyone who comes into possession of a copy. This
224 License will therefore apply, along with any applicable section 7
225 additional terms, to the whole of the work, and all its parts,
226 regardless of how they are packaged. This License gives no
227 permission to license the work in any other way, but it does not
228 invalidate such permission if you have separately received it.
229
230 d) If the work has interactive user interfaces, each must display
231 Appropriate Legal Notices; however, if the Program has interactive
232 interfaces that do not display Appropriate Legal Notices, your
233 work need not make them do so.
234
235 A compilation of a covered work with other separate and independent
236works, which are not by their nature extensions of the covered work,
237and which are not combined with it such as to form a larger program,
238in or on a volume of a storage or distribution medium, is called an
239"aggregate" if the compilation and its resulting copyright are not
240used to limit the access or legal rights of the compilation's users
241beyond what the individual works permit. Inclusion of a covered work
242in an aggregate does not cause this License to apply to the other
243parts of the aggregate.
244
245 6. Conveying Non-Source Forms.
246
247 You may convey a covered work in object code form under the terms
248of sections 4 and 5, provided that you also convey the
249machine-readable Corresponding Source under the terms of this License,
250in one of these ways:
251
252 a) Convey the object code in, or embodied in, a physical product
253 (including a physical distribution medium), accompanied by the
254 Corresponding Source fixed on a durable physical medium
255 customarily used for software interchange.
256
257 b) Convey the object code in, or embodied in, a physical product
258 (including a physical distribution medium), accompanied by a
259 written offer, valid for at least three years and valid for as
260 long as you offer spare parts or customer support for that product
261 model, to give anyone who possesses the object code either (1) a
262 copy of the Corresponding Source for all the software in the
263 product that is covered by this License, on a durable physical
264 medium customarily used for software interchange, for a price no
265 more than your reasonable cost of physically performing this
266 conveying of source, or (2) access to copy the
267 Corresponding Source from a network server at no charge.
268
269 c) Convey individual copies of the object code with a copy of the
270 written offer to provide the Corresponding Source. This
271 alternative is allowed only occasionally and noncommercially, and
272 only if you received the object code with such an offer, in accord
273 with subsection 6b.
274
275 d) Convey the object code by offering access from a designated
276 place (gratis or for a charge), and offer equivalent access to the
277 Corresponding Source in the same way through the same place at no
278 further charge. You need not require recipients to copy the
279 Corresponding Source along with the object code. If the place to
280 copy the object code is a network server, the Corresponding Source
281 may be on a different server (operated by you or a third party)
282 that supports equivalent copying facilities, provided you maintain
283 clear directions next to the object code saying where to find the
284 Corresponding Source. Regardless of what server hosts the
285 Corresponding Source, you remain obligated to ensure that it is
286 available for as long as needed to satisfy these requirements.
287
288 e) Convey the object code using peer-to-peer transmission, provided
289 you inform other peers where the object code and Corresponding
290 Source of the work are being offered to the general public at no
291 charge under subsection 6d.
292
293 A separable portion of the object code, whose source code is excluded
294from the Corresponding Source as a System Library, need not be
295included in conveying the object code work.
296
297 A "User Product" is either (1) a "consumer product", which means any
298tangible personal property which is normally used for personal, family,
299or household purposes, or (2) anything designed or sold for incorporation
300into a dwelling. In determining whether a product is a consumer product,
301doubtful cases shall be resolved in favor of coverage. For a particular
302product received by a particular user, "normally used" refers to a
303typical or common use of that class of product, regardless of the status
304of the particular user or of the way in which the particular user
305actually uses, or expects or is expected to use, the product. A product
306is a consumer product regardless of whether the product has substantial
307commercial, industrial or non-consumer uses, unless such uses represent
308the only significant mode of use of the product.
309
310 "Installation Information" for a User Product means any methods,
311procedures, authorization keys, or other information required to install
312and execute modified versions of a covered work in that User Product from
313a modified version of its Corresponding Source. The information must
314suffice to ensure that the continued functioning of the modified object
315code is in no case prevented or interfered with solely because
316modification has been made.
317
318 If you convey an object code work under this section in, or with, or
319specifically for use in, a User Product, and the conveying occurs as
320part of a transaction in which the right of possession and use of the
321User Product is transferred to the recipient in perpetuity or for a
322fixed term (regardless of how the transaction is characterized), the
323Corresponding Source conveyed under this section must be accompanied
324by the Installation Information. But this requirement does not apply
325if neither you nor any third party retains the ability to install
326modified object code on the User Product (for example, the work has
327been installed in ROM).
328
329 The requirement to provide Installation Information does not include a
330requirement to continue to provide support service, warranty, or updates
331for a work that has been modified or installed by the recipient, or for
332the User Product in which it has been modified or installed. Access to a
333network may be denied when the modification itself materially and
334adversely affects the operation of the network or violates the rules and
335protocols for communication across the network.
336
337 Corresponding Source conveyed, and Installation Information provided,
338in accord with this section must be in a format that is publicly
339documented (and with an implementation available to the public in
340source code form), and must require no special password or key for
341unpacking, reading or copying.
342
343 7. Additional Terms.
344
345 "Additional permissions" are terms that supplement the terms of this
346License by making exceptions from one or more of its conditions.
347Additional permissions that are applicable to the entire Program shall
348be treated as though they were included in this License, to the extent
349that they are valid under applicable law. If additional permissions
350apply only to part of the Program, that part may be used separately
351under those permissions, but the entire Program remains governed by
352this License without regard to the additional permissions.
353
354 When you convey a copy of a covered work, you may at your option
355remove any additional permissions from that copy, or from any part of
356it. (Additional permissions may be written to require their own
357removal in certain cases when you modify the work.) You may place
358additional permissions on material, added by you to a covered work,
359for which you have or can give appropriate copyright permission.
360
361 Notwithstanding any other provision of this License, for material you
362add to a covered work, you may (if authorized by the copyright holders of
363that material) supplement the terms of this License with terms:
364
365 a) Disclaiming warranty or limiting liability differently from the
366 terms of sections 15 and 16 of this License; or
367
368 b) Requiring preservation of specified reasonable legal notices or
369 author attributions in that material or in the Appropriate Legal
370 Notices displayed by works containing it; or
371
372 c) Prohibiting misrepresentation of the origin of that material, or
373 requiring that modified versions of such material be marked in
374 reasonable ways as different from the original version; or
375
376 d) Limiting the use for publicity purposes of names of licensors or
377 authors of the material; or
378
379 e) Declining to grant rights under trademark law for use of some
380 trade names, trademarks, or service marks; or
381
382 f) Requiring indemnification of licensors and authors of that
383 material by anyone who conveys the material (or modified versions of
384 it) with contractual assumptions of liability to the recipient, for
385 any liability that these contractual assumptions directly impose on
386 those licensors and authors.
387
388 All other non-permissive additional terms are considered "further
389restrictions" within the meaning of section 10. If the Program as you
390received it, or any part of it, contains a notice stating that it is
391governed by this License along with a term that is a further
392restriction, you may remove that term. If a license document contains
393a further restriction but permits relicensing or conveying under this
394License, you may add to a covered work material governed by the terms
395of that license document, provided that the further restriction does
396not survive such relicensing or conveying.
397
398 If you add terms to a covered work in accord with this section, you
399must place, in the relevant source files, a statement of the
400additional terms that apply to those files, or a notice indicating
401where to find the applicable terms.
402
403 Additional terms, permissive or non-permissive, may be stated in the
404form of a separately written license, or stated as exceptions;
405the above requirements apply either way.
406
407 8. Termination.
408
409 You may not propagate or modify a covered work except as expressly
410provided under this License. Any attempt otherwise to propagate or
411modify it is void, and will automatically terminate your rights under
412this License (including any patent licenses granted under the third
413paragraph of section 11).
414
415 However, if you cease all violation of this License, then your
416license from a particular copyright holder is reinstated (a)
417provisionally, unless and until the copyright holder explicitly and
418finally terminates your license, and (b) permanently, if the copyright
419holder fails to notify you of the violation by some reasonable means
420prior to 60 days after the cessation.
421
422 Moreover, your license from a particular copyright holder is
423reinstated permanently if the copyright holder notifies you of the
424violation by some reasonable means, this is the first time you have
425received notice of violation of this License (for any work) from that
426copyright holder, and you cure the violation prior to 30 days after
427your receipt of the notice.
428
429 Termination of your rights under this section does not terminate the
430licenses of parties who have received copies or rights from you under
431this License. If your rights have been terminated and not permanently
432reinstated, you do not qualify to receive new licenses for the same
433material under section 10.
434
435 9. Acceptance Not Required for Having Copies.
436
437 You are not required to accept this License in order to receive or
438run a copy of the Program. Ancillary propagation of a covered work
439occurring solely as a consequence of using peer-to-peer transmission
440to receive a copy likewise does not require acceptance. However,
441nothing other than this License grants you permission to propagate or
442modify any covered work. These actions infringe copyright if you do
443not accept this License. Therefore, by modifying or propagating a
444covered work, you indicate your acceptance of this License to do so.
445
446 10. Automatic Licensing of Downstream Recipients.
447
448 Each time you convey a covered work, the recipient automatically
449receives a license from the original licensors, to run, modify and
450propagate that work, subject to this License. You are not responsible
451for enforcing compliance by third parties with this License.
452
453 An "entity transaction" is a transaction transferring control of an
454organization, or substantially all assets of one, or subdividing an
455organization, or merging organizations. If propagation of a covered
456work results from an entity transaction, each party to that
457transaction who receives a copy of the work also receives whatever
458licenses to the work the party's predecessor in interest had or could
459give under the previous paragraph, plus a right to possession of the
460Corresponding Source of the work from the predecessor in interest, if
461the predecessor has it or can get it with reasonable efforts.
462
463 You may not impose any further restrictions on the exercise of the
464rights granted or affirmed under this License. For example, you may
465not impose a license fee, royalty, or other charge for exercise of
466rights granted under this License, and you may not initiate litigation
467(including a cross-claim or counterclaim in a lawsuit) alleging that
468any patent claim is infringed by making, using, selling, offering for
469sale, or importing the Program or any portion of it.
470
471 11. Patents.
472
473 A "contributor" is a copyright holder who authorizes use under this
474License of the Program or a work on which the Program is based. The
475work thus licensed is called the contributor's "contributor version".
476
477 A contributor's "essential patent claims" are all patent claims
478owned or controlled by the contributor, whether already acquired or
479hereafter acquired, that would be infringed by some manner, permitted
480by this License, of making, using, or selling its contributor version,
481but do not include claims that would be infringed only as a
482consequence of further modification of the contributor version. For
483purposes of this definition, "control" includes the right to grant
484patent sublicenses in a manner consistent with the requirements of
485this License.
486
487 Each contributor grants you a non-exclusive, worldwide, royalty-free
488patent license under the contributor's essential patent claims, to
489make, use, sell, offer for sale, import and otherwise run, modify and
490propagate the contents of its contributor version.
491
492 In the following three paragraphs, a "patent license" is any express
493agreement or commitment, however denominated, not to enforce a patent
494(such as an express permission to practice a patent or covenant not to
495sue for patent infringement). To "grant" such a patent license to a
496party means to make such an agreement or commitment not to enforce a
497patent against the party.
498
499 If you convey a covered work, knowingly relying on a patent license,
500and the Corresponding Source of the work is not available for anyone
501to copy, free of charge and under the terms of this License, through a
502publicly available network server or other readily accessible means,
503then you must either (1) cause the Corresponding Source to be so
504available, or (2) arrange to deprive yourself of the benefit of the
505patent license for this particular work, or (3) arrange, in a manner
506consistent with the requirements of this License, to extend the patent
507license to downstream recipients. "Knowingly relying" means you have
508actual knowledge that, but for the patent license, your conveying the
509covered work in a country, or your recipient's use of the covered work
510in a country, would infringe one or more identifiable patents in that
511country that you have reason to believe are valid.
512
513 If, pursuant to or in connection with a single transaction or
514arrangement, you convey, or propagate by procuring conveyance of, a
515covered work, and grant a patent license to some of the parties
516receiving the covered work authorizing them to use, propagate, modify
517or convey a specific copy of the covered work, then the patent license
518you grant is automatically extended to all recipients of the covered
519work and works based on it.
520
521 A patent license is "discriminatory" if it does not include within
522the scope of its coverage, prohibits the exercise of, or is
523conditioned on the non-exercise of one or more of the rights that are
524specifically granted under this License. You may not convey a covered
525work if you are a party to an arrangement with a third party that is
526in the business of distributing software, under which you make payment
527to the third party based on the extent of your activity of conveying
528the work, and under which the third party grants, to any of the
529parties who would receive the covered work from you, a discriminatory
530patent license (a) in connection with copies of the covered work
531conveyed by you (or copies made from those copies), or (b) primarily
532for and in connection with specific products or compilations that
533contain the covered work, unless you entered into that arrangement,
534or that patent license was granted, prior to 28 March 2007.
535
536 Nothing in this License shall be construed as excluding or limiting
537any implied license or other defenses to infringement that may
538otherwise be available to you under applicable patent law.
539
540 12. No Surrender of Others' Freedom.
541
542 If conditions are imposed on you (whether by court order, agreement or
543otherwise) that contradict the conditions of this License, they do not
544excuse you from the conditions of this License. If you cannot convey a
545covered work so as to satisfy simultaneously your obligations under this
546License and any other pertinent obligations, then as a consequence you may
547not convey it at all. For example, if you agree to terms that obligate you
548to collect a royalty for further conveying from those to whom you convey
549the Program, the only way you could satisfy both those terms and this
550License would be to refrain entirely from conveying the Program.
551
552 13. Use with the GNU Affero General Public License.
553
554 Notwithstanding any other provision of this License, you have
555permission to link or combine any covered work with a work licensed
556under version 3 of the GNU Affero General Public License into a single
557combined work, and to convey the resulting work. The terms of this
558License will continue to apply to the part which is the covered work,
559but the special requirements of the GNU Affero General Public License,
560section 13, concerning interaction through a network will apply to the
561combination as such.
562
563 14. Revised Versions of this License.
564
565 The Free Software Foundation may publish revised and/or new versions of
566the GNU General Public License from time to time. Such new versions will
567be similar in spirit to the present version, but may differ in detail to
568address new problems or concerns.
569
570 Each version is given a distinguishing version number. If the
571Program specifies that a certain numbered version of the GNU General
572Public License "or any later version" applies to it, you have the
573option of following the terms and conditions either of that numbered
574version or of any later version published by the Free Software
575Foundation. If the Program does not specify a version number of the
576GNU General Public License, you may choose any version ever published
577by the Free Software Foundation.
578
579 If the Program specifies that a proxy can decide which future
580versions of the GNU General Public License can be used, that proxy's
581public statement of acceptance of a version permanently authorizes you
582to choose that version for the Program.
583
584 Later license versions may give you additional or different
585permissions. However, no additional obligations are imposed on any
586author or copyright holder as a result of your choosing to follow a
587later version.
588
589 15. Disclaimer of Warranty.
590
591 THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
592APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
593HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
594OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
595THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
596PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
597IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
598ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
599
600 16. Limitation of Liability.
601
602 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
603WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
604THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
605GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
606USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
607DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
608PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
609EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
610SUCH DAMAGES.
611
612 17. Interpretation of Sections 15 and 16.
613
614 If the disclaimer of warranty and limitation of liability provided
615above cannot be given local legal effect according to their terms,
616reviewing courts shall apply local law that most closely approximates
617an absolute waiver of all civil liability in connection with the
618Program, unless a warranty or assumption of liability accompanies a
619copy of the Program in return for a fee.
620
621 END OF TERMS AND CONDITIONS
622
623 How to Apply These Terms to Your New Programs
624
625 If you develop a new program, and you want it to be of the greatest
626possible use to the public, the best way to achieve this is to make it
627free software which everyone can redistribute and change under these terms.
628
629 To do so, attach the following notices to the program. It is safest
630to attach them to the start of each source file to most effectively
631state the exclusion of warranty; and each file should have at least
632the "copyright" line and a pointer to where the full notice is found.
633
634 <one line to give the program's name and a brief idea of what it does.>
635 Copyright (C) <year> <name of author>
636
637 This program is free software: you can redistribute it and/or modify
638 it under the terms of the GNU General Public License as published by
639 the Free Software Foundation, either version 3 of the License, or
640 (at your option) any later version.
641
642 This program is distributed in the hope that it will be useful,
643 but WITHOUT ANY WARRANTY; without even the implied warranty of
644 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
645 GNU General Public License for more details.
646
647 You should have received a copy of the GNU General Public License
648 along with this program. If not, see <http://www.gnu.org/licenses/>.
649
650Also add information on how to contact you by electronic and paper mail.
651
652 If the program does terminal interaction, make it output a short
653notice like this when it starts in an interactive mode:
654
655 <program> Copyright (C) <year> <name of author>
656 This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
657 This is free software, and you are welcome to redistribute it
658 under certain conditions; type `show c' for details.
659
660The hypothetical commands `show w' and `show c' should show the appropriate
661parts of the General Public License. Of course, your program's commands
662might be different; for a GUI interface, you would use an "about box".
663
664 You should also get your employer (if you work as a programmer) or school,
665if any, to sign a "copyright disclaimer" for the program, if necessary.
666For more information on this, and how to apply and follow the GNU GPL, see
667<http://www.gnu.org/licenses/>.
668
669 The GNU General Public License does not permit incorporating your program
670into proprietary programs. If your program is a subroutine library, you
671may consider it more useful to permit linking proprietary applications with
672the library. If this is what you want to do, use the GNU Lesser General
673Public License instead of this License. But first, please read
674<http://www.gnu.org/philosophy/why-not-lgpl.html>.
0675
=== renamed file 'COPYING' => 'COPYING.moved'
=== added file 'ChangeLog'
--- ChangeLog 1970-01-01 00:00:00 +0000
+++ ChangeLog 2010-11-20 07:24:56 +0000
@@ -0,0 +1,29184 @@
12010-08-04 Robert Millan <rmh@gnu.org>
2
3 Support OpenSolaris in ZFS device resolution.
4
5 * configure.ac: Check for getmntany().
6 * kern/emu/misc.c [HAVE_GETMNTANY]: Include `<sys/mnttab.h>'.
7 [HAVE_GETMNTANY] (grub_find_zpool_from_mount_point): Add OpenSolaris
8 support.
9
102010-08-03 Robert Millan <rmh@gnu.org>
11
12 Fix grub-emu build.
13
14 * include/grub/util/misc.h: Move `<grub/util/libzfs.h>' to ...
15 * include/grub/emu/misc.h: ... here.
16
17 * include/grub/util/misc.h (grub_get_libzfs_handle): Move function ...
18 * include/grub/emu/misc.h (grub_get_libzfs_handle): ... here.
19
20 * util/misc.c: Remove `<grub/util/libzfs.h>'.
21 [HAVE_LIBZFS] (libzfs_handle, fini_libzfs)
22 (grub_get_libzfs_handle): Move to ...
23 * kern/emu/misc.c [HAVE_LIBZFS] (__libzfs_handle, fini_libzfs)
24 (grub_get_libzfs_handle): ... here.
25
262010-08-03 BVK Chaitanya <bvk.groups@gmail.com>
27
28 * script/execute.c (grub_script_execute_cmdline): Check for NULL
29 as command name case.
30
312010-08-02 Colin Watson <cjwatson@ubuntu.com>
32
33 * disk/raid.c (insert_array): Select unique numbers for named arrays
34 as well, for use as keys in the disk cache.
35
362010-08-01 Robert Millan <rmh@gnu.org>
37
38 * util/grub.d/10_kfreebsd.in: Initialize ${kfreebsd_device} as the
39 kFreeBSD device name, except on ZFS where the filesystem label is
40 used.
41 (kfreebsd_entry): On ZFS root, load `opensolaris.ko', `zfs.ko' and
42 `/boot/zfs/zpool.cache'.
43 Set mountfrom kernel variable using ${kfreebsd_device}.
44
452010-08-01 Robert Millan <rmh@gnu.org>
46
47 Make it even harder to use uninitialized `libzfs_handle' (and
48 make the interface a bit simpler).
49
50 * include/grub/util/misc.h (grub_util_init_libzfs)
51 (libzfs_handle): Remove.
52 (grub_get_libzfs_handle): New prototype.
53
54 * util/misc.c [HAVE_LIBZFS] (libzfs_handle): Add `static'
55 attribute.
56 (grub_util_init_libzfs): Remove.
57 (grub_get_libzfs_handle): New function.
58
59 * kern/emu/getroot.c (find_root_device_from_libzfs): Use
60 grub_get_libzfs_handle() to obtain a libzfs handle instead of
61 accessing `libzfs_handle' directly.
62
632010-08-01 Robert Millan <rmh@gnu.org>
64
65 * include/grub/emu/misc.h (grub_find_mount_point_from_dir)
66 (grub_find_zpool_from_mount_point): New function prototypes.
67
68 * kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `<sys/mount.h>' to ...
69 * kern/emu/misc.c [HAVE_GETFSSTAT]: ... here.
70
71 * kern/emu/getroot.c (find_mount_point_from_dir): Move to ...
72 * kern/emu/misc.c (grub_find_mount_point_from_dir): ... this. Remove
73 `static' attribute.
74
75 * kern/emu/getroot.c (find_root_device_from_libzfs): Split code for
76 finding zpool from mount point into ...
77 * kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this.
78
79 * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When
80 requested path is part of a ZFS pool, use
81 grub_find_zpool_from_mount_point() to detect its filesystem name,
82 and generate a path with `/fsname@path' syntax.
83
842010-08-01 Colin Watson <cjwatson@ubuntu.com>
85
86 * include/grub/util/libzfs.h (libzfs_init): Set argument list to
87 (void) rather than () so that this is a proper prototype.
88
892010-08-01 Vladimir Serbinenko <phcoder@gmail.com>
90
91 * lib/arg.c (grub_arg_show_help): Add the necessary spacing.
92
932010-08-01 Vladimir Serbinenko <phcoder@gmail.com>
94
95 * kern/emu/getroot.c (find_mount_point_from_dir): Compile only if
96 [HAVE_LIBZFS && HAVE_LIBNVPAIR]
97
982010-08-01 Colin Watson <cjwatson@ubuntu.com>
99
100 * util/grub-mkrescue.in: Remove ${efi_dir} after building efi.img.
101
1022010-08-01 Colin Watson <cjwatson@ubuntu.com>
103
104 * script/yylex.l (NAME): Remove [:digit:], redundant with [:alnum:].
105
1062010-08-01 Colin Watson <cjwatson@ubuntu.com>
107
108 * docs/grub.texi (Simple configuration): Document GRUB_CMDLINE_XEN
109 and GRUB_CMDLINE_XEN_DEFAULT. Recommend setting
110 GRUB_GFXPAYLOAD_LINUX=text rather than unsetting it in order to
111 disable gfxpayload.
112 (Shell-like scripting): Add real content.
113 (Serial terminal): Suggest `terminal_input serial; terminal_output
114 serial' rather than putting the two commands on separate lines,
115 since console input will be inoperative after the first command.
116 (menuentry): Document --class, --users, and --hotkey options.
117 (terminfo): Describe what `visually-ordered UTF-8' means (thanks,
118 Vladimir Serbinenko).
119
1202010-08-01 Vladimir Serbinenko <phcoder@gmail.com>
1212010-08-01 Colin Watson <cjwatson@ubuntu.com>
122
123 * kern/misc.c (grub_memset): Optimise to reduce cache stalls.
124
1252010-08-01 Robert Millan <rmh@gnu.org>
126
127 * include/grub/emu/misc.h (grub_find_mount_point_from_dir)
128 (grub_find_zpool_from_mount_point): New function prototypes.
129
130 * kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `<sys/mount.h>' to ...
131 * kern/emu/misc.c [HAVE_GETFSSTAT]: ... here.
132
133 * kern/emu/getroot.c (find_mount_point_from_dir): Move to ...
134 * kern/emu/misc.c (grub_find_mount_point_from_dir): ... this. Remove
135 `static' attribute.
136
137 * kern/emu/getroot.c (find_root_device_from_libzfs): Split code for
138 finding zpool from mount point into ...
139 * kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this.
140
141 * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When
142 requested path is part of a ZFS pool, use
143 grub_find_zpool_from_mount_point() to detect its filesystem name,
144 and generate a path with `/fsname@path' syntax.
145
1462010-08-01 Robert Millan <rmh@gnu.org>
147
148 Prevent accidental use of uninitialized libzfs_handle.
149
150 * util/grub-probe.c (main): Move grub_util_init_libzfs() call to ...
151 * kern/emu/getroot.c (find_root_device_from_libzfs): ... here.
152 * util/misc.c (grub_util_init_libzfs): Make this function idempotent.
153
1542010-08-01 Colin Watson <cjwatson@ubuntu.com>
155
156 * util/grub.d/20_linux_xen.in: Don't use UUID for LVM root (matching
157 util/grub.d/10_linux.in). Fixes Debian bug #591093.
158
1592010-08-01 Robert Millan <rmh@gnu.org>
160
161 * kern/emu/getroot.c: Include `<grub/util/misc.h>'.
162
1632010-07-31 Robert Millan <rmh@gnu.org>
164
165 * util/grub.d/10_kfreebsd.in: Make module handling more generic.
166
1672010-07-31 Robert Millan <rmh@gnu.org>
168
169 * kern/emu/misc.c: Add missing license header.
170
1712010-07-31 Robert Millan <rmh@gnu.org>
172
173 * configure.ac: Check for `libzfs.h' and `libnvpair.h'.
174
175 * include/grub/util/libnvpair.h: Include `<config.h>'.
176 [HAVE_LIBNVPAIR_H]: Include `<libnvpair.h>' instead of
177 declaring libnvpair prototypes ourselves.
178 * include/grub/util/libzfs.h: Include `<config.h>'.
179 [HAVE_LIBZFS_H]: Include `<libzfs.h>' instead of
180 declaring libzfs prototypes ourselves.
181
182 (libzfs_handle): Moved to ...
183 * include/grub/util/misc.h (libzfs_handle): ... here.
184 Include `<grub/util/libzfs.h>'.
185
1862010-07-30 Robert Millan <rmh@gnu.org>
187
188 * include/grub/emu/misc.h: Add missing license header.
189
1902010-07-30 Robert Millan <rmh@gnu.org>
191
192 Enable `grub-probe -t device' resolution on ZFS.
193
194 * configure.ac: Check for getfsstat(), libzfs and libnvpair.
195 * include/grub/util/libnvpair.h: New file.
196 * include/grub/util/libzfs.h: New file.
197
198 * kern/emu/getroot.c: Include `<assert.h>' and `<error.h>'.
199 [HAVE_LIBZFS && HAVE_LIBNVPAIR]: Include `<grub/util/libzfs.h>' and
200 `<grub/util/libnvpair.h>'.
201 [HAVE_GETFSSTAT]: Include `<sys/mount.h>'.
202
203 (find_mount_point_from_dir): New static function.
204 [HAVE_LIBZFS && HAVE_LIBNVPAIR] (find_root_device_from_libzfs): New
205 function.
206 [HAVE_LIBZFS && HAVE_LIBNVPAIR] (grub_guess_root_device): Use
207 find_root_device_from_libzfs() before ressorting to find_root_device().
208
209 * include/grub/util/misc.h (grub_util_init_libzfs): New function
210 prototype.
211 * util/misc.c: Include `<grub/util/libzfs.h>'.
212 (grub_util_init_libzfs): New function.
213 [HAVE_LIBZFS] (libzfs_handle): New global variable.
214 [HAVE_LIBZFS] (fini_libzfs): New static function.
215 (grub_util_init_libzfs): New function.
216 * util/grub-probe.c (main): Call grub_util_init_libzfs().
217
2182010-07-30 Robert Millan <rmh@gnu.org>
219
220 * include/grub/emu/misc.h (grub_make_system_path_relative_to_its_root)
221 (xmalloc, xrealloc, xstrdup, xasprintf): Add
222 `warn_unused_result' attribute.
223 * include/grub/misc.h (grub_strdup, grub_strndup, grub_strlen)
224 (grub_xasprintf, grub_xvasprintf): Likewise.
225 * include/grub/emu/misc.h (xasprintf): Remove duplicate prototype.
226
2272010-07-29 Robert Millan <rmh@gnu.org>
228
229 * util/grub-probe.c (PRINT_FS_LABEL): New enum value.
230 (probe): Handle `PRINT_FS_LABEL'.
231 (main): Handle `-t fs_label'.
232
2332010-07-29 Robert Millan <rmh@gnu.org>
234
235 * configure.ac: Remove grub-mkisofs checks.
236
2372010-07-28 Vladimir Serbinenko <phcoder@gmail.com>
238
239 * util/ieee1275/grub-install.in: Don't use empty grub_device.
240 Reported by: Lennart Sorensen.
241
2422010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
243
244 * util/grub.d/00_header.in: Remove compatibility with terminal.mod
245 prior to terminal_input/terminal_output separation. It's been over 1.5
246 years and those versions weren't widely deployed.
247
2482010-07-22 Colin Watson <cjwatson@ubuntu.com>
249
250 * disk/raid.c (insert_array): Don't count named arrays when looking
251 for unused array numbers.
252 Reported and tested by: Michael Guntsche.
253
2542010-07-20 Colin Watson <cjwatson@ubuntu.com>
255
256 * bus/usb/emu/usb.c (grub_usb_poll_devices): Add a dummy
257 implementation of this so that grub-emu links again, with a note
258 that this should support hotplugging in the future.
259
2602010-07-20 Colin Watson <cjwatson@ubuntu.com>
261
262 * kern/emu/getroot.c (grub_util_get_grub_dev): Use xasprintf.
263
2642010-07-20 Colin Watson <cjwatson@ubuntu.com>
265
266 * disk/loopback.c (grub_cmd_loopback): Don't leak a grub_file_t
267 handle on failure.
268 (grub_loopback_close): Remove empty function.
269 (grub_loopback_dev): Remove close method.
270
2712010-07-20 Colin Watson <cjwatson@ubuntu.com>
272
273 Disable EFI cursor when the EFI console becomes inactive.
274
275 * term/efi/console.c (grub_efi_console_init): New function.
276 (grub_efi_console_fini): New function.
277 (grub_console_term_output): Register init and fini methods.
278
2792010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
280
281 * tests/util/grub-shell-tester.in: Remove bashism and declare as
282 sh script.
283
2842010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
285
286 * disk/loopback.c (grub_loopback): Replace filename with file.
287 (delete_loopback): Handle new semantics.
288 (grub_cmd_loopback): Likewise.
289 (grub_loopback_iterate): Likewise.
290 (grub_loopback_close): Likewise.
291
2922010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
293
294 * util/i386/efi/grub-install.in: Revert to platform-specific behaviour
295 with -p "".
296 Reported by: Tito Keitel.
297
2982010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
299
300 * docs/grub.texi (Naming convention): Document new naming convention.
301
3022010-07-20 Vadim Solomin <vadic052@gmail.com>
3032010-07-20 Colin Watson <cjwatson@ubuntu.com>
304
305 Generate device.map in something closer to the old ordering.
306
307 * util/deviceiter.c (struct device): New declaration.
308 (compare_file_names): Rename to ...
309 (compare_devices): ... this. Sort by kernel name in preference to
310 the stable by-id name, but keep the latter as a fallback comparison.
311 Update header comment.
312 (grub_util_iterate_devices) [__linux__]: Construct and sort an array
313 of `struct device' rather than of plain file names.
314
3152010-07-20 Thomas Frauendorfer <Thomas.Frauendorfer@googlemail.com>
316
317 * lib/i386/relocator_asm.S [! __x86_64__]: Don't try to disable amd64
318 on i386.
319
3202010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
321
322 * commands/acpi.c (setup_common_tables): Use sizeof instead of
323 hardcoding size.
324 (setv1table): Likewise.
325
3262010-07-20 Colin Watson <cjwatson@ubuntu.com>
327
328 * disk/raid.c (insert_array): Use md/%s to name mdadm 1.x devices,
329 removing the homehost if present.
330 * kern/emu/getroot.c (get_mdadm_name) [__linux__]: New function.
331 (grub_util_get_grub_dev): Use md/%s to name mdadm 1.x devices,
332 removing the homehost if present.
333 (grub_util_get_grub_dev) [__linux__]: Get the array name from mdadm
334 if possible.
335 * util/i386/pc/grub-setup.c (main): Handle md/* devices.
336
337 * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Add start_sector
338 parameter. Set its pointer target to 0.
339 * disk/mdraid_linux.c (grub_mdraid_detect): Add start_sector
340 parameter. Set its pointer target to 0 for 0.9 metadata, or to the
341 `data_offset' value from the superblock for 1.x metadata.
342 * disk/raid.c (grub_raid_read): Offset reads by the start sector of
343 data on the device.
344 (insert_array): Record the start sector of data on the device.
345 (grub_raid_register): Pass start_sector parameters to
346 grub_raid_list->detect and insert_array.
347 * include/grub/raid.h (struct grub_raid_array): Add start_sector
348 member.
349 (struct grub_raid): Add start_sector parameter to `detect'.
350
351 * disk/mdraid_linux.c (struct grub_raid_super_1x): Remove
352 __attribute__ ((packed)), leaving a comment.
353 (grub_mdraid_detect): Split out 0.9 and 1.x detection to ...
354 (grub_mdraid_detect_09): ... here and ...
355 (grub_mdraid_detect_1x): ... here.
356
3572010-07-20 Peter Henn <peter.henn@web.de>
358
359 * disk/mdraid_linux.c (grub_mdraid_detect): Fix calculation of 1.x
360 chunk size and disk size, which are already given as sector counts
361 as distinct from the 0.90 units. Fetch the correct device number
362 from the role table instead of using the table index.
363
3642010-07-20 Felix Zielcke <fzielcke@z-51.de>
365
366 * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Set array->name to NULL.
367 * disk/mdraid_linux.c (grub_raid_super_1x): New structure.
368 (WriteMostly1): New macro.
369 Set array->name to NULL for metadata format 0.90. Add support for
370 metadata 1.x. Fix some comments.
371 * disk/raid.c (): Add support for name based RAID arrays. Fix a
372 few comments.
373 * util/getroot.c (grub_util_get_grub_dev): Add support for
374 /dev/md/name style devices.
375
3762010-07-20 Colin Watson <cjwatson@ubuntu.com>
377
378 * .bzrignore: Ignore 20_linux_xen.
379
3802010-07-17 Colin Watson <cjwatson@ubuntu.com>
381
382 * util/import_unicode.py: Remove unnecessary imports.
383
3842010-07-17 Aleš Nesrsta <starous@volny.cz>
385
386 Hotplugging and USB hub support.
387
388 * bus/usb/ohci.c (grub_ohci_td): Add convenience fields.
389 (grub_ohci): Likewise.
390 (GRUB_OHCI_REG_CONTROL_BULK_ENABLE): New definition.
391 (GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE): Likewise.
392 (GRUB_OHCI_RESET_CONNECT_CHANGE): Likewise.
393 (GRUB_OHCI_CTRL_EDS): Likewise.
394 (GRUB_OHCI_BULK_EDS): Likewise.
395 (GRUB_OHCI_TDS): Likewise.
396 (GRUB_OHCI_ED_ADDR_MASK): Likewise.
397 (grub_ohci_ed_phys2virt): New function.
398 (grub_ohci_virt_to_phys): Likewise.
399 (grub_ohci_td_phys2virt): Likewise.
400 (grub_ohci_td_virt2phys): Likewise.
401 (grub_ohci_pci_iter): Allocate memory and don't wait for stable
402 attachment.
403 (grub_ohci_find_ed): New function.
404 (grub_ohci_alloc_td): Likewise.
405 (grub_ohci_free_td): Likewise.
406 (grub_ohci_free_tds): Likewise.
407 (grub_ohci_transfer): Use previously allocated memory.
408 (grub_ohci_portstatus): Reset status changed bit.
409 (grub_ohci_detect_dev): Supply status changed.
410 (grub_ohci_fini_hw): Free memory.
411 (grub_ohci_restore_hw): Reallocate memory.
412 * bus/usb/uhci.c (grub_uhci_portstatus): Don't reset on disable.
413 Reset status change.
414 (grub_uhci_detect_dev): Supply status_change.
415 * bus/usb/usb.c (attach_hooks): New var.
416 (grub_usb_device_attach): New function.
417 (grub_usb_register_attach_hook_class): Likewise.
418 (grub_usb_unregister_attach_hook_class): Likewise.
419 * bus/usb/usbhub.c (grub_usb_hub_add_dev): Handle errors correctly.
420 (grub_usb_add_hub): Reset connection changed bit.
421 (attach_root_port): New function.
422 (grub_usb_root_hub): Likewise.
423 (poll_nonroot_hub): Likewise.
424 (grub_usb_poll_devices): Likewise.
425 * commands/usbtest.c (grub_cmd_usbtest): Poll devices before listing.
426 * disk/usbms.c (grub_usbms_open): Use device hooks.
427 (grub_usbms_iterate) :Poll devices.
428 (grub_usbms_finddevs): Split into ...
429 (grub_usbms_attach): ... this ...
430 (grub_usbms_attach): ... and this.
431 * include/grub/usb.h (grub_usb_controller_dev): Supply status_changed
432 in detect_dev.
433 (grub_usb_interface): New fields attached and detach_hook.
434 (grub_usb_attach_hook_class): New type.
435 (grub_usb_attach_desc): New struct.
436 (grub_usb_register_attach_hook_class): New function.
437 (grub_usb_unregister_attach_hook_class): Likewise.
438 (grub_usb_poll_devices): Likewise.
439 (grub_usb_device_attach): Likewise.
440 * include/grub/usbtrans.h (GRUB_USB_HUB_FEATURE_C_CONNECTED): New const.
441 (GRUB_USB_HUB_STATUS_C_CONNECTED): Likewise.
442
4432010-07-17 Vladimir Serbinenko <phcoder@gmail.com>
444
445 * include/grub/bsdlabel.h (GRUB_PC_PARTITION_BSD_LABEL_WHOLE_DISK_PARTITION): New definition.
446 * partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Use FreeBSD
447 delta determination style. Works with most NetBSD partitions too.
448
4492010-07-17 Vladimir Serbinenko <phcoder@gmail.com>
450
451 * kern/partition.c [GRUB_UTIL]: Add missing util/misc.h inclusion.
452 * partmap/bsdlabel.c [GRUB_UTIL]: Likewise.
453
4542010-07-17 Vladimir Serbinenko <phcoder@gmail.com>
455
456 * disk/scsi.c (grub_scsi_open): Fix incorrect pointer dereference.
457
4582010-07-14 Anton Blanchard <anton@samba.org>
459
460 * loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Do not reject
461 ET_DYN files.
462
4632010-07-14 Grégoire Sutre <gregoire.sutre@gmail.com>
464
465 * Makefile.in: Use the substituted @USE_NLS@ instead of ENABLE_NLS.
466
4672010-07-14 Grégoire Sutre <gregoire.sutre@gmail.com>
468
469 * kern/partition.c (grub_partition_check_containment): New function to
470 check that a partition is physically contained in a parent. Since
471 offsets are relative (and non-negative), this reduces to checking that
472 the partition ends before its parent.
473 (grub_partition_map_probe): Discard out-of-range sub-partitions.
474 (grub_partition_iterate): Likewise.
475 * include/grub/partition.h (grub_partition_map): Slightly more detailed
476 comments.
477 * partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Discard
478 partitions that start before their parent, and add debug printfs.
479
4802010-07-13 Colin Watson <cjwatson@ubuntu.com>
481
482 * Makefile.in (.SUFFIX): Spell correctly, as ...
483 (.SUFFIXES): ... this. Fixes bug where `make foo' (where foo is a
484 bare module name without `.mod', e.g. `test') tried to invoke a
485 Modula-2 compiler.
486
4872010-07-13 Colin Watson <cjwatson@ubuntu.com>
488
489 * README: Point to the Info manual.
490
4912010-07-13 Jiro SEKIBA <jir@unicus.jp>
492
493 * fs/nilfs2.c: fix macro NILFS_2ND_SUPER_BLOCK to calculate
494 2nd superblock position from partition size.
495
4962010-07-10 Colin Watson <cjwatson@ubuntu.com>
497
498 * Makefile.in (MAINTAINER_CLEANFILES): Remove
499 unicode/UnicodeData.txt, unicode/BidiMirroring.txt, and
500 unicode/ArabicShaping.txt again; these are inputs to autogen.sh, not
501 outputs.
502
5032010-07-10 Vladimir Serbinenko <phcoder@gmail.com>
504
505 Restructure SCSI .id handling.
506 Reported and tested by: Aleš Nesrsta.
507
508 * disk/ata.c (grub_atapi_close): Removed. All users updated.
509 (grub_atapi_dev): Changed .name to "ata". New field .id.
510 * disk/usbms.c (grub_usbms_close): Removed. All users updated.
511 (grub_usbms_dev): New field .id.
512 * disk/scsi.c (grub_scsi_iterate): Generate name.
513 (grub_scsi_open): Parse name.
514 * include/grub/scsi.h (grub_make_scsi_id): New function.
515 (grub_scsi_dev): Change iterate and open to number instead of naming
516 busses. All users updated.
517 (grub_scsi): Remove name. Add .bus.
518
5192010-07-10 Vladimir Serbinenko <phcoder@gmail.com>
520
521 * commands/help.c (grub_cmd_help): Fix a typo.
522
5232010-07-10 Vladimir Serbinenko <phcoder@gmail.com>
524
525 * normal/term.c (put_glyphs_terminal): Fix state->num_lines counting.
526 Reported and tested by: Colin Watson.
527
5282010-07-10 Vladimir Serbinenko <phcoder@gmail.com>
529
530 * util/grub-mkrescue.in: Don't use tar GNU-ism since it's not necessary
531 in this context.
532
5332010-07-07 Vladimir Serbinenko <phcoder@gmail.com>
534
535 * tests/util/grub-shell.in: Remove bashisms and declare as sh script.
536
5372010-07-07 Colin Watson <cjwatson@ubuntu.com>
538
539 * term/gfxterm.c (grub_gfxterm_background_image_cmd): Fix
540 indentation.
541
5422010-07-06 Colin Watson <cjwatson@ubuntu.com>
543
544 * conf/common.rmk (grub_probe_SOURCES): Add disk/raid5_recover.c
545 and disk/raid6_recover.c.
546 * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
547 * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
548
5492010-07-06 Colin Watson <cjwatson@ubuntu.com>
550
551 * term/gfxterm.c (repaint_schedulded): Rename to ...
552 (repaint_scheduled): ... this. Update all callers.
553 (repaint_was_schedulded): Rename to ...
554 (repaint_was_scheduled): ... this. Update all callers.
555
5562010-07-06 Colin Watson <cjwatson@ubuntu.com>
557
558 * util/deviceiter.c (grub_util_iterate_devices): Skip MD devices,
559 which we expect to be handled by upper layers.
560
5612010-07-06 BVK Chaitanya <bvk.groups@gmail.com>
562
563 * bus/usb/usbhub.c: #include time.h header.
564
5652010-07-06 Colin Watson <cjwatson@ubuntu.com>
566
567 * fs/reiserfs.c (grub_reiserfs_iterate_dir): Zero out first byte of
568 entry_name also for entries without stat blocks (e.g. ".."); fixes
569 corruption of the first entry in a directory.
570
5712010-07-06 Colin Watson <cjwatson@ubuntu.com>
572
573 * util/grub.d/00_header.in: Process GRUB_THEME and GRUB_BACKGROUND
574 after setting gfxterm as the active terminal. GRUB_BACKGROUND
575 doesn't work otherwise.
576
5772010-07-05 Colin Watson <cjwatson@ubuntu.com>
578
579 * docs/grub.texi (Features): Update list of supported file systems.
580 (GNU/Linux): Update for GRUB 2.
581 (Serial terminal): Remove mention of --disable-serial, which was a
582 GRUB Legacy configure option. Update instructions to use
583 `terminal_input' and `terminal_output' rather than `terminal'.
584 (Vendor power-on keys): Copy-edit. Add cross-references to `Simple
585 configuration' and `Installing GRUB using grub-install'.
586 (Menu entry editor): Update for GRUB 2.
587 (terminfo): Add vt100-color, ieee1275, and dumb terminal types.
588 Document new -a, -u, and -v options.
589 (initrd): New section.
590 (initrd16): New section.
591 (linux): New section.
592 (linux16): New section.
593 (search): The `var' argument to `--set' is optional.
594 (GRUB only offers a rescue shell): Go into a little more detail on
595 drive ordering.
596
5972010-07-05 Colin Watson <cjwatson@ubuntu.com>
598
599 * Makefile.in: Set LINGUAS to empty if ENABLE_NLS is undefined.
600
6012010-07-05 Colin Watson <cjwatson@ubuntu.com>
602
603 * Makefile.in (MAINTAINER_CLEANFILES): Add unicode/UnicodeData.txt,
604 unicode/BidiMirroring.txt, unicode/ArabicShaping.txt, and unidata.c.
605
6062010-07-05 Colin Watson <cjwatson@ubuntu.com>
607
608 * util/i386/pc/grub-setup.c (setup): Rename prefix to
609 install_prefix, in line with install_dos_part and install_bsd_part.
610 Add new prefix variable, which is copied to install_prefix after
611 comparing core.img in memory with the one read from disk in the
612 no-embedding case, and use that rather than overwriting
613 install_prefix immediately when installing to a partition.
614 Fixes Debian bug #586621; based on patches by Matt Kraai and M. Vefa
615 Bicakci.
616
6172010-07-04 Grégoire Sutre <gregoire.sutre@gmail.com>
618
619 * configure.ac: Avoid == in test command, it's not portable.
620 * util/grub.d/30_os-prober.in: Likewise.
621
6222010-07-04 Colin Watson <cjwatson@ubuntu.com>
623
624 * kern/emu/getroot.c [__GNU__]: Include <sys/mman.h> for munmap.
625
6262010-07-04 Grégoire Sutre <gregoire.sutre@gmail.com>
627
628 * util/i386/pc/grub-setup.c (setup): Do not embed when there are
629 multiple (top-level) partmaps.
630
6312010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
632
633 * util/i386/efi/grub-install.in: Don't use empty grub_device.
634 Reported by: Tino Keitel.
635
6362010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
637
638 Bidi and diacritics support.
639
640 * Makefile.in (widthspec.bin): New target.
641 (widthspec.h): Likewise.
642 (TARGET_CFLAGS): Add -DHAVE_UNIFONT_WIDTHSPEC=1 if font was available.
643 * autogen.sh: Generate unidata.c.
644 * commands/cat.c (grub_cmd_cat): Don't use grub_putchar.
645 * commands/ls.c (grub_ls_list_devices): Likewise.
646 (grub_ls_list_files): Likewise.
647 * commands/minicmd.c (grub_mini_cmd_cat): Likewise.
648 (grub_mini_cmd_lsmod): Likewise.
649 * commands/read.c: Likewise.
650 * kern/corecmd.c (grub_core_cmd_ls): Likewise.
651 * kern/rescue_reader.c (grub_rescue_read_line): Likewise.
652 * lib/arg.c (grub_arg_show_help): Likewise.
653 * lib/crypto.c (grub_password_get): Likewise.
654 * normal/auth.c (grub_username_get): Likewise.
655 * normal/misc.c (grub_normal_print_device_info): Likewise.
656 * commands/help.c (grub_cmd_help): Use grub_unicode_aglomerate_comb.
657 * conf/common.rmk (grub_mkfont_SOURCES): Add unidata.c.
658 (gfxmenu_mod_SOURCES): Add gfxmenu/font.c.
659 (normal/charset.c_DEPENDENCIES): New variable.
660 (normal_mod_SOURCES): Add normal/charset.c and unidata.c.
661 (pkglib_MODULES): Remove charset.mod.
662 (charset_mod_SOURCES): Removed.
663 (charset_mod_CFLAGS): Likewise.
664 (charset_mod_LDFLAGS): Likewise.
665 (pkglib_MODULES) [ieee1275]: Remove terminfo.mod.
666 * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Add term/terminfo.c
667 and term/tparm.c.
668 * conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
669 * conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
670 (kernel_img_HEADERS): Add terminfo.h.
671 * font/font.c (ascii_glyph_lookup): Return NULL on failure.
672 Fill ->font. Reverse ascii bitmaps.
673 (grub_font_get_xheight): New function.
674 * font/font.c (grub_font_get_string_width): Moved from here ...
675 * gfxmenu/font.c (grub_font_get_string_width): ... here.
676 * font/font.c (grub_font_draw_string): Moved from here ...
677 * gfxmenu/font.c (grub_font_draw_string): ... here.
678 * font/font.c (grub_font_dup_glyph): New function.
679 (grub_font_blit_glyph): Likewise.
680 (grub_font_blit_glyph_mirror): Likewise.
681 (blit_comb): Likewise.
682 (grub_font_construct_dry_run): Likewise.
683 (grub_font_get_constructed_device_width): Likewise.
684 (grub_font_construct_glyph): Likewise.
685 * include/grub/charset.h (grub_ucs4_to_utf8): New proto.
686 * include/grub/misc.h (grub_utf8_to_ucs4): Moved from here ...
687 * include/grub/charset.h (grub_utf8_to_ucs4): ... here.
688 * include/grub/font.h (GRUB_FONT_CODE_CHAR_MASK): New constant.
689 (GRUB_FONT_CODE_RIGHT_JOINED): Likewise.
690 (GRUB_FONT_CODE_LEFT_JOINED): Likewise.
691 (grub_font_get_xheight): New proto.
692 (grub_font_get_constructed_device_width): Likewise.
693 (grub_font_construct_glyph): Likewise.
694 * include/grub/font.h (grub_font_get_string_width): Moved from here ...
695 * include/grub/gfxmenu_view.h (grub_font_get_string_width): ... here.
696 * include/grub/font.h (grub_font_draw_string): Moved from here ...
697 * include/grub/gfxmenu_view.h (grub_font_draw_string): ... here.
698 * include/grub/i386/vga_common.h (grub_console_putchar): Moved from here..
699 * include/grub/i386/pc/console.h (grub_console_putchar): ... here.
700 * include/grub/i386/vga_common.h (grub_console_real_putchar): Removed.
701 (grub_console_getcharwidth): Likewise.
702 * include/grub/misc.h (grub_xputs): New proto.
703 (grub_puts): Inlined.
704 * include/grub/normal.h (grub_print_ucs4): Add margin specification.
705 (grub_normal_get_line_counter): Removed.
706 (grub_install_newline_hook): Likewise.
707 (grub_normal_get_char_counter): New proto.
708 (grub_normal_reset_more): Likewise.
709 (grub_xputs_normal): Likewise.
710 * include/grub/powerpc/ieee1275/console.h: Removed.
711 * include/grub/sparc64/ieee1275/console.h: Likewise.
712 * include/grub/term.h (GRUB_TERM_CODE_TYPE_MASK): New definition.
713 (GRUB_TERM_CODE_TYPE_ASCII): Likewise.
714 (GRUB_TERM_CODE_TYPE_CP437): Likewise.
715 (GRUB_TERM_CODE_TYPE_UTF8_LOGICAL): Likewise.
716 (GRUB_TERM_CODE_TYPE_UTF8_VISUAL): Likewise.
717 (GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS): Likewise.
718 (grub_term_input): Pass reference to self. All users updated.
719 (grub_term_output): Pass grub_unicode_glyph to putchar and getcharwidth.
720 Pass reference to self. New fields normal_color, highlight_color and
721 data. All users updated.
722 (grub_putchar): Removed.
723 (grub_putcode): Remove EXPORT_FUNC since it's not in kernel anymore.
724 (grub_unicode_estimate_width): New function.
725 (grub_term_getcharwidth): Add defaults.
726 (GRUB_TERM_DEFAULT_NORMAL_COLOR): New definition.
727 (GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR): Likewise.
728 (GRUB_TERM_DEFAULT_STANDARD_COLOR): Likewise.
729 (grub_cls): Remove EXPORT_FUNC.
730 (grub_setcolorstate): Inline.
731 (grub_newline_hook): Removed.
732 * include/grub/terminfo.h: Rewritten. All users updated.
733 * include/grub/unicode.h: New file.
734 * include/grub/video.h (grub_video_signed_rect): New type.
735 * kern/emu/console.c (grub_console_highlight_color): Removed.
736 (grub_console_normal_color): Likewise.
737 (grub_console_standard_color): Made static.
738 (grub_ncurses_putchar): Remove mapping.
739 (grub_ncurses_getcharwidth): Removed.
740 (grub_ncurses_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
741 (grub_ncurses_setcolor): Removed.
742 (grub_ncurses_getcolor): Likewise.
743 * kern/i386/pc/startup.S (grub_console_real_putchar): Renamed to ...
744 (grub_console_putchar): ... this.
745 (grub_console_putchar): Handle argument difference.
746 * kern/ieee1275/init.c (grub_machine_init): Split console_init into
747 console_init_early and console_init_lately.
748 * kern/sparc64/ieee1275/init.c (grub_machine_init): Likewise.
749 * kern/misc.c (grub_puts): Removed.
750 (grub_vprintf): Store UTF-8 string instead of outputting it directly.
751 (grub_vsnprintf_real): Remove str = NULL support.
752 * kern/misc.c (grub_utf8_to_ucs4): Move from here ...
753 * normal/charset.c (grub_utf8_to_ucs4): ... here.
754 * kern/term.c (grub_putcode): Renamed to ...
755 (grub_putcode_dumb): ... this. Pass grub_unicode_glyph instead of code.
756 (grub_putchar): Removed.
757 (grub_xputs_dumb): New function.
758 (grub_xputs): New variable.
759 * lib/charset.c: Move from here ...
760 * normal/charset.c: ... to here.
761 (grub_ucs4_to_utf8): New function.
762 (grub_ucs4_to_utf8_alloc): Use grub_ucs4_to_utf8.
763 (join_types): New variable.
764 (unpack_join): New function.
765 (bidi_types): New variable.
766 (unpack_bidi): New function.
767 (get_bidi_type): Likewise.
768 (get_join_type): Likewise.
769 (is_mirrored): Likewise.
770 (grub_unicode_get_comb_type): Likewise.
771 (grub_unicode_estimate_width) [HAVE_UNIFONT_WIDTHSPEC]: Likewise.
772 (is_type_after): Likewise.
773 (grub_unicode_aglomerate_comb): Likewise.
774 (bidi_line_wrap): Likewise.
775 (grub_bidi_line_logical_to_visual): Likewise.
776 (grub_bidi_logical_to_visual): Likewise.
777 (grub_unicode_mirror_code): Likewise.
778 (grub_unicode_shape_code): Likewise.
779 * normal/cmdline.c (grub_cmdline_get): Reset more counter.
780 Don't use grub_putchar.
781 * normal/main.c (grub_normal_init_page): Use grub_putcode.
782 (grub_normal_reader_init): Likewise.
783 (grub_xputs_saved): New variable.
784 (GRUB_MOD_INIT): Set grub_xputs.
785 (GRUB_MOD_FINI): Restore grub_xputs.
786 * normal/menu.c (grub_wait_after_message): Don't use grub_putchar.
787 (menu_init): Avoid printing gfxmenu error.
788 (show_menu): Use grub_normal_get_char_counter.
789 * normal/menu_entry.c (update_screen): Fix out-of-array.
790 (complete): Avoid NULL dereferencing.
791 * grub_menu_entry_run (grub_menu_entry_run): Don't use putchar.
792 * normal/menu_text.c (print_spaces): Removed.
793 (grub_print_ucs4): Likewise.
794 (grub_print_message_indented): Use grub_print_ucs4.
795 (print_message): Use grub_putcode.
796 (print_entry): Hanlde diacritics.
797 * normal/term.c (term_state): New type.
798 (grub_more_lines): Removed.
799 (term_states): New variable.
800 (grub_normal_line_counter): Renamed to ..
801 (grub_normal_char_counter): ...this. All users updated.
802 (grub_normal_get_line_counter): Renamed to ...
803 (grub_normal_get_char_counter): ... this.
804 (grub_normal_reset_more): New function.
805 (process_newline): Removed.
806 (print_more): New function.
807 (grub_install_newline_hook): Removed.
808 (map_code): New function.
809 (grub_puts_terminal): Use grub_print_ucs4.
810 (putglyph): New function.
811 (putcode_real): Likewise.
812 (grub_putcode): Use putcode_real.
813 (get_maxwidth): New function.
814 (get_startwidth): Likewise.
815 (print_ucs4_terminal): Likewise.
816 (find_term_state): Likewise.
817 (put_glyphs_terminal): Likewise.
818 (print_backlog): Likewise.
819 (print_ucs4_real): Likewise.
820 (grub_print_ucs4): Likewise.
821 (grub_xputs_normal): Likewise.
822 * term/efi/console.c (grub_console_putchar): Output diacritics.
823 (grub_console_getcharwidth): Removed.
824 (grub_console_term_output): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
825 * term/gfxterm.c (clear_char): Free chars.
826 (scroll_up): Avoid leaking memory.
827 (grub_gfxterm_putchar): Support diacritics.
828 (grub_video_term): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
829 * term/i386/pc/console.c (grub_console_term_output): Declare as
830 GRUB_TERM_CODE_TYPE_VGA.
831 * term/i386/pc/vga.c (grub_vga_term): Declare as
832 GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS.
833 * term/i386/pc/vga_text.c (grub_vga_text_term): Declare as
834 GRUB_TERM_CODE_TYPE_VGA.
835 * term/i386/vga_common.c (map_char): Removed.
836 (grub_console_putchar): Likewise.
837 (grub_console_getcharwidth): Likewise.
838 * term/ieee1275/ofconsole.c: Simplify using terminfo.
839 (colors): Reordered to match terminfo.
840 (grub_ofconsole_normal_color): Removed.
841 (grub_ofconsole_writeesc): Likewise.
842 (grub_ofconsole_highlight_color): Likewise.
843 (grub_ofconsole_getcharwidth): Likewise.
844 (grub_ofconsole_setcolorstate): Likewise.
845 (grub_ofconsole_setcolor): Likewise.
846 (grub_ofconsole_getcolor): Likewise.
847 (grub_ofconsole_readkey): Renamed to ...
848 (readkey): ... this. Remove escape sequence handling. Return -1 on no
849 key.
850 (grub_ofconsole_checkkey): Removed.
851 (grub_ofconsole_getkey): Likewise.
852 (grub_ofconsole_getxy): Likewise.
853 (grub_ofconsole_gotoxy): Likewise.
854 (grub_ofconsole_cls): Likewise.
855 (grub_ofconsole_refresh): Likewise.
856 (grub_ofconsole_terminfo_input): New struct.
857 (grub_ofconsole_terminfo_output): Likewise.
858 (grub_ofconsole_term_input): Use terminfo.
859 (grub_ofconsole_term_output): Likewise.
860 (grub_console_init): Split into ...
861 (grub_console_init_early): ...this and ...
862 (grub_console_init_lately): ...this. Use terminfo.
863 (grub_ofconsole_putchar): Renamed to ...
864 (put): ... this. Remove mapping.
865 (grub_ofconsole_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
866 * term/serial.c: Simplify using terminfo.
867 (xpos): Removed.
868 (ypos): Likewise.
869 (keep_track): Likewise.
870 (registered): Likewise.
871 (input_buf): Likewise.
872 (npending): Likewise.
873 (serial_translate_key_sequence): Likewise.
874 (fill_input_buf): Likewise.
875 (grub_serial_checkkey): Likewise.
876 (grub_serial_getkey): Likewise.
877 (grub_serial_getxy): Likewise.
878 (grub_serial_gotoxy): Likewise.
879 (grub_serial_putchar): Likewise.
880 (grub_serial_cls): Likewise.
881 (grub_serial_setcolorstate): Likewise.
882 (grub_serial_setcursor): Likewise.
883 (serial_hw_init): Use serial_hw_fetch.
884 (grub_serial_terminfo_input): New variable.
885 (grub_serial_terminfo_output): Likewise.
886 (grub_serial_term_input): Use terminfo.
887 (grub_serial_term_output): Likewise.
888 * term/terminfo.c (putstr): Use put.
889 (grub_terminfo_all_free): New function
890 (grub_terminfo_set_current): New types vt100-color, ieee1275 and dumb.
891 (grub_terminfo_output_register): New function.
892 (grub_terminfo_output_unregister): Likewise.
893 (grub_terminfo_getxy): Likewise.
894 (grub_terminfo_readkey): Likewise.
895 (grub_terminfo_checkkey): Likewise.
896 (grub_terminfo_getkey): Likewise.
897 (grub_terminfo_input_init): Likewise.
898 (print_terminfo): Likewise.
899 (grub_cmd_terminfo): Handle encoding.
900 (grub_terminfo_gotoxy): Track position.
901 (grub_terminfo_cls): Likewise.
902 (grub_terminfo_putchar): Likewise.
903 (grub_terminfo_setcolorstate): Handle colors
904 (grub_terminfo_cursor_on): This ...
905 (grub_terminfo_cursor_off): ... and this merged into ...
906 (grub_terminfo_setcursor): ... this.
907 * term/tparm.c (grub_terminfo_tparm): Avoid NULL dereferencing.
908 * unicode/ArabicShaping.txt: New file (imported from Unicode).
909 * unicode/BidiMirroring.txt: Likewise.
910 * unicode/UnicodeData.txt: Likewise.
911 * unicode/COPYING: Likewise.
912 * util/grub-editenv.c (grub_putchar): Removed.
913 (grub_xputs_real): New function.
914 (grub_xputs): New variable.
915 * util/grub-fstest.c (grub_putchar): Removed.
916 (grub_xputs_real): New function.
917 (grub_xputs): New variable.
918 * util/grub-mkdevicemap.c (grub_putchar): Removed.
919 (grub_xputs_real): New function.
920 (grub_xputs): New variable.
921 * util/grub-probe.c (grub_putchar): Removed.
922 (grub_xputs_real): New function.
923 (grub_xputs): New variable.
924 * util/grub-script-check.c (grub_putchar): Removed.
925 (grub_xputs_real): New function.
926 (grub_xputs): New variable.
927 * util/i386/pc/grub-setup.c (grub_putchar): Removed.
928 (grub_xputs_real): New function.
929 (grub_xputs): New variable.
930 * util/import_unicode.py: New file.
931 * util/grub-mkfont.c (ft_errmsgs): New array.
932 (grub_glyph_info): Make bitmap a pointer.
933 (file_formats): New type WIDTH_SPEC.
934 (grub_font_info): New members glyphs_unsorted, glyphs_sorted, num_glyphs.
935 (options): Add width-spec.
936 (help): Likewise.
937 (add_char): Renamed to ...
938 (add_glyph): ... this.
939 (add_glyph): Use index. Show freetype errors. Cut blank space at borders.
940 (glyph_replace): New type.
941 (subst_rightjoin), (subst_leftjoin), (subst_medijoin): New variables.
942 (add_char): New function.
943 (add_subst): Likewise.
944 (process_cursive): Likewise.
945 (add_font): Handle GSUB.
946 (write_font_width_spec): New function.
947 (main): Sort glyphs.
948 * commands/minicmd.c (grub_mini_cmd_clear): Moved from here ...
949 * normal/main.c (grub_mini_cmd_clear): ..here. All users updated.
950 * kern/term.c (grub_cls): Moved from here...
951 * normal/term.c (grub_cls): ... here.
952
9532010-07-02 Colin Watson <cjwatson@ubuntu.com>
954
955 * include/grub/types.h: Define the C99-style PRIxGRUB_SIZE macro,
956 suitable for using within the format argument of printf when
957 converting grub_size_t.
958 * disk/usbms.c (grub_usbms_transfer): Use PRIxGRUB_SIZE rather than
959 "x" to convert grub_size_t arguments.
960
9612010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
962
963 * gfxmenu/gui_list.c (draw_menu): Use viewport to simplify code and fix
964 too long captions.
965 (list_get_minimal_size): Take selection box into account.
966
9672010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
968
969 * font/font.c (grub_font_get_glyph_with_fallback): Avoid dereferencing
970 NULL font.
971
9722010-07-02 Colin Watson <cjwatson@ubuntu.com>
973
974 * util/deviceiter.c (grub_util_iterate_devices): Skip device-mapper
975 devices when iterating over /dev/disk/by-id; they will be handled
976 later if appropriate, which they aren't always (e.g. LVM).
977
9782010-07-02 Colin Watson <cjwatson@ubuntu.com>
979
980 * include/grub/misc.h (grub_reboot): Declare as noreturn.
981 * kern/efi/efi.c (grub_reboot): Don't return, even if reset_system
982 fails.
983 (grub_halt): Likewise.
984 * kern/ieee1275/openfw.c (grub_reboot): Don't return, even if
985 reset-all fails.
986 (grub_halt): Don't return, even if all of shut-down, power-off, and
987 poweroff fail.
988
9892010-07-02 Colin Watson <cjwatson@ubuntu.com>
990
991 * kern/efi/init.c (grub_efi_init): set_watchdog_timer takes four
992 arguments, not three.
993
9942010-07-02 Colin Watson <cjwatson@ubuntu.com>
995
996 * util/grub-mkconfig_lib.in (uses_abstraction): New function.
997 * util/grub.d/10_linux.in: Use it to check for LVM, so that
998 LVM-on-RAID is handled correctly.
999
10002010-07-02 Colin Watson <cjwatson@ubuntu.com>
1001
1002 * docs/grub.texi (Changes from GRUB Legacy): New section.
1003 (Future): Fix typo.
1004
10052010-07-02 Colin Watson <cjwatson@ubuntu.com>
1006
1007 * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Sometimes
1008 grub.d/README accidentally ends up executable for one reason or
1009 another. Ignore it.
1010
10112010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
1012
1013 * partmap/gpt.c (MAX_SECTOR_LOG): New definition.
1014 (gpt_partition_map_iterate): Support non-512B sectors.
1015
10162010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
1017
1018 * kern/efi/init.c (grub_efi_init): Disable watchdog.
1019 Tested by: Seth Goldberg.
1020
10212010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
1022
1023 * loader/multiboot.c (grub_multiboot_boot) [GRUB_USE_MULTIBOOT2]:
1024 Properly align mbi.
1025 Reported by: Seth Goldberg.
1026
10272010-07-01 Vladimir Serbinenko <phcoder@gmail.com>
1028
1029 * util/grub-mkrescue.in: Avoid module duplication.
1030
10312010-07-01 Sean Finney <seanius@seanius.net>
1032
1033 * util/grub.d/10_linux.in: Don't use UUID for LVM root.
1034
10352010-07-01 Sean Finney <seanius@seanius.net>
1036
1037 * disk/lvm.c (grub_lvm_scan_device): Skip snapshots.
1038
10392010-07-01 Vladimir Serbinenko <phcoder@gmail.com>
1040
1041 * disk/lvm.c (grub_lvm_checkvalue): New function.
1042 (grub_lvm_check_flag): Likewise.
1043
10442010-07-01 Robert Millan <rmh@gnu.org>
1045
1046 * kern/emu/hostdisk.c (convert_system_partition_to_system_disk):
1047 Support 'p' as partition separator on kernel of FreeBSD (used
1048 with GPT labels).
1049 (grub_util_biosdisk_get_grub_dev): Likewise.
1050
10512010-07-01 Vladimir Serbinenko <phcoder@gmail.com>
1052
1053 Yeeloong firmware port.
1054
1055 * boot/mips/yeeloong/fwstart.S: New file.
1056 * bus/cs5536.c (gpiodump): New const.
1057 (set_io_space): New function.
1058 (set_iod): Likewise.
1059 (set_p2d): Likewise.
1060 (grub_cs5536_init_geode): Likewise.
1061 * commands/mips/yeeloong/lsspd.c: New file.
1062 * conf/mips-qemu-mips.rmk (pkglib_MODULES): Add serial.mod.
1063 (serial_mod_SOURCES): New variable.
1064 (serial_mod_CFLAGS): Likewise.
1065 (serial_mod_LDFLAGS): Likewise.
1066 * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Add term/serial.c,
1067 term/terminfo.c and term/tparm.c.
1068 (pkglib_IMAGES): Add fwstart.img.
1069 (fwstart_img_SOURCES): New variable.
1070 (fwstart_img_CFLAGS): Likewise.
1071 (fwstart_img_ASFLAGS): Likewise.
1072 (fwstart_img_LDFLAGS): Likewise.
1073 (fwstart_img_FORMAT): Likewise.
1074 (pkglib_MODULES): Add lsspd.mod.
1075 (lsspd_mod_SOURCES): New variable.
1076 (lsspd_mod_CFLAGS): Likewise.
1077 (lsspd_mod_LDFLAGS): Likewise.
1078 (pkglib_MODULES): Add halt.mod.
1079 (halt_mod_SOURCES): New variable.
1080 (halt_mod_CFLAGS): Likewise.
1081 (halt_mod_LDFLAGS): Likewise.
1082 * conf/mips.rmk (pkglib_MODULES): Remove serial.mod.
1083 (serial_mod_SOURCES): Removed.
1084 (serial_mod_CFLAGS): Likewise.
1085 (serial_mod_LDFLAGS): Likewise.
1086 * disk/ata.c (check_device): New function.
1087 (grub_ata_device_initialize): Use check_device.
1088 (grub_ata_iterate): Recheck devices.
1089 (grub_ata_open): Likewise.
1090 (grub_atapi_iterate): Likewise.
1091 (grub_atapi_open): Likewise.
1092 * include/grub/ata.h (GRUB_ATA_CH0_PORT1): New macro.
1093 (GRUB_ATA_CH1_PORT1): Likewise.
1094 (GRUB_ATA_CH0_PORT2): Likewise.
1095 (GRUB_ATA_CH1_PORT2): Likewise.
1096 * include/grub/mips/loongson.h: New file.
1097 * include/grub/mips/yeeloong/ec.h: Likewise.
1098 * include/grub/mips/yeeloong/serial.h (GRUB_MACHINE_SERIAL_PORT): New definition.
1099 (GRUB_MACHINE_SERIAL_DIVISOR_115200): Likewise.
1100 (GRUB_MACHINE_SERIAL_PORTS) [ASM_FILE]: Remove.
1101 * include/grub/misc.h (grub_halt): Declare as noreturn.
1102 * include/grub/serial.h (UART_ENABLE_FIFO): Renamed to ...
1103 (UART_ENABLE_FIFO_TRIGGER14): ... this. All users updated.
1104 (UART_ENABLE_FIFO_TRIGGER1): New definition.
1105 (UART_ENABLE_DTRRTS): Likewise.
1106 (UART_ENABLE_MODEM): Removed.
1107 (UART_ENABLE_OUT2): New const.
1108 * include/grub/term.h (grub_term_register_input_active): New function.
1109 (grub_term_register_output_active): Likewise.
1110 * kern/mips/startup.S [GRUB_MACHINE_MIPS_YEELOONG]: Handle 0xffffffff
1111 argument.
1112 * kern/mips/yeeloong/init.c (grub_get_rtc): Macroify.
1113 (init_pci): New function.
1114 (grub_machine_init): Execute platform init when firmware. Init serial.
1115 (grub_halt): Implement.
1116 (grub_exit): Likewise.
1117 (grub_reboot): Likewise.
1118 * term/serial.c (serial_hw_init): Update macros.
1119 [GRUB_MACHINE_MIPS_YEELOONG]: Init on startup.
1120 * util/grub-mkimage.c (image_target_desc): New id IMAGE_YEELOONG_FLASH.
1121 (image_targets): New target mipsel-yeeloong-flash.
1122 (generate_image): Support IMAGE_YEELOONG_FLASH.
1123 * video/sm712.c (GRUB_SM712_TOTAL_MEMORY_SPACE): New definition.
1124 (grub_video_sm712_setup): Init card.
1125 (grub_video_sm712_set_palette): Removed.
1126 * video/sm712_init.c: New file.
1127
11282010-06-30 Colin Watson <cjwatson@ubuntu.com>
1129
1130 * Makefile.in (install-local): Temporarily prepend $(builddir) to
1131 PATH when running help2man and then run it on the unadorned
1132 executable names, rather than passing $(builddir)/* paths to
1133 help2man. This avoids the build directory ending up in generated
1134 manual pages.
1135
11362010-06-29 Colin Watson <cjwatson@ubuntu.com>
1137
1138 * util/grub-mkconfig.in: Use 'set -e' rather than '#! /bin/sh -e',
1139 to avoid accidents when debugging with 'sh -x'.
1140 * util/grub-mkrescue.in: Likewise.
1141 * util/grub.d/00_header.in: Likewise.
1142 * util/grub.d/10_hurd.in: Likewise.
1143 * util/grub.d/10_kfreebsd.in: Likewise.
1144 * util/grub.d/10_linux.in: Likewise.
1145 * util/grub.d/10_netbsd.in: Likewise.
1146 * util/grub.d/10_windows.in: Likewise.
1147 * util/grub.d/20_linux_xen.in: Likewise.
1148 * util/grub.d/30_os-prober.in: Likewise.
1149 * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
1150
11512010-06-29 Colin Watson <cjwatson@ubuntu.com>
1152
1153 * commands/cat.c (grub_cmd_cat): Fix buffer overrun if '\r' is the
1154 last character in the buffer.
1155 Reported by: Vladimir Serbinenko.
1156
11572010-06-29 Robert Millan <rmh@gnu.org>
1158
1159 * docs/grub.texi (Simple configuration): Document ${GRUB_BADRAM}.
1160 (Command-line and menu entry commands): Document `badram' command.
1161
11622010-06-28 Robert Millan <rmh@gnu.org>
1163
1164 * util/grub-mkconfig.in: Export `GRUB_BADRAM' variable.
1165 * util/grub.d/00_header.in: When `GRUB_BADRAM' is set, issue badram
1166 command using ${GRUB_BADRAM} as parameter.
1167
11682010-06-28 Colin Watson <cjwatson@ubuntu.com>
1169
1170 * docs/grub.texi (Device map): New section.
1171 (Themes): New section (stub).
1172 * Makefile.in (docs/grub.info): The info documentation now builds
1173 without errors. Make sure it stays that way.
1174
11752010-06-28 Vladimir Serbinenko <phcoder@gmail.com>
1176
1177 Use normal parser for menu entries.
1178 Reported by: Thomas Frauendorfer
1179
1180 * include/grub/parser.h (grub_parser_execute): Don't export.
1181 * normal/menu.c (grub_menu_execute_entry_real): New function.
1182 (grub_menu_execute_entry): Use grub_menu_execute_entry_real.
1183
11842010-06-28 Colin Watson <cjwatson@ubuntu.com>
1185
1186 * docs/grub.texi (Embedded configuration): New section (replacing
1187 old "Preset Menu" stub).
1188 (Images): New section.
1189 (configfile): Note that any menu entries defined in `file' are shown
1190 immediately.
1191
11922010-06-28 Josh Triplett <josh@joshtriplett.org>
1193
1194 * mmap/i386/pc/mmap_helper.S: Set CF on return.
1195
11962010-06-28 Colin Watson <cjwatson@ubuntu.com>
1197
1198 * util/grub-install.in: Add --debug-image= option.
1199
12002010-06-28 Colin Watson <cjwatson@ubuntu.com>
1201
1202 Change grub-mkdevicemap to emit /dev/disk/by-id/ names where
1203 possible on Linux.
1204
1205 * util/deviceiter.c (check_device): Rename to ...
1206 (check_device_readable_unique): ... this. Update all callers.
1207 Maintain and check a list of which devices (by canonicalized name)
1208 have already been seen.
1209 (clear_seen_devices): New function.
1210 (compare_file_names) [__linux__]: New function.
1211 (grub_util_iterate_devices): Clear the list of seen devices on exit
1212 and (just in case) on entry.
1213 (grub_util_iterate_devices) [__linux__]: Iterate over non-partition
1214 devices in /dev/disk/by-id/, in sorted order. Remove DM-RAID
1215 seen-devices list, superseded by general code in check_device.
1216
12172010-06-28 Colin Watson <cjwatson@ubuntu.com>
1218
1219 * commands/cat.c (options): New variable.
1220 (grub_cmd_cat): Parse options. If the --dos option is given, print
1221 DOS-style "\r\n" line endings as simple newlines (Debian bug
1222 #586358).
1223 (GRUB_MOD_INIT): Use extcmd.
1224 (GRUB_MOD_FINI): Likewise.
1225 * docs/grub.texi (cat): Document --dos.
1226
12272010-06-28 Vladimir Serbinenko <phcoder@gmail.com>
1228
1229 XEN with Linux grub-mkconfig support.
1230
1231 * conf/common.rmk (grub-mkconfig_SCRIPTS) [linux]: Add 20_linux_xen.
1232 * util/grub-mkconfig.in: Export GRUB_CMDLINE_XEN and
1233 GRUB_CMDLINE_XEN_DEFAULT.
1234 * util/grub.d/20_linux_xen.in: New file.
1235
12362010-06-28 Vladimir Serbinenko <phcoder@gmail.com>
1237
1238 Initialise VGA video on qemu ourselves.
1239
1240 * boot/i386/qemu/boot.S: Don't call 0xc000.
1241 * conf/i386-qemu.rmk (kern/i386/qemu/init.c_DEPENDENCIES): New variable.
1242 (kernel_img_SOURCES): Add kern/i386/qemu/init.c and bus/pci.c.
1243 (kernel_img_HEADERS): Add pci.h.
1244 * conf/i386.rmk (pkglib_MODULES) [qemu]: Remove pci.mod.
1245 * configure.ac: Force unifont on qemu and yeeloong.
1246 * include/grub/i386/qemu/kernel.h (grub_qemu_init_cirrus): New proto.
1247 (grub_vga_palette_write): Use correct register.
1248 * kern/i386/coreboot/init.c (grub_machine_init) [GRUB_MACHINE_QEMU]:
1249 Call grub_qemu_init_cirrus.
1250 * kern/i386/qemu/init.c: New file.
1251 * term/i386/pc/vga_text.c (inc_y): Never read outside the screen.
1252
1253 * commands/videotest.c (grub_cmd_videotest): Handle double buffering.
1254
12552010-06-26 Pavel Roskin <proski@gnu.org>
1256
1257 * util/grub.d/10_linux.in: Add support for initrd images on Fedora
1258 13.
1259
12602010-06-26 Colin Watson <cjwatson@ubuntu.com>
1261
1262 * docs/grub.texi (Simple configuration): Explain that
1263 GRUB_DISABLE_LINUX_RECOVERY and GRUB_DISABLE_NETBSD_RECOVERY must be
1264 set to `true' to disable their respective recovery entries, not
1265 merely set.
1266
12672010-06-26 Colin Watson <cjwatson@ubuntu.com>
1268
1269 Make the `source' command slightly faster.
1270
1271 * normal/main.c (grub_normal_execute): Don't re-read list files when
1272 nested.
1273
12742010-06-23 Colin Watson <cjwatson@ubuntu.com>
1275
1276 * loader/i386/multiboot_mbi.c (retrieve_video_parameters): Set red
1277 field position and mask size to red fields from mode_info, not
1278 green.
1279 * loader/multiboot_mbi2.c (retrieve_video_parameters): Likewise.
1280 Remove redundant tag->common.framebuffer_type assignment.
1281 Reported by: Seth Goldberg.
1282
12832010-06-23 Colin Watson <cjwatson@ubuntu.com>
1284
1285 Sync up other versions of the Linux loader with Robert Millan's
1286 change of 2010-01-09, "Make loader output a bit more user-friendly".
1287
1288 * loader/i386/efi/linux.c (grub_linux_boot): Move debug info to
1289 grub_dprintf().
1290 (grub_cmd_linux): Likewise.
1291 (grub_cmd_initrd): Likewise.
1292 * loader/i386/ieee1275/linux.c (grub_cmd_linux): Likewise.
1293 * loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
1294
12952010-06-21 Colin Watson <cjwatson@ubuntu.com>
1296
1297 * kern/efi/mm.c (grub_efi_mm_init): Handle systems with memory maps
1298 larger than MEMORY_MAP_SIZE.
1299
13002010-06-21 BVK Chaitanya <bvk.groups@gmail.com>
1301
1302 Fix parallel build.
1303
1304 * conf/common.rmk: Add grub_script.tab.h as a grub-script-check
1305 dependency.
1306 * script/parser.y: #include grub_script.tab.h header.
1307
13082010-06-20 Vladimir Serbinenko <phcoder@gmail.com>
1309
1310 Support >3GiB and <16MiB RAM in i386-qemu.
1311
1312 * kern/i386/qemu/mmap.c (QEMU_CMOS_MEMSIZE2_HIGH): New const.
1313 (QEMU_CMOS_MEMSIZE2_LOW): Likewise.
1314 (grub_lower_mem): Removed.
1315 (grub_upper_mem): Likewise.
1316 (mem_size): Made static.
1317 (above_4g): New variable.
1318 (grub_machine_mmap_init): Detect small mem_size and above_4g.
1319 (grub_machine_mmap_iterate): Order in ascending order and add above_4g
1320 support.
1321
13222010-06-20 Vladimir Serbinenko <phcoder@gmail.com>
1323
1324 Cirrus 5446 and Bochs video cards support.
1325
1326 * conf/i386.rmk (pkglib_MODULES): Add video_cirrus.mod and
1327 video_bochs.mod
1328 (video_cirrus_mod_SOURCES): New variable.
1329 (video_cirrus_mod_CFLAGS): Likewise.
1330 (video_cirrus_mod_LDFLAGS): Likewise.
1331 (video_bochs_mod_SOURCES): Likewise.
1332 (video_bochs_mod_CFLAGS): Likewise.
1333 (video_bochs_mod_LDFLAGS): Likewise.
1334 * include/grub/vga.h: New file.
1335 * include/grub/video_fb.h (grub_video_fb_doublebuf_blit_init): Removed.
1336 (grub_video_fb_set_page_t): New type.
1337 (grub_video_fb_setup): New prototype.
1338 (grub_video_fb_swap_buffers): Likewise.
1339 (grub_video_fb_get_info_and_fini): Likewise.
1340 * term/i386/pc/vga_text.c (CRTC_ADDR_PORT): Moved to include/grub/vga.h.
1341 (CRTC_DATA_PORT): Likewise.
1342 (CRTC_CURSOR): Likewise.
1343 (CRTC_CURSOR_ADDR_HIGH): Likewise.
1344 (CRTC_CURSOR_ADDR_LOW): Likewise.
1345 (CRTC_CURSOR_DISABLE): Likewise.
1346 (update_cursor): Use grub_vga_cr_write.
1347 (grub_vga_text_setcursor): Likewise.
1348 * video/bochs.c: New file.
1349 * video/fb/video_fb.c (render_target): Moved into framebuffer variable.
1350 (palette): Likewise.
1351 (palette_size): Likewise.
1352 (framebuffer): New variable.
1353 (grub_video_fb_init): Use 'framebuffer'.
1354 (grub_video_fb_fini): Likewise.
1355 (grub_video_fb_get_info): Likewise.
1356 (grub_video_fb_get_palette): Likewise.
1357 (grub_video_fb_set_palette): Likewise.
1358 (grub_video_fb_set_viewport): Likewise.
1359 (grub_video_fb_get_viewport): Likewise.
1360 (grub_video_fb_map_color): Likewise.
1361 (grub_video_fb_map_rgb): Likewise.
1362 (grub_video_fb_map_rgba): Likewise.
1363 (grub_video_fb_unmap_color): Likewise.
1364 (grub_video_fb_unmap_color_int): Likewise.
1365 (grub_video_fb_fill_rect): Likewise.
1366 (grub_video_fb_blit_bitmap): Likewise.
1367 (grub_video_fb_blit_render_target): Likewise.
1368 (grub_video_fb_scroll): Likewise.
1369 (grub_video_fb_create_render_target): Likewise.
1370 (grub_video_fb_doublebuf_blit_init): Likewise.
1371 (grub_video_fb_set_active_render_target): Handle doublebuffering.
1372 (doublebuf_pageflipping_update_screen): New function.
1373 (doublebuf_pageflipping_init): Likewise.
1374 (grub_video_fb_setup): Likewise.
1375 (grub_video_fb_swap_buffers): Likewise.
1376 (grub_video_fb_get_info_and_fini): Likewise.
1377 * video/i386/pc/vbe.c (framebuffer): Remove all doublebuffering fields.
1378 All users updated.
1379 (doublebuf_pageflipping_commit): Restructured into ...
1380 (doublebuf_pageflipping_set_page): ... this.
1381 (doublebuf_pageflipping_update_screen): Removed.
1382 (doublebuf_pageflipping_init): Likewise.
1383 (double_buffering_init): Likewise.
1384 (grub_video_vbe_setup): Use grub_video_fb_setup.
1385 (grub_video_vbe_swap_buffers): Removed.
1386 (grub_video_vbe_set_active_render_target): Likewise.
1387 (grub_video_vbe_get_active_render_target): Likewise.
1388 (grub_video_vbe_get_info_and_fini): Use grub_video_fb_get_info_and_fini.
1389 (grub_video_vbe_adapter): Use grub_video_fb_swap_buffers,
1390 grub_video_fb_set_active_render_target and
1391 grub_video_fb_get_active_render_target.
1392 * video/i386/pc/vga.c (SEQUENCER_ADDR_PORT): Move to include/grub/vga.h.
1393 (SEQUENCER_DATA_PORT): Likewise.
1394 (MAP_MASK_REGISTER): Likewise.
1395 (CRTC_ADDR_PORT): Likewise.
1396 (CRTC_DATA_PORT): Likewise.
1397 (START_ADDR_HIGH_REGISTER): Likewise.
1398 (START_ADDR_LOW_REGISTER): Likewise.
1399 (GRAPHICS_ADDR_PORT): Likewise.
1400 (GRAPHICS_DATA_PORT): Likewise.
1401 (READ_MAP_REGISTER): Likewise.
1402 (INPUT_STATUS1_REGISTER): Likewise.
1403 (INPUT_STATUS1_VERTR_BIT): Likewise.
1404 (get_map_mask): Use grub_vga_sr_read.
1405 (set_map_mask): Use grub_vga_sr_write.
1406 (set_read_map): Use grub_vga_gr_write.
1407 (set_start_address): Use grub_vga_cr_write.
1408 * video/sm712.c (framebuffer): Remove leftover fields.
1409
14102010-06-20 Colin Watson <cjwatson@ubuntu.com>
1411
1412 * util/grub-mkconfig.in: Capitalise and export GRUB_PREFIX. Stop
1413 setting GRUB_VIDEO_BACKEND. Make it available as a user override
1414 instead. Replace the gfxterm backend check with a check that
1415 ${GRUB_PREFIX}/video.lst is non-empty.
1416 * util/grub.d/00_header.in: Use GRUB_PREFIX rather than computing it
1417 again.
1418 (load_video): New generated function. Call it before loading
1419 gfxterm rather than loading ${GRUB_VIDEO_BACKEND}.
1420 * util/grub.d/10_linux.in (linux_entry): Call load_video.
1421 * util/grub.d/30_os-prober.in (osx_entry): Likewise.
1422 * docs/grub.texi (Simple configuration): Document
1423 GRUB_VIDEO_BACKEND.
1424
14252010-06-20 Vladimir Serbinenko <phcoder@gmail.com>
1426
1427 Use video functions in linux and xnu loaders.
1428
1429 * conf/i386-pc.rmk (xnu_mod_SOURCES): Remove loader/i386/pc/xnu.c.
1430 * conf/x86-efi.rmk (xnu_mod_SOURCES): Remove loader/i386/efi/xnu.c.
1431 * include/grub/i386/xnu.h (grub_xnu_set_video): Removed.
1432 * loader/i386/efi/linux.c (grub_linux_setup_video): Copied from
1433 loader/i386/pc/linux.c.
1434 (grub_linux_boot): Resynced with loader/i386/pc/linux.c.
1435 (find_line_len): Removed.
1436 (find_framebuf): Likewise.
1437 (grub_cmd_linux): Declare grub_linux_boot as possibly returning.
1438 * loader/i386/efi/xnu.c: Removed.
1439 * loader/i386/pc/xnu.c: Moved from here...
1440 * loader/i386/xnu.c: ...here.
1441
1442 Enable priorities in video drivers.
1443
1444 * include/grub/video.h (grub_video_adapter_prio_t): New type.
1445 (grub_video_adapter): New field prio.
1446 (grub_video_register): Respect prio when inserting.
1447 * video/efi_gop.c (grub_video_gop_adapter): Add prio.
1448 * video/efi_uga.c (grub_video_uga_adapter): Likewise.
1449 * video/emu/sdl.c (grub_video_sdl_adapter): Likewise.
1450 * video/i386/pc/vbe.c (grub_video_vbe_adapter): Likewise.
1451 * video/i386/pc/vga.c (grub_video_vga_adapter): Likewise.
1452 * video/ieee1275.c (grub_video_ieee1275_adapter): Likewise.
1453 * video/sm712.c (grub_video_sm712_adapter): Likewise.
1454
1455 Fix SDL driver ID.
1456
1457 * include/grub/video.h (grub_video_driver_id_t): New value
1458 GRUB_VIDEO_DRIVER_SDL.
1459 * video/emu/sdl.c (grub_video_sdl_adapter): Add id.
1460
14612010-06-17 Colin Watson <cjwatson@ubuntu.com>
1462
1463 * util/i386/pc/grub-setup.c (usage): Pass an extra `program_name'
1464 argument to printf.
1465 * util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
1466
14672010-06-17 Colin Watson <cjwatson@ubuntu.com>
1468
1469 * util/i386/pc/grub-setup.c (usage): Fix syntax error.
1470 * util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
1471
14722010-06-17 Colin Watson <cjwatson@ubuntu.com>
1473
1474 * util/i386/pc/grub-setup.c (usage): Warn against running grub-setup
1475 directly, and recommend grub-install instead.
1476 * util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
1477
14782010-06-17 Colin Watson <cjwatson@ubuntu.com>
1479
1480 Fix i386-pc prefix handling with nested partitions (Debian bug
1481 #585068). Note that the case where the core image is booted using
1482 multiboot and relocated from its original location still requires
1483 more work.
1484
1485 * kern/i386/pc/init.c (make_install_device): If the prefix starts
1486 with "(,", fill the boot drive in between those two characters, but
1487 expect that a full partition specification including partition map
1488 names will follow.
1489 * util/i386/pc/grub-setup.c (setup): Unless an explicit prefix was
1490 specified, write a prefix without the drive name but including a
1491 full partition specification.
1492
14932010-06-16 Colin Watson <cjwatson@ubuntu.com>
1494
1495 * util/grub-mkconfig.in: Ignore non-option arguments, for
1496 compatibility with older versions (before 2010-06-12) which did the
1497 same. In particular, this makes it easier to ship an update-grub
1498 wrapper which is compatible with that used with GRUB Legacy (Debian
1499 bug #586056).
1500
15012010-06-14 Grégoire Sutre <gregoire.sutre@gmail.com>
1502
1503 * Makefile.in (install-local): Use $$file.h2m instead of $$dest.h2m
1504 for manual page generation.
1505
15062010-06-14 Grégoire Sutre <gregoire.sutre@gmail.com>
1507
1508 * po/POTFILES: Remove leftover commands/handler.c.
1509
15102010-06-14 Colin Watson <cjwatson@ubuntu.com>
1511
1512 * util/grub-mkconfig.in: Remove vestige of old argument parsing that
1513 left this script non-functional.
1514
15152010-06-14 Colin Watson <cjwatson@ubuntu.com>
1516
1517 * docs/man/grub-emu.h2m: New file.
1518
15192010-06-13 Colin Watson <cjwatson@ubuntu.com>
1520
1521 * docs/grub.texi (Commands): Document reduced command set in rescue
1522 mode.
1523 (cpuid): New section.
1524
15252010-06-13 Grégoire Sutre <gregoire.sutre@gmail.com>
1526
1527 * kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Use the
1528 new partition naming style.
1529 * util/grub-install.in: Adapt sed subtitutions in grub-probe calls.
1530
15312010-06-12 BVK Chaitanya <bvk.groups@gmail.com>
1532
1533 Add "-o grub.iso" like cmdline options support.
1534
1535 * util/grub-install.in: Improve cmdline option parsing.
1536 * util/grub-mkconfig.in: Likewise.
1537 * util/grub-mkrescue.in: Likewise.
1538 * util/grub-reboot.in: Likewise.
1539 * util/grub-set-default.in: Likewise.
1540 * util/i386/efi/grub-install.in: Likewise.
1541 * util/ieee1275/grub-install.in: Likewise.
1542 * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
1543
15442010-06-12 Colin Watson <cjwatson@ubuntu.com>
1545
1546 * .bzrignore: Ignore 41_custom.
1547
15482010-06-12 Thomas Schmitt <scdbackup@gmx.net>
1549
1550 * util/grub-mkrescue.in: Pass unrecognized options to xorriso.
1551
15522010-06-12 Colin Watson <cjwatson@ubuntu.com>
1553
1554 Avoid false positives in fs.lst, partmap.lst, and video.lst due to
1555 prototype declarations.
1556
1557 * genmk.rb (PModule::rule): Define GRUB_LST_GENERATOR when
1558 generating fs, partmap, and video lists.
1559 * include/grub/fs.h (grub_fs_register): Omit prototype if
1560 GRUB_LST_GENERATOR is defined.
1561 * include/grub/partition.h (grub_partition_map_register): Likewise.
1562 * include/grub/video.h (grub_video_register): Likewise.
1563
15642010-06-12 Javier Martín <lordhabbit@gmail.com>
1565
1566 * include/grub/types.h: Check for GRUB_CPU_SIZEOF_LONG when appropriate.
1567
15682010-06-12 Thomas Schmitt <scdbackup@gmx.net>
1569
1570 * util/grub-mkrescue.in: Support --xorriso argument.
1571
15722010-06-12 Vladimir Serbinenko <phcoder@gmail.com>
1573
1574 * util/grub-mkrescue.in: Use -graft-points instead of -pathspecs.
1575 Suggested by: Thomas Schmitt.
1576
15772010-06-12 Vladimir Serbinenko <phcoder@gmail.com>
1578
1579 * util/grub-mkrescue.in: Add --sort-weight arguments to xorriso.
1580 Suggested by: Thomas Schmitt.
1581
15822010-06-12 Vladimir Serbinenko <phcoder@gmail.com>
1583
1584 custom.cfg support.
1585
1586 * conf/common.rmk (grub-mkconfig_SCRIPTS): Add 41_custom.
1587 * util/grub.d/41_custom.in: New file.
1588
15892010-06-12 Colin Watson <cjwatson@ubuntu.com>
1590
1591 * util/grub-mkrescue.in (make_image): Remove sh module, which has
1592 been merged back into normal.
1593
15942010-06-11 Colin Watson <cjwatson@ubuntu.com>
1595
1596 * include/grub/efi/uga_draw.h (GRUB_EFI_UGA_GLT_MAX): Rename to ...
1597 (GRUB_EFI_UGA_BLT_MAX): ... this (typo fix).
1598
15992010-06-11 Colin Watson <cjwatson@ubuntu.com>
1600
1601 * Makefile.in (install-local): Include $(srcdir)/docs/man/$$dest.h2m
1602 when generating manual pages.
1603 * docs/man/grub-bin2h.h2m: New file.
1604 * docs/man/grub-editenv.h2m: New file.
1605 * docs/man/grub-fstest.h2m: New file.
1606 * docs/man/grub-install.h2m: New file.
1607 * docs/man/grub-macho2img.h2m: New file.
1608 * docs/man/grub-mkconfig.h2m: New file.
1609 * docs/man/grub-mkdevicemap.h2m: New file.
1610 * docs/man/grub-mkfont.h2m: New file.
1611 * docs/man/grub-mkimage.h2m: New file.
1612 * docs/man/grub-mkpasswd-pbkdf2.h2m: New file.
1613 * docs/man/grub-mkrelpath.h2m: New file.
1614 * docs/man/grub-mkrescue.h2m: New file.
1615 * docs/man/grub-ofpathname.h2m: New file.
1616 * docs/man/grub-pe2elf.h2m: New file.
1617 * docs/man/grub-probe.h2m: New file.
1618 * docs/man/grub-reboot.h2m: New file.
1619 * docs/man/grub-script-check.h2m: New file.
1620 * docs/man/grub-set-default.h2m: New file.
1621 * docs/man/grub-setup.h2m: New file.
1622
16232010-06-10 Vladimir Serbinenko <phcoder@gmail.com>
1624
1625 Use FOR_* macros instead of *_iterate whenever possible.
1626
1627 * commands/handler.c: Removed.
1628 * commands/help.c (grub_cmd_help): Use FOR_COMMANDS.
1629 * commands/minicmd.c (grub_mini_cmd_lsmod): Use FOR_DL_MODULES.
1630 * conf/any-emu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
1631 * conf/common.rmk (script/lexer.c_DEPENDENCIES): Add grub_script.yy.h.
1632 (grub_probe_SOURCES): Remove kern/parser.c.
1633 (util/grub-script-check.c_DEPENDENCIES): Removed.
1634 (grub_script_check_SOURCES): Remove kern/handler.c, kern/parser.c
1635 and grub_script_check_init.c.
1636 (grub_script_check_init.lst): Removed.
1637 (grub_script_check_init.h): Likewise.
1638 (grub_script_check_init.c): Likewise.
1639 (pkglib_MODULES): Remove handler.mod and sh.mod.
1640 (handler_mod_SOURCES): Removed.
1641 (handler_mod_CFLAGS): Likewise.
1642 (handler_mod_LDFLAGS): Likewise.
1643 (normal_mod_SOURCES): Remove normal/handler.c.
1644 Add script/main.c, script/script.c, script/execute.c,
1645 script/function.c, script/lexer.c, grub_script.tab.c
1646 and grub_script.yy.c.
1647 * conf/i386-coreboot.rmk (kernel_img_SOURCES): Remove kern/handler.c.
1648 * conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
1649 * conf/i386-pc.rmk (kernel_img_SOURCES): Likewise.
1650 (grub_setup_SOURCES): Remove kern/parser.c.
1651 * conf/i386-qemu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
1652 * conf/mips-qemu-mips.rmk (kernel_img_SOURCES): Likewise.
1653 * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise.
1654 * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Likewise.
1655 * conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
1656 (grub_setup_SOURCES): Remove kern/parser.c.
1657 * conf/x86-efi.rmk (kernel_img_SOURCES): Remove kern/handler.c.
1658 * gettext/gettext.c (grub_gettext_delete_list): Don't use grub_list_pop.
1659 * include/grub/command.h (grub_command_iterate): Removed.
1660 (FOR_COMMANDS): New macro.
1661 * include/grub/dl.h (grub_dl): New member next.
1662 (grub_dl_iterate): Removed.
1663 (grub_dl_head): New variable declaration.
1664 (FOR_DL_MODULES): New macro.
1665 * include/grub/fs.h: Include list.h.
1666 (grub_fs): Make next first element.
1667 (grub_fs_list): New variable declaration.
1668 (grub_fs_register): Make inline.
1669 (grub_fs_unregister): Likewise.
1670 (grub_fs_iterate): Removed.
1671 (FOR_FILESYSTEMS): New macro.
1672 * include/grub/handler.h: Removed.
1673 * include/grub/list.h (grub_list_hook_t): Removed.
1674 (grub_list_test_t): Likewise.
1675 (grub_list_pop): Likewise.
1676 (grub_list_iterate): Likewise.
1677 (grub_list_insert): Likewise.
1678 (FOR_LIST_ELEMENTS): New macro.
1679 * include/grub/parser.h (grub_parser_class): Removed.
1680 (grub_parser_register): Likewise.
1681 (grub_parser_unregister): Likewise.
1682 (grub_parser_get_current): Likewise.
1683 (grub_parser_set_current): Likewise.
1684 (grub_register_rescue_parser): Likewise.
1685 (grub_rescue_parse_line): New function.
1686 * include/grub/partition.h (FOR_PARTITION_MAPS): Use FOR_LIST_ELEMENTS.
1687 * include/grub/script_sh.h (grub_script_function_list): New variable
1688 declaration.
1689 (FOR_SCRIPT_FUNCTIONS): New macro.
1690 (grub_script_function_iterate): Removed.
1691 (grub_normal_parse_line): New prototype.
1692 * include/grub/term.h (FOR_ACTIVE_TERM_INPUTS): Use FOR_LIST_ELEMENTS.
1693 (FOR_DISABLED_TERM_INPUTS): Likewise.
1694 (FOR_ACTIVE_TERM_OUTPUTS): Likewise.
1695 (FOR_DISABLED_TERM_OUTPUTS): Likewise.
1696 * include/grub/video.h (grub_video_adapter): Move 'next' to first
1697 element.
1698 (grub_video_register): Inline.
1699 (grub_video_unregister): Likewise.
1700 (grub_video_adapter_list): New variable declaration.
1701 (grub_video_iterate): Removed.
1702 (FOR_VIDEO_ADAPTERS): New macro.
1703 * kern/dl.c (grub_dl_list): Removed. All users updated.
1704 (grub_dl_iterate): Removed.
1705 * kern/fs.c (grub_fs_list): Make global.
1706 (grub_fs_register): Removed.
1707 (grub_fs_unregister): Likewise.
1708 (grub_fs_iterate): Likewise.
1709 * kern/handler.c: Removed.
1710 * kern/list.c (grub_list_pop): Removed.
1711 (grub_list_iterate): Likewise.
1712 (grub_list_insert): Likewise.
1713 (grub_named_list_find): Use FOR_LIST_ELEMENTS.
1714 (grub_prio_list_insert): Don't use grub_list_insert.
1715 * kern/main.c (grub_register_rescue_parser): Don't call
1716 grub_register_rescue_parser.
1717 * kern/parser.c (grub_parser_class): Removed.
1718 (grub_parser_execute): Use grub_rescue_parse_line.
1719 * kern/rescue_parser.c (grub_rescue_parse_line): Make global.
1720 (grub_rescue_parser): Removed.
1721 (grub_register_rescue_parser): Likewise.
1722 * kern/rescue_reader.c (grub_rescue_run): Use grub_rescue_parse_line.
1723 * normal/auth.c (is_authenticated): Use FOR_LIST_ELEMENTS.
1724 (grub_auth_check_authentication): Likewise.
1725 * normal/completion.c (iterate_command): Removed.
1726 (grub_normal_do_completion): Use FOR_COMMANDS.
1727 * normal/handler.c: Removed.
1728 * normal/main.c (read_config_file): Remove parser changing.
1729 (grub_normal_execute): Don't call read_handler_list.
1730 (grub_normal_read_line_real): Statically allocate prompt.
1731 (grub_cmdline_run): Use grub_normal_parse_line.
1732 (GRUB_MOD_FINI): Don't call free_handler_list.
1733 * normal/menu_entry.c (run): Likewise.
1734 * script/function.c (grub_script_function_list): Make global.
1735 (grub_script_function_iterate): Removed.
1736 * script/main.c (grub_normal_parse_line): Make global.
1737 (grub_sh_parser): Removed.
1738 (GRUB_MOD_INIT): Likewise.
1739 (GRUB_MOD_FINI): Likewise.
1740 * tests/lib/functional_test.c (grub_functional_test): Use
1741 FOR_LIST_ELEMENTS.
1742 * tests/lib/test.c (free_failures): Don't use grub_list_pop.
1743 (grub_test_run): Use FOR_LIST_ELEMENTS.
1744 * tests/lib/unit_test.c (main): Likewise.
1745 * util/deviceiter.c (grub_util_iterate_devices): Don't use
1746 grub_list_pop.
1747 * util/grub-fstest.c (grub_term_input_class): Removed.
1748 (grub_term_output_class): Likewise.
1749 * util/grub-probe.c: Likewise.
1750 * util/i386/pc/grub-setup.c: Likewise.
1751 * util/sparc64/ieee1275/grub-setup.c: Likewise.
1752 * util/grub-script-check.c (main): Don't call grub_init_all and
1753 grub_fini_all.
1754 * video/video.c (grub_video_adapter_list): Make global.
1755 (grub_video_register): Removed.
1756 (grub_video_unregister): Likewise.
1757 (grub_video_iterate): Likewise.
1758
17592010-06-09 Vladimir Serbinenko <phcoder@gmail.com>
1760
1761 * docs/grub.texi (Vendor power-on button): Add Asus EeePC 1005PE as
1762 reported by Henrique Ferreiro.
1763
17642010-06-09 Robert Millan <rmh@gnu.org>
1765
1766 * util/grub.d/10_linux.in: Prefer compressed images over non-compressed
1767 ones, when both are available.
1768
17692010-06-08 Grégoire Sutre <gregoire.sutre@gmail.com>
1770
1771 Make --version uniform and avoid hard-coded program name.
1772
1773 * util/grub-mkimage.c (main): Use `program_name' instead of
1774 hard-coded string.
1775 * util/i386/pc/grub-setup.c (main): Likewise.
1776 * util/sparc64/ieee1275/grub-setup.c (parse_options): Likewise.
1777 * util/grub-install.in: Save the basename of $0 in $self, and use the
1778 latter in informational messages. Use the same format for --version
1779 as the binary programs.
1780 * util/grub-mkconfig.in: Likewise.
1781 * util/grub-mkrescue.in: Likewise.
1782 * util/grub-reboot.in: Likewise.
1783 * util/grub-set-default.in: Likewise.
1784 * util/i386/efi/grub-install.in: Likewise.
1785 * util/ieee1275/grub-install.in: Likewise.
1786 * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
1787
17882010-06-08 Grégoire Sutre <gregoire.sutre@gmail.com>
1789
1790 * util/i386/pc/grub-setup.c (setup): Use absolute offsets for start of
1791 embedding area. Use <= instead of == when checking for non-emptiness.
1792
17932010-06-08 Grégoire Sutre <gregoire.sutre@gmail.com>
1794
1795 * configure.ac: Add `.' to the directories searched for unifont.
1796
17972010-06-08 Colin Watson <cjwatson@ubuntu.com>
1798
1799 * .bzrignore: Add ascii.bitmaps, ascii.h, grub_script.yy.c, and
1800 grub_script.yy.h.
1801
18022010-06-08 Colin Watson <cjwatson@ubuntu.com>
1803
1804 * docs/grub.texi (History): Expand to cover GRUB 2.
1805 (Serial terminal): Refer to `terminal_input' and `terminal_output'
1806 commands, not `terminal'.
1807 (serial): Likewise.
1808 (terminal_input): New section.
1809 (terminal_output): New section.
1810 (uppermem): New section (stub).
1811 (Obtaining and Building GRUB): Refer to Bazaar, not Subversion.
1812
18132010-06-08 Colin Watson <cjwatson@ubuntu.com>
1814
1815 * docs/grub.texi (Security): Menu entries are unrestricted by
1816 default, not restricted to superusers as I had previously thought.
1817 Reword to account for this.
1818
18192010-06-07 Colin Watson <cjwatson@ubuntu.com>
1820
1821 * kern/emu/misc.c (device_mapper_null_log): New function.
1822 (grub_device_mapper_supported): New function.
1823 * include/grub/emu/misc.h (grub_device_mapper_supported): Add
1824 prototype.
1825 * kern/emu/hostdisk.c (find_partition_start): Check whether
1826 device-mapper is supported before trying to use it.
1827 * util/deviceiter.c (grub_util_iterate_devices): Likewise.
1828
18292010-06-07 Colin Watson <cjwatson@ubuntu.com>
1830
1831 * docs/grub.texi (Naming convention): Use GRUB 2 syntax.
1832 (File name syntax): Likewise.
1833 (help): --all is no longer supported in GRUB 2. Be more precise
1834 about pattern matching.
1835
18362010-06-07 Colin Watson <cjwatson@ubuntu.com>
1837
1838 * normal/completion.c (grub_normal_do_completion): When completing
1839 arguments to "set" and the current word contains an equals sign,
1840 skip to after the equals sign before starting completion.
1841
18422010-06-07 Colin Watson <cjwatson@ubuntu.com>
1843
1844 * fs/i386/pc/pxe.c (grub_pxe_open): Fix parsing of gateway_ip.
1845
18462010-06-07 Colin Watson <cjwatson@ubuntu.com>
1847
1848 * docs/grub.texi (Network): New section.
1849 (Device syntax): The network device is called `(pxe)' in GRUB 2, not
1850 `(nd)' as in GRUB Legacy.
1851 (pxe_unload): New section.
1852
18532010-06-07 Colin Watson <cjwatson@ubuntu.com>
1854
1855 * docs/grub.texi (Troubleshooting): `echo' is not usually available
1856 in the rescue shell, so recommend using `set' instead. Thanks,
1857 Jordan Uggla.
1858
18592010-06-07 Colin Watson <cjwatson@ubuntu.com>
1860
1861 * docs/grub.texi (Filesystem): Refer to `search' instead of `find'.
1862 (password): New section.
1863 (password_pbkdf2): New section.
1864 (search): New section.
1865 (Security): New section.
1866 (Troubleshooting): New section, currently very incomplete.
1867 (Invoking grub-mkpasswd-pbkdf2): New section.
1868 (Internals): New section, currently very incomplete.
1869
18702010-06-07 Colin Watson <cjwatson@ubuntu.com>
1871
1872 * util/grub.d/00_header.in: Add some more quoting (of
1873 "${prev_saved_entry}" and "${boot_once}") needed to make savedefault
1874 work again.
1875 Reported by: Mario 'BitKoenig' Holbe (Debian bug #584812).
1876
18772010-06-07 Colin Watson <cjwatson@ubuntu.com>
1878
1879 * util/grub-mkpasswd-pbkdf2.c (main): Rename top-level `c' variable
1880 to `count', fixing variable shadowing that broke the -c option.
1881
18822010-06-05 Colin Watson <cjwatson@ubuntu.com>
1883
1884 * util/grub.d/00_header.in: Quote values assigned to `saved_entry',
1885 in case they contain spaces.
1886
18872010-06-04 Colin Watson <cjwatson@ubuntu.com>
1888
1889 * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Prepend
1890 "part_" to partmap module names, in line with grub-install.
1891 Reported by: Jindřich Makovička (Debian bug #584426).
1892
18932010-06-04 Colin Watson <cjwatson@ubuntu.com>
1894
1895 * util/grub-mkimage.c: Make target-related error messages slightly
1896 more helpful; -O talks about "format". Explicitly point to the use
1897 of -O if no target is specified.
1898 Reported by: Didier Raboud (Debian bug #584415).
1899
19002010-06-03 Colin Watson <cjwatson@ubuntu.com>
1901
1902 * INSTALL: Document several build requirements for optional features
1903 (libdevmapper, ncurses, libusb, SDL, FreeType, GNU Unifont).
1904
19052010-06-02 Grégoire Sutre <gregoire.sutre@gmail.com>
1906
1907 * kern/emu/hostdisk.c (convert_system_partition_to_system_disk)
1908 [__NetBSD__]: Handle all device names matching /dev/r[a-z]+[0-9][a-z].
1909 (find_partition_start) [__NetBSD__]: Correct error messages for NetBSD.
1910
19112010-06-02 Colin Watson <cjwatson@ubuntu.com>
1912
1913 * docs/grub.texi (Simple configuration): Fix copy-and-paste typo.
1914 Thanks to Jordan Uggla for spotting this.
1915
19162010-06-02 Aleš Nesrsta <starous@volny.cz>
1917
1918 Finally make USB usable.
1919
1920 * bus/usb/ohci.c (grub_ohci_reg_t): Add missing values.
1921 (GRUB_OHCI_RHUB_PORT_POWER_MASK): New macro.
1922 (GRUB_OHCI_RHUB_PORT_ALL_POWERED): Likewise.
1923 (GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_MASK): Likewise.
1924 (GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_SHIFT): Likewise.
1925 (GRUB_OHCI_REG_FRAME_INTERVAL_FI_SHIFT): Likewise.
1926 (GRUB_OHCI_FSMPS): Likewise.
1927 (GRUB_OHCI_PERIODIC_START): Likewise.
1928 (GRUB_OHCI_FRAME_INTERVAL): Likewise.
1929 (GRUB_OHCI_SET_PORT_ENABLE): Likewise.
1930 (GRUB_OHCI_CLEAR_PORT_ENABLE): Likewise.
1931 (GRUB_OHCI_SET_PORT_RESET): Likewise.
1932 (GRUB_OHCI_SET_PORT_RESET_STATUS_CHANGE): Likewise.
1933 * bus/usb/ohci.c (grub_ohci_pci_iter): Various important fixups.
1934 (grub_ohci_transaction): Likewise.
1935 (grub_ohci_transfer): Improve condition detection algorithms.
1936 Handle toggle property. Program the transactions correctly.
1937 Improve error handling. Various important fixups.
1938 (grub_ohci_portstatus): Put register writes in right order.
1939 * bus/usb/uhci.c (grub_free_queue): Compute last_trans.
1940 (grub_uhci_transfer): Don't show "failed" message on success.
1941 * bus/usb/usb.c (grub_usb_set_configuration): Zero-fill whole "toggle"
1942 array.
1943 (grub_usb_device_initialize): Read first 8 bytes of descriptor to
1944 determine its size.
1945 * bus/usb/usbtrans.c (grub_usb_control_msg): Use descdev.maxsize0 even
1946 before initialization is completed. Use IN direction for empty
1947 transfers. Use last_trans and compute toggle.
1948 * include/grub/usbtrans.h (grub_usb_transfer): New field last_trans.
1949 (GRUB_USB_FEATURE_ENDP_HALT): Correct the value.
1950 (GRUB_USB_FEATURE_DEV_REMOTE_WU): Likewise.
1951 (GRUB_USB_FEATURE_TEST_MODE): Likewise.
1952 * include/grub/usb.h (grub_usb_err_t): New value GRUB_USB_ERR_UNRECOVERABLE.
1953 (grub_usb_device): Increase toggle to 256.
1954 (grub_usbms_subclass_t): New values GRUB_USBMS_SUBCLASS_RBC,
1955 GRUB_USBMS_SUBCLASS_MMC2, GRUB_USBMS_SUBCLASS_UFI and
1956 GRUB_USBMS_SUBCLASS_SFF8070.
1957 * include/grub/scsicmd.h (grub_scsi_test_unit_ready): New structure.
1958 (grub_scsi_inquiry): New member page and alloc_length.
1959 (grub_scsi_request_sense): New structure.
1960 (grub_scsi_request_sense_data): Likewise.
1961 (grub_scsi_read_capacity): New fields logical_block_addr, PMI and
1962 control.
1963 * disk/scsi.c (grub_scsi_request_sense): New function.
1964 (grub_scsi_test_unit_ready): Likewise.
1965 (grub_scsi_inquiry): Fill new fields.
1966 (grub_scsi_read_capacity): Likewise.
1967 (grub_scsi_read10): Add request sense at the end.
1968 (grub_scsi_read12): Likewise.
1969 (grub_scsi_write10): Likewise.
1970 (grub_scsi_write12): Likewise.
1971 (grub_scsi_open): Add Test Unit Ready.
1972 * disk/usbms.c (grub_usbms_finddevs): Check configcnt.
1973 Support additional subclasses. Con't clear halt yet. Activate the
1974 proper config. Calculate LUNs correctly.
1975 (grub_usbms_transfer): Various important fixups.
1976
19772010-06-02 Vladimir Serbinenko <phcoder@gmail.com>
1978
1979 * bus/pci.c (grub_pci_iterate) [GRUB_MACHINE_MIPS_YEELOONG]: Skip ghosts.
1980 * bus/usb/ohci.c (grub_ohci_portstatus): Handle R/WC correctly.
1981 (grub_ohci_fini_hw): New function.
1982 (grub_ohci_restore_hw): Likewise.
1983 (GRUB_MOD_INIT(ohci)): Register preboot hook.
1984 (GRUB_MOD_FINI(ohci)): Shutdown OHCI.
1985 * term/usb_keyboard.c: Remove include of grub/machine/console.h.
1986
19872010-06-02 Vladimir Serbinenko <phcoder@gmail.com>
1988
1989 Dedicated DMA allocations.
1990
1991 * bus/pci.c (grub_memalign_dma32): New function
1992 (grub_dma_free): Likewise.
1993 (grub_dma_get_virt): Likewise.
1994 (grub_dma_get_phys): Likewise.
1995 * bus/usb/ohci.c (grub_ohci): New members hcca_addr and hcca_chunk.
1996 (grub_ohci_pci_iter): Use dma32_alloc.
1997 (grub_ohci_transfer): Likewise.
1998 * bus/usb/usbtrans.c (grub_usb_control_msg): Likewise.
1999 (grub_usb_bulk_readwrite): Likewise.
2000 * include/grub/pci.h: Add declarations.
2001
20022010-06-02 Vladimir Serbinenko <phcoder@gmail.com>
2003
2004 CS5536 support.
2005
2006 * bus/cs5536.c: New file.
2007 * bus/usb/ohci.c (grub_ohci_pci_iter): Check for CS5536.
2008 * conf/i386.rmk (pkglib_MODULES): Add cs5536.mod.
2009 (cs5536_mod_SOURCES): New variable.
2010 (cs5536_mod_CFLAGS): Likewise.
2011 (cs5536_mod_LDFLAGS): Likewise.
2012 * conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add cs5536.h and
2013 machine/pci.h.
2014 (kernel_img_SOURCES): Add bus/cs5536.c.
2015 (pkglib_MODULES): Add usb.mod, usbtest.mod, ohci.mod, usbms.mod and
2016 usb_keyboard.mod.
2017 (usb_mod_SOURCES): New variable.
2018 (usb_mod_CFLAGS): New variable.
2019 (usb_mod_LDFLAGS): New variable.
2020 (usbtest_mod_SOURCES): New variable.
2021 (usbtest_mod_CFLAGS): New variable.
2022 (usbtest_mod_LDFLAGS): New variable.
2023 (ohci_mod_SOURCES): New variable.
2024 (ohci_mod_CFLAGS): New variable.
2025 (ohci_mod_LDFLAGS): New variable.
2026 (usbms_mod_SOURCES): New variable.
2027 (usbms_mod_CFLAGS): New variable.
2028 (usbms_mod_LDFLAGS): New variable.
2029 (usb_keyboard_mod_SOURCES): New variable.
2030 (usb_keyboard_mod_CFLAGS): New variable.
2031 (usb_keyboard_mod_LDFLAGS): New variable.
2032 * include/grub/smbus.h: New file.
2033 * include/grub/cs5536.h: New file.
2034
20352010-06-02 Colin Watson <cjwatson@ubuntu.com>
2036
2037 * util/grub.d/00_header.in: Add safety check to make sure that
2038 ${locale_dir} exists before trying to probe it.
2039
20402010-06-02 Colin Watson <cjwatson@ubuntu.com>
2041
2042 * docs/grub.texi (SCO UnixWare): Remove, at Vladimir's request and
2043 per the GNU Coding Standards; this is now too obscure to be worth
2044 documenting.
2045 (QNX): Likewise.
2046 (chainloader): Remove cross-reference to `SCO UnixWare'.
2047
20482010-06-02 Colin Watson <cjwatson@ubuntu.com>
2049
2050 * docs/grub.texi (Chain-loading): New section.
2051 (DOS/Windows): New section, borrowed from GRUB Legacy with details
2052 adjusted for GRUB 2.
2053 (SCO UnixWare): Likewise.
2054 (QNX): Likewise.
2055 (chainloader): Add reference to `Block list syntax'.
2056 (drivemap): New section.
2057 (parttool): New section.
2058
20592010-06-02 Colin Watson <cjwatson@ubuntu.com>
2060
2061 * docs/grub.texi (GNU GRUB manual): Remove reference to `Invoking
2062 the grub shell'.
2063 (Installation): Add reference to `Making a GRUB bootable CD-ROM'.
2064 (Installing GRUB using grub-install): Remove reference to the grub
2065 shell; mention `grub-mkimage' and `grub-setup' instead.
2066 (Invoking grub-install): Likewise.
2067 (Interface): Add reference to `Menu entry editor'.
2068 (serial): Remove `--device' option.
2069
20702010-06-02 Colin Watson <cjwatson@ubuntu.com>
2071
2072 * docs/grub.texi (Configuration): New section, documenting
2073 configuration file generation using grub-mkconfig. I've left a slot
2074 for documenting the full shell scripting format but have not yet
2075 started on writing that up.
2076 (Invoking grub-mkconfig): New section.
2077
20782010-06-02 Colin Watson <cjwatson@ubuntu.com>
2079
2080 * docs/grub.texi (direntry): Remove grub-terminfo reference.
2081 (GNU GRUB manual): Likewise.
2082 (General commands): Update description of `terminfo' for GRUB 2.
2083
20842010-06-02 Colin Watson <cjwatson@ubuntu.com>
2085
2086 * commands/gptsync.c (grub_cmd_gptsync): Fix typos.
2087 (GRUB_MOD_INIT): Fix capitalisation.
2088 * docs/grub.texi (Command-line and menu entry commands): Document
2089 gettext and gptsync commands.
2090
20912010-06-02 Colin Watson <cjwatson@ubuntu.com>
2092
2093 * conf/any-emu.rmk (kernel_img_SOURCES) [!x86]: Include
2094 kern/$(target_cpu)/cache.S even if TARGET_NO_MODULES = yes.
2095
20962010-06-01 Colin Watson <cjwatson@ubuntu.com>
2097
2098 Add btrfs probing support, currently only in the single-device case.
2099
2100 * kern/emu/getroot.c (find_root_device_from_mountinfo): New
2101 function.
2102 (grub_guess_root_device): Call find_root_device_from_mountinfo
2103 before looking in /dev.
2104
21052010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
2106
2107 * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Use
2108 GRUB_DISK_SIZE_UNKNOWN.
2109 * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Likewise.
2110
21112010-05-31 Jiro SEKIBA <jir@unicus.jp>
2112
2113 * include/grub/disk.h (GRUB_DISK_SIZE_UNKNOWN): New macro.
2114 * fs/nilfs.c: Support 2nd super block in case 1st one is accidently
2115 corrupted or not synced properly.
2116
21172010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
2118
2119 * normal/main.c (grub_normal_add_menu_entry): Avoid going out of args.
2120 Reported by: Seth Goldberg.
2121
21222010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
2123
2124 * loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix incorrect
2125 addition of dest.
2126 Reported by: Seth Goldberg.
2127
21282010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
2129
2130 * commands/setpci.c (grub_setpci_iter): Fix an incorrect function check.
2131 Reported by: Seth Goldberg.
2132
21332010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
2134
2135 * loader/multiboot_elfxx.c (grub_multiboot_load_elfXX) [__mips]: Check
2136 64-bit address as signed on MIPS.
2137
21382010-05-28 Colin Watson <cjwatson@ubuntu.com>
2139
2140 * configure.ac: AC_PROG_LEX sets LEX to ":" if lex is missing, not
2141 to the empty string.
2142
21432010-05-28 BVK Chaitanya <bvk.groups@gmail.com>
2144
2145 Fix grub-emu issues on NetBSD, with gcc 4.1.3.
2146
2147 * conf/any-emu.rmk: Remove unnecessary COMMON_CFLAGS.
2148 * include/grub/emu/misc.h (canonicalize_file_name): New Prototype.
2149 * kern/misc.c (__enable_execute_stack): Disable on
2150 GRUB_MACHINE_EMU.
2151
21522010-05-28 Colin Watson <cjwatson@ubuntu.com>
2153
2154 Make grub-probe work with symbolic links under /dev/mapper as well
2155 as with real block devices. The Linux world seems to be (at best)
2156 in transition here, and GRUB shouldn't get caught in the middle.
2157
2158 * kern/emu/getroot.c (find_root_device): Follow symbolic links under
2159 /dev/mapper.
2160
21612010-05-27 Colin Watson <cjwatson@ubuntu.com>
2162
2163 * util/grub-script-check.c (main): Ensure defined behaviour on empty
2164 input files (in which case exit zero).
2165
21662010-05-27 Colin Watson <cjwatson@ubuntu.com>
2167
2168 * kern/emu/misc.c (canonicalize_file_name): realpath can still
2169 return NULL for various reasons even if it has a maximum-length
2170 buffer: for example, there might be a symlink loop, or the path
2171 might exceed PATH_MAX. If this happens, return NULL.
2172
21732010-05-27 Robert Millan <rmh@gnu.org>
2174
2175 * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Insert
2176 partmap module to handle cross-partmap setups.
2177 Reported by Orestes Mas. Gràcies!
2178
21792010-05-27 Colin Watson <cjwatson@ubuntu.com>
2180
2181 * util/grub-mkrescue.in: Initialise override_dir rather than
2182 assuming that it's unset or empty in the environment.
2183
21842010-05-26 Grégoire Sutre <gregoire.sutre@gmail.com>
2185
2186 * kern/emu/hostdisk.c (find_partition_start) [__NetBSD__]: Renamed
2187 variable index into p_index to suppress a warning with -Wshadow.
2188
21892010-05-25 BVK Chaitanya <bvk.groups@gmail.com>
2190
2191 * INSTALL: Added flex >= 2.5.35 requirement.
2192
21932010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
2194
2195 * commands/usbtest.c (grub_usb_get_string): Properly support UTF-16.
2196
21972010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
2198
2199 cmostest support.
2200
2201 * commands/i386/cmostest.c: New file.
2202 * conf/i386-coreboot.rmk (pkglib_MODULES): Add cmostest.mod.
2203 (cmostest_mod_SOURCES): New variable.
2204 (cmostest_mod_CFLAGS): Likewise.
2205 (cmostest_mod_LDFLAGS): Likewise.
2206 * conf/i386-pc.rmk: Likewise.
2207 * docs/grub.texi (Vendor power-on keys): New section.
2208 * util/grub-mkconfig.in: export GRUB_DEFAULT_BUTTON,
2209 GRUB_HIDDEN_TIMEOUT_BUTTON, GRUB_TIMEOUT_BUTTON
2210 and GRUB_BUTTON_CMOS_ADDRESS.
2211 * util/grub.d/00_header.in: Handle powering-on by separate button.
2212
22132010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
2214
2215 * gfxmenu/gui_list.c (draw_menu): Don't add scrollbar width to padding.
2216 Removed drawing_scrollbar argument. All users updated
2217 Fixes #29792.
2218 Reported by Jo Shields
2219
22202010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
2221
2222 * gfxmenu/view.c (grub_gfxmenu_draw_terminal_box): Apply only to current
2223 buffer since gfxterm handles double repaint.
2224
22252010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
2226
2227 * gfxmenu/gfxmenu.c (grub_gfxmenu_try): Change viewport on both buffers.
2228 * term/gfxterm.c (real_scroll): Likewise.
2229
22302010-05-21 Vladimir Serbinenko <phcoder@gmail.com>
2231
2232 * kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Zero-fill entry
2233 before calling BIOS.
2234
22352010-05-21 Vladimir Serbinenko <phcoder@gmail.com>
2236
2237 * include/grub/i18n.h: Always enable grub_gettext.
2238
22392010-05-21 Vladimir Serbinenko <phcoder@gmail.com>
2240
2241 * kern/i386/pc/init.c (make_install_device): Fix a leftover usage of old
2242 partition naming style.
2243
22442010-05-21 Colin Watson <cjwatson@ubuntu.com>
2245
2246 * util/grub-mkconfig.in: Fix handling of -o so that it works when
2247 not the first option.
2248
22492010-05-20 Colin Watson <cjwatson@ubuntu.com>
2250
2251 * util/grub-mkrelpath.c (usage): Remove excess apostrophe.
2252
22532010-05-20 Colin Watson <cjwatson@ubuntu.com>
2254
2255 * util/misc.c: Move inclusion of <limits.h> to ...
2256 * kern/emu/misc.c: ... here. Needed for canonicalize_file_name.
2257
22582010-05-20 Grégoire Sutre <gregoire.sutre@gmail.com>
2259
2260 * kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev) [__NetBSD__]:
2261 Fix merge error in NetBSD code.
2262 (find_partition_start) [__NetBSD__]: Likewise.
2263
22642010-05-19 BVK Chaitanya <bvk.groups@gmail.com>
2265
2266 Fix grub-mkrescue usage unit testing.
2267
2268 * tests/util/grub-shell.in: Use --grub-mkimage with grub-mkrescue.
2269
22702010-05-18 Christian Franke <franke@computer.org>
2271
2272 * util/grub.d/10_windows.in: Use path names instead of
2273 drive letters to prevent warning from Cygwin 1.7.
2274 Add drivemap command to menuentry if needed.
2275
22762010-05-18 Justus Winter <4winter@informatik.uni-hamburg.de>
2277
2278 * util/grub.d/10_hurd.in: Include all gnumach* kernels, not only
2279 gnumach and gnumach.gz.
2280
22812010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
2282
2283 * include/grub/i18n.h (gettext): Inline instead of using #define.
2284 (grub_gettext): Likewise.
2285 (_): Likewise.
2286
22872010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
2288
2289 * Makefile.in (CPPFLAGS): Replace -DGRUB_LIBDIR with
2290 -DGRUB_PKGLIBROOTDIR= and prepend @PACKAGE_TARNAME@. All users updated.
2291 * util/grub-mkimage.c (image_targets): Add i386-multiboot.
2292 (main): Add a slash after pkglibdirroot.
2293
22942010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
2295
2296 * util/grub-install.in: Add missing "in" keyword.
2297
22982010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
2299
2300 * util/grub-mkrescue.in: Remove -O i386-pc duplication.
2301 Reported by: Seth Goldberg.
2302
23032010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
2304
2305 * po/POTFILES: Rename util/grub-mkrawimage.c to util/grub-mkimage.c.
2306
23072010-05-18 Colin Watson <cjwatson@ubuntu.com>
2308
2309 * configure.ac: Check for Linux device-mapper support.
2310
2311 * util/hostdisk.c (device_is_mapped): New function.
2312 (find_partition_start): New function, partly broken out from
2313 linux_find_partition and grub_util_biosdisk_get_grub_dev but with
2314 device-mapper support added.
2315 (linux_find_partition): Use find_partition_start.
2316 (convert_system_partition_to_system_disk): Add `st' argument.
2317 Support Linux /dev/mapper/* devices if device-mapper support is
2318 available; only DM-RAID devices are understood at present.
2319 (find_system_device): Add `st' argument. Pass it to
2320 convert_system_partition_to_system_disk.
2321 (grub_util_biosdisk_get_grub_dev): Pass stat result to
2322 find_system_device and convert_system_partition_to_system_disk. Use
2323 find_partition_start.
2324
2325 * conf/common.rmk (grub_mkdevicemap_SOURCES): Add kern/env.c,
2326 kern/err.c, kern/list.c, kern/misc.c, and kern/emu/mm.c.
2327 * util/deviceiter.c [__linux__]: Define MINOR.
2328 (grub_util_iterate_devices): Add support for DM-RAID disk devices.
2329 * util/mkdevicemap.c (grub_putchar): New function.
2330 (grub_getkey): New function.
2331 (grub_refresh): New function.
2332 (main): Set debug=all if -v -v is used.
2333
23342010-05-18 Colin Watson <cjwatson@ubuntu.com>
2335
2336 Fix build with non-GNU libcs.
2337
2338 * util/misc.c (canonicalize_file_name): Move to ...
2339 * kern/emu/misc.c (canonicalize_file_name): ... here. Needed by
2340 grub_make_system_path_relative_to_its_root.
2341
23422010-05-18 Colin Watson <cjwatson@ubuntu.com>
2343
2344 * util/grub-mkrescue.in: Sync up with grub-install in terms of how
2345 we handle finding grub-mkimage. Default to finding grub-mkimage in
2346 ${bindir} with program_transform_name applied, and provide a
2347 --grub-mkimage option to override this.
2348
23492010-05-17 Vladimir Serbinenko <phcoder@gmail.com>
2350
2351 Remove grub-mkisofs.
2352
2353 * conf/common.rmk (bin_UTILITIES): Remove grub-mkisofs.
2354 (grub_mkisofs_SOURCES): Removed.
2355 (grub_mkisofs_CFLAGS): Removed.
2356 * util/mkisofs/defaults.h: Removed.
2357 * util/mkisofs/eltorito.c: Likewise.
2358 * util/mkisofs/exclude.h: Likewise.
2359 * util/mkisofs/hash.c: Likewise.
2360 * util/mkisofs/include/: Likewise.
2361 * util/mkisofs/include/fctldefs.h: Likewise.
2362 * util/mkisofs/include/mconfig.h: Likewise.
2363 * util/mkisofs/include/prototyp.h: Likewise.
2364 * util/mkisofs/include/statdefs.h: Likewise.
2365 * util/mkisofs/iso9660.h: Likewise.
2366 * util/mkisofs/joliet.c: Likewise.
2367 * util/mkisofs/match.c: Likewise.
2368 * util/mkisofs/match.h: Likewise.
2369 * util/mkisofs/mkisofs.c: Likewise.
2370 * util/mkisofs/mkisofs.h: Likewise.
2371 * util/mkisofs/msdos_partition.h: Likewise.
2372 * util/mkisofs/multi.c: Likewise.
2373 * util/mkisofs/name.c: Likewise.
2374 * util/mkisofs/rock.c: Likewise.
2375 * util/mkisofs/tree.c: Likewise.
2376 * util/mkisofs/write.c: Likewise.
2377
23782010-05-17 Vladimir Serbinenko <phcoder@gmail.com>
2379
2380 Unify grub-mkimage accross platforms.
2381
2382 * Makefile.in (CPPFLAGS): Set GRUB_LIBDIR to $(libdir).
2383 * conf/common.rmk (bin_UTILITIES): Removed grub-mkelfimage.
2384 (grub_mkelfimage_SOURCES): Removed.
2385 (util/elf/grub-mkimage.c_DEPENDENCIES): Renamed to ..
2386 (util/grub-mkimage.c_DEPENDENCIES): .. this.
2387 (bin_UTILITIES): Add grub-mkimage.
2388 (grub_mkimage_SOURCES): New variable.
2389 (kernel_img_HEADERS): Remove machine/kernel.h.
2390 * conf/i386-pc.rmk (pkglib_IMAGES): Remove kernel.img.
2391 (pkglib_PROGRAMS): Add kernel.img.
2392 (kernel_img_HEADERS): Add machine/kernel.h.
2393 (kernel_img_FORMAT): Removed.
2394 (bin_UTILITIES): Remove grub-mkimage.
2395 (grub_mkimage_SOURCES): Removed.
2396 (grub_mkimage_CFLAGS): Likewise.
2397 (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
2398 * conf/i386-qemu.rmk (pkglib_IMAGES): Remove kernel.img.
2399 (pkglib_PROGRAMS): Add kernel.img.
2400 (bin_UTILITIES): Remove grub-mkimage.
2401 (grub_mkimage_SOURCES): Removed.
2402 (grub_mkimage_CFLAGS): Likewise.
2403 (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
2404 * conf/mips-qemu-mips.rmk (pkglib_IMAGES): Remove kernel.img.
2405 (pkglib_PROGRAMS): Add kernel.img.
2406 * conf/mips-yeeloong.rmk (pkglib_IMAGES): Remove kernel.img.
2407 (pkglib_PROGRAMS): Add kernel.img.
2408 * conf/mips.rmk (bin_UTILITIES): Remove grub-mkimage.
2409 (grub_mkimage_SOURCES): Removed.
2410 (grub_mkimage_CFLAGS): Likewise.
2411 (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
2412 * conf/sparc64-ieee1275.rmk (pkglib_IMAGES): Remove kernel.img.
2413 (pkglib_PROGRAMS): Add kernel.img.
2414 (bin_UTILITIES): Remove grub-mkimage.
2415 (grub_mkimage_SOURCES): Removed.
2416 (grub_mkimage_CFLAGS): Likewise.
2417 (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
2418 * conf/x86-efi.rmk (bin_UTILITIES): Remove grub-mkimage.
2419 (grub_mkimage_SOURCES): Removed.
2420 (grub_mkimage_CFLAGS): Likewise.
2421 (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
2422 * configure.ac (machine_CFLAGS): Add "-DMACHINE".
2423 * include/grub/efi/pe32.h (grub_pe32_optional_header): Split into ...
2424 (grub_pe32_optional_header): ... this.
2425 (grub_pe64_optional_header): ... and this. All users updated.
2426 (GRUB_PE32_PE32_MAGIC): Split into ..
2427 (GRUB_PE32_PE32_MAGIC): .. this.
2428 (GRUB_PE32_PE64_MAGIC): .. and this.
2429 (GRUB_PE32_SIGNATURE_SIZE): New definition.
2430 * include/grub/elf.h (PT_GNU_STACK): New definition.
2431 * include/grub/i386/coreboot/kernel.h: Merged into include/grub/offsets.h. All users updated.
2432 * include/grub/i386/efi/kernel.h: Likewise.
2433 * include/grub/i386/kernel.h: Likewise.
2434 * include/grub/i386/pc/kernel.h: Likewise.
2435 * include/grub/i386/qemu/boot.h: Likewise.
2436 * include/grub/mips/kernel.h: Likewise.
2437 * include/grub/mips/qemu-mips/kernel.h: Likewise.
2438 * include/grub/powerpc/ieee1275/kernel.h: Likewise.
2439 * include/grub/powerpc/kernel.h: Likewise.
2440 * include/grub/sparc64/ieee1275/boot.h: Likewise.
2441 * include/grub/sparc64/ieee1275/kernel.h: Likewise.
2442 * include/grub/sparc64/kernel.h: Likewise.
2443 * include/grub/x86_64/efi/kernel.h: Likewise.
2444 * include/grub/x86_64/kernel.h: Likewise.
2445 * include/grub/offsets.h: New file.
2446 * include/grub/kernel.h (grub_module_info): Split into ...
2447 (grub_module_info32): ... this.
2448 (grub_module_info64): ... and this.
2449 * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_KERNEL_SEG): Moved from here ...
2450 * include/grub/offsets.h (GRUB_BOOT_I386_PC_KERNEL_SEG): ... here.
2451 (grub_boot_blocklist): Moved from here ...
2452 * include/grub/offsets.h (grub_pc_bios_boot_blocklist): ... here.
2453 * include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): Moved from here.
2454 * include/grub/offsets.h (GRUB_MEMORY_I386_PC_UPPER): .. here.
2455 * include/grub/types.h (grub_target_to_host16): Removed.
2456 (grub_target_to_host32): Likewise.
2457 (grub_target_to_host64): Likewise.
2458 (grub_host_to_target16): Likewise.
2459 (grub_host_to_target32): Likewise.
2460 (grub_host_to_target64): Likewise.
2461 (grub_host_to_target_addr): Likewise.
2462
2463 Support grub-mkrescue for efi, coreboot and qemu.
2464
2465 * conf/x86-efi.rmk (bin_SCRIPTS): Add grub-mkrescue.
2466 * kern/efi/init.c (grub_efi_set_prefix): Handle baked in prefix.
2467 * util/elf/grub-mkimage.c: Merged into util/grub-mkimage.c.
2468 * util/grub-mkrawimage.c: Moved from here ...
2469 * util/grub-mkimage.c: ... here. All users updated.
2470 (ALIGN_ADDR): Use image_target.
2471 (TARGET_NO_FIELD): New const.
2472 (image_target_desc): New type.
2473 (image_targets): New array.
2474 (grub_target_to_host64): Use image_target.
2475 (grub_target_to_host32): Likewise.
2476 (grub_target_to_host16): Likewise.
2477 (grub_host_to_target64): Likewise.
2478 (grub_host_to_target32): Likewise.
2479 (grub_host_to_target16): Likewise.
2480 (grub_host_to_target_addr): Likewise.
2481 (generate_image): Handle multiimage.
2482 (main): Require -O parameter. All users updated.
2483 * util/grub-mkimagexx.c: New file. Based on util/grub-mkrawimage.c and
2484 util/efi/grub-mkimage.c
2485 * util/grub-mkrescue.in: Handle coreboot, efi and qemu.
2486 New option --rom-directory.
2487 Use xorriso.
2488 * util/i386/efi/grub-mkimage.c: Removed.
2489 * util/i386/pc/grub-setup.c (grub_target_to_host16): New definition.
2490 (grub_target_to_host32): Likewise.
2491 (grub_target_to_host64): Likewise.
2492 (grub_host_to_target16): Likewise.
2493 (grub_host_to_target32): Likewise.
2494 (grub_host_to_target64): Likewise.
2495 * util/sparc64/ieee1275/grub-setup.c (grub_target_to_host16): New definition.
2496 (grub_target_to_host32): Likewise.
2497 (grub_target_to_host64): Likewise.
2498 (grub_host_to_target16): Likewise.
2499 (grub_host_to_target32): Likewise.
2500 (grub_host_to_target64): Likewise.
2501
25022010-05-17 BVK Chaitanya <bvk.groups@gmail.com>
2503
2504 Source tree is reorganized for emu build.
2505
2506 * include/grub/util/console.h: Move from here...
2507 * include/grub/emu/console.h: ...to here.
2508 * include/grub/util/getroot.h: Move from here...
2509 * include/grub/emu/getroot.h: ...to here.
2510 * include/grub/util/hostdisk.h: Move from here...
2511 * include/grub/emu/hostdisk.h: ...to here.
2512 * util/console.c: Move from here...
2513 * kern/emu/console.c: ...to here.
2514 * util/getroot.c: Move from here...
2515 * kern/emu/getroot.c: ...to here.
2516 * util/grub-emu.c: Move from here...
2517 * kern/emu/main.c: ...to here.
2518 * util/hostdisk.c: Move from here...
2519 * kern/emu/hostdisk.c: ...to here.
2520 * util/hostfs.c: Move from here...
2521 * kern/emu/hostfs.c: ...to here.
2522 * util/mm.c: Move from here...
2523 * kern/emu/mm.c: ...to here.
2524 * util/pci.c: Move from here...
2525 * bus/emu/pci.c: ...to here.
2526 * util/sdl.c: Move from here...
2527 * video/emu/sdl.c: ...to here.
2528 * util/time.c: Move from here...
2529 * kern/emu/time.c: ...to here.
2530 * util/usb.c: Move from here...
2531 * bus/usb/emu/usb.c: ...to here.
2532
2533 * include/grub/emu/misc.h: New header for grub-emu functions.
2534 * kern/emu/misc.c: grub-emu functions separated from util/misc.c
2535
2536 * conf/any-emu.rmk: Rule updates for above renames.
2537 * conf/common.rmk: Likewise.
2538 * conf/i386-pc.rmk: Likewise.
2539 * conf/i386-qemu.rmk: Likewise.
2540 * conf/mips.rmk: Likewise.
2541 * conf/sparc64-ieee1275.rmk: Likewise.
2542 * conf/x86-efi.rmk: Likewise.
2543
2544 * disk/lvm.h: #include updates for above renames.
2545 * util/grub-mkrelpath.c: Likewise.
2546 * util/grub-probe.c: Likewise.
2547 * util/i386/pc/grub-setup.c: Likewise.
2548 * util/sparc64/ieee1275/grub-setup.c: Likewise.
2549 * kern/emu/console.c: Likewise.
2550 * kern/emu/getroot.c: Likewise.
2551 * kern/emu/hostdisk.c: Likewise.
2552 * kern/emu/main.c: Likewise. (was grub-emu.c earlier)
2553
2554 * include/grub/dl.h: Remove grub_dl_{ref,unref}.
2555 * include/grub/util/misc.h: Move grub-emu functions to emu/misc.h.
2556 * kern/dl.c: Handle null mod in grub_dl_{ref,unref}.
2557 * util/misc.c: Remove grub-emu functions.
2558
25592010-05-13 Vladimir Serbinenko <phcoder@gmail.com>
2560
2561 Fix gfxmenu crash.
2562 Reported by: Thorsten Grützmacher.
2563
2564 * gfxmenu/gui_circular_progress.c (circprog_destroy): Unregister
2565 timeout hook.
2566 (circprog_set_property): Register and unregister timeout hook.
2567 * gfxmenu/gui_label.c (grub_gui_label): New fields template and value.
2568 (label_destroy): Free template. and unregister hook.
2569 (label_set_state): New function.
2570 (label_set_property): Handle templates and hooks.
2571 * gfxmenu/gui_progress_bar.c (progress_bar_destroy): Unregister
2572 timeout hook.
2573 (progress_bar_set_property): Register and unregister timeout hook.
2574 * gfxmenu/view.c (TIMEOUT_COMPONENT_ID): Move from here ...
2575 * include/grub/gui.h (GRUB_GFXMENU_TIMEOUT_COMPONENT_ID): ...to here
2576 * gfxmenu/view.c (grub_gfxmenu_timeout_notifications): New variable.
2577 (update_timeout_visit): Removed.
2578 (update_timeouts): New function.
2579 (redraw_timeouts): Likewise.
2580 (grub_gfxmenu_print_timeout): Use update_timeouts and redraw_timeouts.
2581 (grub_gfxmenu_clear_timeout): Likewise.
2582 * include/grub/gui.h (grub_gfxmenu_set_state_t): New type.
2583 (grub_gfxmenu_timeout_notify): Likewise.
2584 (grub_gfxmenu_timeout_notifications): New external variable.
2585 (grub_gfxmenu_timeout_register): New function.
2586 (grub_gfxmenu_timeout_unregister): Likewise.
2587
25882010-05-09 Vladimir Serbinenko <phcoder@gmail.com>
2589
2590 Transform (broken) vga terminal into (working) vga video driver.
2591
2592 * conf/i386-pc.rmk (vga_mod_SOURCES): Change term/i386/pc/vga.c to
2593 video/i386/pc/vga.c.
2594 * include/grub/video.h (grub_video_driver_id):
2595 Add GRUB_VIDEO_DRIVER_VGA.
2596 * term/i386/pc/vga.c: Renamed to ...
2597 * video/i386/pc/vga.c: ...this
2598 (DEBUG_VGA): Removed.
2599 (CHAR_WIDTH): Likewise.
2600 (CHAR_HEIGHT): Likewise.
2601 (TEXT_WIDTH): Likewise.
2602 (TEXT_HEIGHT): Likewise.
2603 (DEFAULT_FG_COLOR): Likewise.
2604 (DEFAULT_BG_COLOR): Likewise.
2605 (colored_char): Likewise.
2606 (xpos): Likewise.
2607 (ypos): Likewise.
2608 (cursor_state): Likewise.
2609 (fg_color): Likewise.
2610 (bg_color): Likewise.
2611 (text_buf): Likewise.
2612 (page): Likewise.
2613 (font): Likewise.
2614 (framebuffer): New variable.
2615 (set_read_map): Disabled.
2616 (setup): New variable.
2617 (is_target): Likewise.
2618 (grub_vga_mod_init): Likewise.
2619 (grub_vga_mod_fini): Likewise.
2620 (check_vga_mem): Likewise.
2621 (write_char): Likewise.
2622 (write_cursor): Likewise.
2623 (scroll_up): Likewise.
2624 (grub_vga_putchar): Likewise.
2625 (grub_vga_getcharwidth): Likewise.
2626 (grub_vga_getwh): Likewise.
2627 (grub_vga_getxy): Likewise.
2628 (grub_vga_gotoxy): Likewise.
2629 (grub_vga_cls): Likewise.
2630 (grub_vga_setcolorstate): Likewise.
2631 (grub_vga_setcursor): Likewise.
2632 (grub_video_vga_init): New function.
2633 (grub_video_vga_setup): Likewise.
2634 (grub_video_vga_fini): Likewise.
2635 (update_target): Likewise.
2636 (grub_video_vga_blit_bitmap): Likewise.
2637 (grub_video_vga_blit_render_target): Likewise.
2638 (grub_video_vga_set_active_render_target): Likewise.
2639 (grub_video_vga_get_active_render_target): Likewise.
2640 (grub_video_vga_swap_buffers): Likewise.
2641 (grub_video_vga_set_palette): Likewise.
2642 (grub_video_vga_get_info_and_fini): Likewise.
2643 (grub_vga_term): Removed.
2644 (grub_video_vga_adapter): New variable.
2645 (GRUB_MOD_INIT): Register a video driver instead of terminal.
2646 (GRUB_MOD_FINI): Unrefister a video driver instead of terminal.
2647
26482010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
2649
2650 * video/readers/jpeg.c: Indented.
2651
26522010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
2653
2654 Various jpeg cleanups.
2655
2656 * video/readers/jpeg.c (grub_jpeg_get_huff_code): Use ARRAY_SIZE.
2657 (grub_jpeg_decode_quan_table): Use sizeof.
2658 (grub_jpeg_decode_du): Use ARRAY_SIZE.
2659
26602010-05-05 Peter Hurley <No e-mail available> (tiny change)
2661
2662 * video/readers/jpeg.c (grub_jpeg_decode_huff_table): Loop over all
2663 tables. Ignore non-last ac bit.
2664 (grub_jpeg_decode_quan_table): Likewise.
2665
26662010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
2667
2668 * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
2669 GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM.
2670 * kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
2671 GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM on qemu.
2672 * kern/ieee1275/init.c (grub_claim_heap): Don0t allocate below
2673 1.5MiB if GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM is set.
2674
26752010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
2676
2677 * term/ieee1275/ofconsole.c (grub_ofconsole_getkey): Fix off-by-one
2678 error.
2679
26802010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
2681
2682 * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Support C0 code.
2683
26842010-05-03 Vladimir Serbinenko <phcoder@gmail.com>
2685
2686 * commands/parttool.c (grub_cmd_parttool): Fix #if !GRUB_NO_MODULES
2687 condition.
2688
26892010-05-03 Vladimir Serbinenko <phcoder@gmail.com>
2690
2691 * kern/mm.c (grub_real_malloc): Put magic and size assignment in common
2692 part.
2693
26942010-05-03 Vladimir Serbinenko <phcoder@gmail.com>
2695
2696 * kern/mm.c (grub_mm_init_region): Check for region size after aligning
2697 pointers.
2698
26992010-05-03 Vladimir Serbinenko <phcoder@gmail.com>
2700
2701 * kern/mm.c (grub_real_malloc): Fix size calculation when extra == 0.
2702
27032010-05-01 Christian Franke <franke@computer.org>
2704
2705 * util/grub-mkconfig_lib.in (make_system_path_relative_to_its_root):
2706 Remove broken Cygwin path conversion.
2707 * util/misc.c: [__CYGWIN__] Add include and define.
2708 [__CYGWIN__] (get_win32_path): Copy function from getroot.c, modify
2709 for Cygwin 1.7.
2710 (make_system_path_relative_to_its_root): Simplify loop, replace early
2711 return by break.
2712 [__CYGWIN__] Add conversion to win32 path.
2713 Include "/" case in trailing slash removal.
2714
27152010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2716
2717 * kern/main.c (grub_load_config): Fix copy-pasted comment.
2718 Reported by: Seth Goldberg
2719
27202010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2721
2722 * commands/help.c (grub_cmd_help): Fix a typo.
2723 Reported by: Seth Goldberg
2724
27252010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2726
2727 * commands/hashsum.c (GRUB_MOD_INIT): Remove duplication of command
2728 name and add N_.
2729 * commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Likewise.
2730 * commands/iorw.c (GRUB_MOD_INIT): Likewise.
2731 * commands/password_pbkdf2.c (GRUB_MOD_INIT): Likewise.
2732 * commands/regexp.c (GRUB_MOD_INIT): Likewise.
2733 * commands/setpci.c (GRUB_MOD_INIT): Likewise.
2734 * commands/terminal.c (GRUB_MOD_INIT): Likewise.
2735 * efiemu/main.c (GRUB_MOD_INIT): Likewise.
2736 * font/font_cmd.c (GRUB_MOD_INIT): Likewise.
2737 * kern/corecmd.c (GRUB_MOD_INIT): Likewise.
2738 * mmap/mmap.c (GRUB_MOD_INIT): Likewise.
2739 * normal/context.c (GRUB_MOD_INIT): Likewise.
2740 * normal/main.c (GRUB_MOD_INIT): Likewise.
2741 * term/gfxterm.c (GRUB_MOD_INIT): Likewise.
2742 * term/serial.c (GRUB_MOD_INIT): Likewise.
2743 * term/terminfo.c (GRUB_MOD_INIT): Likewise.
2744
27452010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2746
2747 * kern/mm.c (grub_real_malloc): Satisfy alignment requirement when
2748 extra == 0.
2749
27502010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2751
2752 * commands/iorw.c: New file.
2753 * conf/i386.rmk (pkglib_MODULES): Add iorw.mod.
2754 (iorw_mod_SOURCES): New variable.
2755 (iorw_mod_CFLAGS): Likewise.
2756 (iorw_mod_LDFLAGS): Likewise.
2757
27582010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2759
2760 Hotkey support
2761
2762 * include/grub/menu.h (grub_menu_entry): New field 'hotkey'.
2763 * normal/main.c (hotkey_aliases): New variable.
2764 (grub_normal_add_menu_entry): Parse "--hotkey".
2765 * normal/menu_text.c (run_menu): Handle hotkeys.
2766
27672010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2768
2769 * kern/i386/coreboot/init.c (grub_machine_init): Call
2770 grub_machine_mmap_init on qemu.
2771
27722010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2773
2774 * boot/i386/qemu/boot.S: Add a missing .code16.
2775
27762010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2777
2778 Use LBIO on coreboot.
2779
2780 * conf/i386-coreboot.rmk (kernel_img_SOURCES): Change
2781 kern/i386/multiboot_mmap.c to kern/i386/coreboot/mmap.c.
2782 * include/grub/i386/coreboot/memory.h (GRUB_LINUXBIOS_MEMBER_LINK):
2783 New declaration.
2784 * kern/i386/coreboot/init.c (grub_machine_init): Don't call
2785 grub_machine_mmap_init on coreboot.
2786 * kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate): Handle
2787 GRUB_LINUXBIOS_MEMBER_LINK.
2788 (grub_machine_mmap_iterate): Fix declaration.
2789 * kern/i386/coreboot/startup.S: Don't save mbi location on coreboot.
2790
27912010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2792
2793 Split coreboot and multiboot ports.
2794
2795 * conf/i386-multiboot.rmk: New file.
2796 * configure.ac: Add multiboot port.
2797 * include/grub/i386/multiboot/boot.h: New file.
2798 * include/grub/i386/multiboot/console.h: Likewise.
2799 * include/grub/i386/multiboot/init.h: Likewise.
2800 * include/grub/i386/multiboot/kernel.h: Likewise.
2801 * include/grub/i386/multiboot/loader.h: Likewise.
2802 * include/grub/i386/multiboot/memory.h: Likewise.
2803 * include/grub/i386/multiboot/serial.h: Likewise.
2804 * include/grub/i386/multiboot/time.h: Likewise.
2805 * include/grub/multiboot.h: Add GRUB_MACHINE_MULTIBOOT to ifdef.
2806 * loader/multiboot.c: Likewise.
2807 * loader/multiboot_mbi2.c: Likewise.
2808 * util/grub-mkrescue.in: Generate multiboot rescue.
2809
28102010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2811
2812 * kern/parser.c (grub_parser_execute): Cope with read-only config.
2813
28142010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
2815
2816 Merge handling of input and output terminals. Fix a hang.
2817
2818 * commands/terminal.c (abstract_terminal): New struct.
2819 (handle_command): New function. Based on grub_cmd_terminal_input.
2820 (grub_cmd_terminal_input): Use handle_command.
2821 (grub_cmd_terminal_output): Use handle_command.
2822
28232010-05-01 BVK Chaitanya <bvk.groups@gmail.com>
2824
2825 Fix comment handling.
2826
2827 * tests/grub_script_comments.in: New testcase.
2828 * conf/tests.rmk: Rules for new testcase.
2829 * script/yylex.l: Updated flex rules.
2830
28312010-04-28 Samuel Thibault <samuel.thibault@ens-lyon.org>
2832
2833 * docs/grub.texi (play): Document that zero pitches produce rests.
2834 * commands/i386/pc/play.c (grub_cmd_play): Call 'grub_file_open' only
2835 if argc is 1.
2836
28372010-04-27 Vladimir Serbinenko <phcoder@gmail.com>
2838
2839 * conf/x86-efi.rmk (linux_mod_SOURCES): Write explicitly to avoid
2840 autogen issues.
2841
28422010-04-26 Christian Franke <franke@computer.org>
2843
2844 * include/grub/util/getroot.h (grub_get_prefix): Remove prototype.
2845 * util/getroot.c [__CYGWIN__] (get_win32_path): Remove function.
2846 (grub_get_prefix): Remove function.
2847 * util/grub-emu.c (main): Replace grub_get_prefix () call by
2848 make_system_path_relative_to_its_root ().
2849 * util/sparc64/ieee1275/grub-setup.c (main): Likewise.
2850
28512010-04-24 Christian Franke <franke@computer.org>
2852
2853 * Makefile.in (TARGET_LDFLAGS): Add -static-libgcc.
2854 (kernel_img_LDFLAGS): Remove -static-libgcc.
2855
28562010-04-24 Christian Franke <franke@computer.org>
2857
2858 * configure.ac: Do not CHECK_BSS_START_SYMBOL
2859 and CHECK_END_SYMBOL if grub-emu is built.
2860 Unset TARGET_OBJ2ELF if grub-emu is built
2861 without module support.
2862
28632010-04-24 Jiro SEKIBA <jir@unicus.jp>
2864
2865 Nilfs2 support.
2866
2867 * conf/common.rmk (grub_probe_SOURCES): Add fs/nilfs2.c.
2868 (grub_fstest_SOURCES): Likewise.
2869 (pkglib_MODULES): Add nilfs2.mod.
2870 (nilfs2_mod_SOURCES): New variable.
2871 (nilfs2_mod_CFLAGS): Likewise.
2872 (nilfs2_mod_LDFLAGS): Likewise.
2873 * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
2874 * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
2875 * fs/nilfs2.c: New file.
2876
28772010-04-21 Vladimir Serbinenko <phcoder@gmail.com>
2878
2879 * configure.ac: Refuse to compile for x86_64-efi is mcmodel=large
2880 is not supported.
2881
28822010-04-19 Grégoire Sutre <gregoire.sutre@gmail.com>
2883
2884 Add grub-mkconfig support for NetBSD.
2885
2886 * util/grub.d/10_netbsd.in: grub-mkconfig helper script for NetBSD.
2887 * util/grub-mkconfig.in: export new NetBSD specific variables.
2888 * po/POTFILES-shell: added 10_netbsd.in.
2889 * util/grub-mkconfig_lib.in: check for gettext binary, default to echo.
2890
28912010-04-19 BVK Chaitanya <bvk.groups@gmail.com>
2892
2893 Fix emu build with grub-emu-pci and grub-emu-modules.
2894
2895 * include/grub/util/misc.h: Export grub_util_{info,error,warn}
2896 functions.
2897 * include/grub/libpciaccess.h: New file.
2898 * conf/any-emu.rmk: Update kernel headers for emu build.
2899
29002010-04-19 Vladimir Serbinenko <phcoder@gmail.com>
2901
2902 * fs/udf.c (grub_udf_iterate_dir): Silence a spurious warning.
2903
29042010-04-19 Vladimir Serbinenko <phcoder@gmail.com>
2905
2906 * fs/udf.c (grub_udf_iterate_dir): Decode the Unicode filenames.
2907
29082010-04-18 Vladimir Serbinenko <phcoder@gmail.com>
2909
2910 * boot/sparc64/ieee1275/boot.S: Various size-reducing changes.
2911 Retrieve chosen/bootpath if bootpath isn't hardcoded.
2912 * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add
2913 util/ieee1275/ofpath.c.
2914 * util/sparc64/ieee1275/grub-ofpathname.c: Renamed to ...
2915 * util/ieee1275/grub-ofpathname.c: ... this. All users updated
2916 * include/grub/sparc64/ieee1275/boot.h
2917 (GRUB_BOOT_MACHINE_KERNEL_SECTOR): Renamed to ...
2918 (GRUB_BOOT_MACHINE_KERNEL_BYTE): ...this. Moved 8 bytes lower.
2919 * util/hostdisk.c (grub_util_biosdisk_get_osdev): New function.
2920 * util/ieee1275/ofpath.c (grub_util_devname_to_ofpath): Make argument
2921 const char *.
2922 * util/sparc64/ieee1275/grub-setup.c (compute_dest_ofpath): Removed.
2923 (setup): Use KERNEL_BYTE instead of KERNEL_SECTOR.
2924 Use grub_util_devname_to_ofpath. Zero-fill boot_devpath on same disk
2925 install.
2926
29272010-04-18 Grégoire Sutre <gregoire.sutre@gmail.com>
2928
2929 * util/grub-mkconfig.in: Corrected two == equality tests.
2930 Set grub_prefix as in grub-install for NetBSD and OpenBSD.
2931 * configure.ac: All definitions and uses of TARGET_IMG_LDFLAGS_AC now
2932 expect a number appended to it.
2933 * acinclude.m4 (grub_PROG_OBJCOPY_ABSOLUTE): ${TARGET_IMG_LDFLAGS_AC}
2934 expects a number appended to it.
2935
29362010-04-18 Vladimir Serbinenko <phcoder@gmail.com>
2937
2938 * po/POTFILES: Renamed multiboot_loader.c to multiboot.c
2939
29402010-04-18 Vladimir Serbinenko <phcoder@gmail.com>
2941
2942 * util/hostdisk.c (make_device_name): Change to new partition naming.
2943
29442010-04-17 Vladimir Serbinenko <phcoder@gmail.com>
2945
2946 * disk/lvm.c (grub_lvm_memberlist): Issue an error if pv->disk = 0.
2947
29482010-04-17 Christian Franke <franke@computer.org>
2949
2950 * Makefile.in: Add missing localedir setting.
2951
29522010-04-14 Colin Watson <cjwatson@ubuntu.com>
2953
2954 Restore TEXTDOMAINDIR correction from r1889, lost apparently by
2955 mistake in r2156. Noticed by Anthony Fok.
2956
2957 * util/grub.d/10_kfreebsd.in (TEXTDOMAINDIR): Set to lowercased
2958 @localedir@.
2959 * util/grub.d/10_linux.in (TEXTDOMAINDIR): Likewise.
2960
29612010-04-14 BVK Chaitanya <bvk.groups@gmail.com>
2962
2963 Fix a spurious, uninitialized variable warning.
2964
2965 * loader/i386/bsdXX.c (grub_freebsd_load_elfmodule_obj):
2966 Initialize variable, shdr.
2967 (grub_freebsd_load_elfmodule): Likewise.
2968 (grub_freebsd_load_elf_meta): Likewise.
2969
29702010-04-13 BVK Chaitanya <bvk.groups@gmail.com>
2971
2972 Fix for escaped dollar in double quoted strings.
2973
2974 * script/yylex.l: Updated flex rules.
2975 * conf/tests.rmk: Rule for new testcase.
2976 * tests/grub_script_dollar.in: New testcase.
2977
29782010-04-13 Carles Pina i Estany <carles@pina.cat>
29792010-04-13 Colin Watson <cjwatson@ubuntu.com>
2980
2981 Enclose all translated strings in grub.cfg in single quotes, and
2982 escape them appropriately (Ubuntu bug #552921).
2983
2984 * util/grub-mkconfig_lib.in (gettext_quoted): New function.
2985 * util/grub.d/10_hurd.in: Use it.
2986 * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
2987 * util/grub.d/10_linux.in (linux_entry): Likewise.
2988
29892010-04-11 Vladimir Serbinenko <phcoder@gmail.com>
2990
2991 Fix cygwin compilation.
2992
2993 * configure.ac: Define NEED_REGISTER_FRAME_INFO.
2994 * include/grub/misc.h (__register_frame_info)
2995 [NEED_REGISTER_FRAME_INFO && !UTIL]: New export.
2996 (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
2997 * kern/misc.c (__register_frame_info)
2998 [NEED_REGISTER_FRAME_INFO && !UTIL]: New empty function.
2999 (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
3000
30012010-04-11 Vladimir Serbinenko <phcoder@gmail.com>
3002
3003 * configure.ac: Respect grub_cv_asm_uscore when defining dummy symbols.
3004
30052010-04-11 Vladimir Serbinenko <phcoder@gmail.com>
3006
3007 Unify libgcc processing.
3008
3009 * Makefile.in (kernel_img_LDFLAGS): New variable.
3010 * conf/common.rmk (kernel_img_HEADERS): Add libgcc.h.
3011 * conf/i386-coreboot.rmk (kernel_img_LDFLAGS): Append instead of
3012 overwriting.
3013 * conf/i386-ieee1275.rmk (kernel_img_LDFLAGS): Likewise.
3014 * conf/i386-pc.rmk (kernel_img_LDFLAGS): Likewise.
3015 * conf/i386-qemu.rmk (kernel_img_LDFLAGS): Likewise.
3016 * conf/x86-efi.rmk (kernel_img_LDFLAGS): Likewise.
3017 * conf/mips-qemu-mips.rmk (kernel_img_LDFLAGS): Append instead of
3018 overwriting. Remove -lgcc and -static-libgcc
3019 * conf/mips-yeeloong.rmk (kernel_img_LDFLAGS): Likewise.
3020 * conf/mips.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
3021 * conf/powerpc-ieee1275.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
3022 (kernel_img_LDFLAGS): Append instead of overwriting.
3023 Remove -lgcc and -static-libgcc
3024 * conf/sparc64-ieee1275.rmk: Likewise.
3025 * include/grub/powerpc/libgcc.h: Move to ...
3026 * include/grub/libgcc.h: .. this.
3027 * include/grub/libgcc.h: Don't export most of the function on x86.
3028 (__bswapsi2): New export.
3029 (__bswapdi2): Likewise.
3030 * include/grub/mips/libgcc.h: Removed.
3031 * include/grub/sparc64/libgcc.h: Likewise.
3032
30332010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
3034
3035 * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Remove
3036 disk_info_msg (conflicts with gettexting into languages with cases).
3037
30382010-04-10 Grégoire Sutre <gregoire.sutre@gmail.com>
3039
3040 Add grub-probe support for NetBSD.
3041
3042 * util/getroot.c (find_root_device): Convert block device to
3043 character device on NetBSD.
3044 * util/probe.c (probe): Require character device on NetBSD.
3045 * util/hostdisk.c: NetBSD specific headers.
3046 (configure_device_driver): new function to tune device driver
3047 parameters (currently only for NetBSD floppy driver).
3048 (grub_util_biosdisk_open): NetBSD specific code (get disk size
3049 via disklabel ioctl).
3050 (open_device): call configure_device_driver on NetBSD.
3051 (convert_system_partition_to_system_disk): NetBSD specific code.
3052 (device_is_wholedisk): Likewise.
3053 (grub_util_biosdisk_get_grub_dev): Likewise.
3054 (make_device_name): Fixed a typo in bsd_part_str.
3055 * configure.ac: check for opendisk() and getrawpartition() on
3056 NetBSD and set LIBUTIL.
3057 * Makefile.in: add LIBUTIL to LIBS.
3058
30592010-04-10 BVK Chaitanya <bvk.groups@gmail.com>
3060
3061 Documentation fix.
3062
3063 * util/grub-script-check.c: Better help message.
3064
30652010-04-10 BVK Chaitanya <bvk.groups@gmail.com>
3066
3067 Fix FreeBSD build.
3068
3069 * configure.ac: Flex version check.
3070 * conf/common.rmk: Add -Wno-error to sh.mod.
3071 * script/yylex.l: Remove all #pragma.
3072
30732010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
3074
3075 * include/grub/util/misc.h (canonicalise_file_name): Add missing
3076 prototype.
3077 Reported by: Seth Goldberg.
3078
30792010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
3080
3081 * loader/multiboot.c (GRUB_MOD_INIT) [GRUB_USE_MULTIBOOT2]:
3082 Rename "module" to "module2".
3083 Reported by: Seth Goldberg.
3084
30852010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
3086
3087 * include/grub/efi/memory.h (grub_machine_mmap_iterate): Remove
3088 EXPORT_FUNC.
3089 Reported by: Seth Goldberg.
3090
30912010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
3092
3093 * lib/posix_wrap/locale.h: Add missing file.
3094 Reported by: Seth Goldberg.
3095
30962010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
3097
3098 grub-emu module load support.
3099
3100 * Makefile.in (TARGET_NO_MODULES): New variable. All users of
3101 NO_DYNAMIC_MODULES switched to this.
3102 (TARGET_CFLAGS): Add -DGRUB_TARGET_NO_MODULES=1 if applicable.
3103 (CFLAGS): Likewise.
3104 * conf/any-emu.rmk: Generate symlist.
3105 (kernel_img_HEADERS): Add util/datetime.h.
3106 (kernel_img_HEADERS) [sdl]: Add sdl.h.
3107 (kernel_img_HEADERS) [libusb]: Add libusb.h.
3108 (kernel_img_SOURCES) [TARGET_NO_MODULES = no && !x86]: Add
3109 kern/$(target_cpu)/cache.S.
3110 * configure.ac (grub-emu-modules): New option.
3111 * genmk.rb: Handle multiple source lists.
3112 * include/grub/sdl.h: New file.
3113 * include/grub/libusb.h: Likewise.
3114 * util/grub-emu.c (main): Hanle (host) root.
3115 * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Error with
3116 GRUB_ERR_UNKNOWN_DEVICE.
3117 * util/misc.c: Move mm functions to ...
3118 * util/mm.c: ... here. All users updated.
3119
31202010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
3121
3122 * Makefile.in (RMKFILES): Search in srcdir and not current directory.
3123 (MAINTAINER_CLEANFILES): Don't add $(srcdir) to MKFILES. Add few
3124 missing files.
3125 (maintainer-clean): Remove libgcrypt-grub.
3126
31272010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
3128
3129 * term/efi/console.c (grub_console_checkkey): Macroify key contants.
3130
31312010-04-09 EFI Coder <eficoder@hotmail.com>
3132
3133 * normal/menu_text.c (print_message): Clean up the message and show
3134 the Fn information when on EFI
3135 * term/efi/console.c (grub_console_checkkey): Add F4 support.
3136
31372010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
3138
3139 * normal/autofs.c (read_fs_list): New parameter 'prefix'.
3140 All users updated.
3141 * normal/crypto.c (read_crypto_list): Likewise.
3142 * normal/dyncmd.c (read_command_list): Likewise.
3143 * normal/term.c (read_terminal_list): Likewise.
3144 * normal/main.c (read_lists): Use explicit prefix.
3145 (read_lists_hook): Use read_lists.
3146 (grub_normal_execute): Likewise.
3147
31482010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
3149
3150 * util/grub-mkrescue.in: Fix incorrect path in coreboot part.
3151 Reported by: Thomas Schmitt.
3152 Add -no-emul-boot to grub-mkisofs parameters.
3153
31542010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
3155
3156 * font/font.c: Indented.
3157
31582010-04-09 BVK Chaitanya <bvk.groups@gmail.com>
3159
3160 Elif support to GRUB script (by Deepak Vankadaru).
3161
3162 * tests/grub_script_if.in: New testcase.
3163 * conf/tests.rmk: Rule for new testcase.
3164 * script/parser.y: Grammar rules for elif.
3165
31662010-04-09 BVK Chaitanya <bvk.groups@gmail.com>
3167
3168 While and until loops support to GRUB script.
3169
3170 * include/grub/script_sh.h (grub_script_cmdwhile): New struct.
3171 (grub_script_create_cmdwhile): New function prototype.
3172 (grub_script_execute_cmdwhile): New function prototype.
3173 * script/execute.c (grub_script_execute_cmdwhile): New function.
3174 * script/parser.y (command): New commands.
3175 (whilecmd): New grammar rule.
3176 (untilcmd): New grammar rule.
3177 * script/script.c (grub_script_create_cmdwhile): New function.
3178 * util/grub-script-check.c (grub_script_execute_cmdwhile): New
3179 function.
3180
3181 * tests/grub_script_while1.in: New testcase.
3182 * conf/tests.rmk: Rule for new testcase.
3183
31842010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
3185
3186 * util/grub.d/00_header.in: Add few missing quotes. Recognise *.jpeg
3187 as *.jpg.
3188
31892010-04-09 Mario Vazquez <mariovazq@gmail.com>
3190
3191 GRUB_BACKGROUND support.
3192
3193 * util/grub-mkconfig.in: Export GRUB_BACKGROUND.
3194 * util/grub.d/00_header.in: Parse GRUB_BACKGROUND.
3195
31962010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
3197
3198 Load fonts and modules for gfxmenu in grub-mkconfig.
3199 Idea by: Mario Vazquez
3200
3201 * util/grub.d/00_header.in: Load pf2 and image modules.
3202
32032010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
3204
3205 grub-mkconfig multiple terminal support.
3206
3207 * util/grub-mkconfig.in: Handle multiple terminals correctly.
3208 * util/grub.d/00_header.in: Likewise.
3209
32102010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
3211
3212 * Makefile.in: Specify files explicitly instead of using $< and $@ since
3213 we use cd $(srcdir).
3214
32152010-04-08 Colin Watson <cjwatson@ubuntu.com>
3216
3217 * util/grub.d/10_linux.in: Only use the first word of
3218 GRUB_DISTRIBUTOR for --class, to avoid problems if somebody puts
3219 spaces in GRUB_DISTRIBUTOR.
3220 * util/grub.d/10_kfreebsd.in: Likewise.
3221 * util/grub.d/10_hurd.in: Likewise.
3222
32232010-04-06 BVK Chaitanya <bvk.groups@gmail.com>
3224
3225 Fix unit testing framework for Qemu 0.12.
3226
3227 * tests/util/grub-shell.in: Remove -serial stdio option.
3228
32292010-04-06 Vladimir Serbinenko <phcoder@gmail.com>
3230
3231 POSIX header file wrappers.
3232
3233 * lib/posix_wrap/assert.h: New file. Wrapper for its POSIX
3234 equivalents.
3235 * lib/posix_wrap/ctype.h: Likewise.
3236 * lib/posix_wrap/errno.h: Likewise.
3237 * lib/posix_wrap/langinfo.h: Likewise.
3238 * lib/posix_wrap/limits.h: Likewise.
3239 * lib/posix_wrap/localcharset.h: Likewise.
3240 * lib/posix_wrap/stdint.h: Likewise.
3241 * lib/posix_wrap/stdio.h: Likewise.
3242 * lib/posix_wrap/stdlib.h: Likewise.
3243 * lib/posix_wrap/string.h: Likewise.
3244 * lib/posix_wrap/sys/types.h: Likewise.
3245 * lib/posix_wrap/unistd.h: Likewise.
3246 * lib/posix_wrap/wchar.h: Likewise.
3247 * lib/posix_wrap/wctype.h: Likewise.
3248 * conf/common.rmk (grub_script.yy.c): Remove #include elimination.
3249 (grub_script.yy.h): Likewise.
3250 * script/yylex.l: Remove POSIX emulation #defines.
3251 * Makefile.in (POSIX_CFLAGS): New variable.
3252 (GNULIB_UTIL_CFLAGS): Likewise.
3253
3254 Regexp support.
3255
3256 * conf/common.rmk (pkglib_MODULES): Add regexp.mod.
3257 (regexp_mod_SOURCES): New variable.
3258 (regexp_mod_CFLAGS): Likewise.
3259 (regexp_mod_LDFLAGS): Likewise.
3260 * commands/regexp.c: New file.
3261 * gnulib/regcomp.c: New file. Imported from gnulib.
3262 * gnulib/regex.c: Likewise.
3263 * gnulib/regex_internal.c: Likewise.
3264 * gnulib/regex_internal.h: Likewise.
3265 * gnulib/regexec.c: Likewise.
3266 * gnulib/regex.h: Likewise.
3267
32682010-04-05 Vladimir Serbinenko <phcoder@gmail.com>
3269
3270 * loader/i386/multiboot_mbi.c (grub_multiboot_load): Correctly report
3271 unsupported video mode types.
3272
32732010-04-05 Vladimir Serbinenko <phcoder@gmail.com>
3274
3275 * kern/i386/pc/startup.S (grub_getrtsecs): Removed (dead code).
3276
32772010-04-05 Vladimir Serbinenko <phcoder@gmail.com>
3278
3279 * include/grub/i386/pc/init.h (grub_get_mmap_entry): Don't export.
3280 * conf/i386-pc.rmk (kernel_img_HEADERS): Remove machine/init.h.
3281
32822010-04-04 Vladimir Serbinenko <phcoder@gmail.com>
3283
3284 Remove unused grub_vga_get_font.
3285
3286 * kern/i386/pc/startup.S (grub_vga_get_font): Removed.
3287 * include/grub/i386/pc/vga.h (grub_vga_get_font): Likewise.
3288
32892010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
3290
3291 * kern/misc.c: Disable the __enable_execute_stack hack for utilities.
3292 * include/grub/misc.h: Likewise.
3293
32942010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
3295
3296 * util/grub-install.in: Add `|| exit 1' to all grub-probe calls
3297 for which failure is fatal.
3298
32992010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
3300
3301 * util/grub-install.in: Use mkdir -p to create grub directory.
3302 * util/i386/efi/grub-install.in: Likewise.
3303 * util/ieee1275/grub-install.in: Likewise.
3304
33052010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
3306
3307 * Makefile.in (LEX): new variable.
3308
33092010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
3310
3311 * util/i386/efi/grub-dumpdevtree: replaced the non-portable `==' by
3312 `=' and added double quotes on operands of this equality test.
3313
33142010-04-03 Vladimir Serbinenko <phcoder@gmail.com>
3315
3316 * Makefile.in (uninstall): Remove a leftover debug echo.
3317 Reported by: Grégoire Sutre
3318
33192010-04-03 Vladimir Serbinenko <phcoder@gmail.com>
3320
3321 MIPS multiboot2 support.
3322
3323 * conf/mips.rmk (pkglib_MODULES): Add multiboot2.mod.
3324 (multiboot2_mod_SOURCES): New variable.
3325 (multiboot2_mod_CFLAGS): Likewise.
3326 (multiboot2_mod_LDFLAGS): Likewise.
3327 (multiboot2_mod_ASFLAGS): Likewise.
3328 * include/grub/i386/multiboot.h (MULTIBOOT_INITIAL_STATE): New
3329 definition.
3330 (MULTIBOOT_ENTRY_REGISTER): Likewise.
3331 (MULTIBOOT_MBI_REGISTER): Likewise.
3332 (MULTIBOOT_ARCHITECTURE_CURRENT): Likewise.
3333 (MULTIBOOT_ELF32_MACHINE): Likewise.
3334 (MULTIBOOT_ELF64_MACHINE): Likewise.
3335 * include/grub/mips/multiboot.h: New file.
3336 * include/grub/video.h (grub_video_driver_id): New type
3337 GRUB_VIDEO_DRIVER_SM712.
3338 (grub_video_get_info_and_fini): Export.
3339 (grub_video_get_palette): Likewise.
3340 (grub_video_get_driver_id): Likewise.
3341 * include/multiboot2.h: Resynced with spec.
3342 * loader/i386/multiboot.c: Moved from here ...
3343 * loader/multiboot.c: ... here. All users updated.
3344 (grub_multiboot_boot): Use platform-specific macros.
3345 * loader/i386/multiboot_elfxx.c: Moved from here ...
3346 * loader/multiboot_elfxx.c: ... here. All users updated.
3347 (E_MACHINE): Use MULTIBOOT_ELF32_MACHINE and MULTIBOOT_ELF64_MACHINE.
3348 * loader/i386/multiboot_mbi2.c (grub_multiboot_load): Check arcitecture.
3349 * video/sm712.c (grub_video_sm712_adapter): Add missing id field.
3350
33512010-04-02 Vladimir Serbinenko <phcoder@gmail.com>
3352
3353 Import gnulib argp module.
3354
3355 * gnulib/argp-ba.c: New file.
3356 * gnulib/argp-eexst.c: Likewise.
3357 * gnulib/argp-fmtstream.c: Likewise.
3358 * gnulib/argp-fmtstream.h: Likewise.
3359 * gnulib/argp-fs-xinl.c: Likewise.
3360 * gnulib/argp-help.c: Likewise.
3361 * gnulib/argp-namefrob.h: Likewise.
3362 * gnulib/argp-parse.c: Likewise.
3363 * gnulib/argp-pin.c: Likewise.
3364 * gnulib/argp-pv.c: Likewise.
3365 * gnulib/argp-pvh.c: Likewise.
3366 * gnulib/argp-version-etc.c: Likewise.
3367 * gnulib/argp-version-etc.h: Likewise.
3368 * gnulib/argp-xinl.c: Likewise.
3369 * gnulib/argp.h: Likewise.
3370
33712010-03-31 Vladimir Serbinenko <phcoder@gmail.com>
3372
3373 * kern/device.c (grub_device_iterate): Clear errors after failed
3374 opening device.
3375
33762010-03-31 Vladimir Serbinenko <phcoder@gmail.com>
3377
3378 * kern/ieee1275/openfw.c (grub_children_iterate): Skip device itself if
3379 returned by firmware.
3380
33812010-03-30 Vladimir Serbinenko <phcoder@gmail.com>
3382
3383 * loader/i386/multiboot_mbi2.c (retrieve_video_parameters): Fix
3384 compilation on coreboot and qemu
3385
33862010-03-28 Vladimir Serbinenko <phcoder@gmail.com>
3387
3388 * include/multiboot2.h: Resync with spec.
3389
33902010-03-28 Vladimir Serbinenko <phcoder@gmail.com>
3391
3392 Multiboot2 tag support
3393
3394 * conf/i386.rmk (multiboot2_mod_SOURCES): Replace
3395 loader/i386/multiboot_mbi.c with loader/i386/multiboot_mbi2.c.
3396 Remove loader/multiboot_loader.c.
3397 * include/grub/i386/multiboot.h (grub_multiboot_real_boot): Removed.
3398 (grub_multiboot2_real_boot): Likewise.
3399 * include/grub/multiboot.h (grub_multiboot_set_accepts_video): Removed.
3400 (grub_get_multiboot_mmap_count): New proto.
3401 (grub_fill_multiboot_mmap): Likewise.
3402 (grub_multiboot_set_video_mode): Likewise.
3403 (grub_multiboot_set_console): Likewise.
3404 (grub_multiboot_load): Likewise.
3405 (grub_multiboot_load_elf): Likewise.
3406 (GRUB_MULTIBOOT_CONSOLE_EGA_TEXT): New definition.
3407 (GRUB_MULTIBOOT_CONSOLE_FRAMEBUFFER): Likewise.
3408 * include/multiboot.h: Resynced with specification.
3409 * include/multiboot2.h: Resynced with specification.
3410 * loader/i386/multiboot_mbi.c (DEFAULT_VIDEO_MODE): Moved from here...
3411 * loader/i386/multiboot.c (DEFAULT_VIDEO_MODE): ... here.
3412 * loader/i386/multiboot_mbi.c (HAS_VGA_TEXT): Moved from here ..
3413 * include/grub/multiboot.h (GRUB_MACHINE_HAS_VGA_TEXT): ... here. All
3414 users updated.
3415 * loader/i386/multiboot_mbi.c (accepts_video): Moved from here...
3416 * loader/i386/multiboot.c (accepts_video): ... here. All users updated.
3417 * loader/i386/multiboot_mbi.c (grub_multiboot_set_accepts_video):
3418 Removed.
3419 * loader/i386/multiboot_mbi.c (grub_get_multiboot_mmap_len):
3420 Moved from here...
3421 * loader/i386/multiboot.c (grub_get_multiboot_mmap_len): ... here.
3422 * loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap):
3423 Moved from here...
3424 * loader/i386/multiboot.c (grub_fill_multiboot_mmap): ... here.
3425 * loader/i386/multiboot_mbi.c (set_video_mode): Moved from here...
3426 * loader/i386/multiboot.c (grub_multiboot_set_video_mode): ... here.
3427 All users updated.
3428 * loader/i386/multiboot_mbi2.c: New file.
3429
34302010-03-27 Vladimir Serbinenko <phcoder@gmail.com>
3431
3432 Resync with gnulib.
3433
3434 * Makefile.in (GNULIB_CFLAGS): New variable.
3435 * conf/common.rmk (grub_mkisofs_CFLAGS): Add GNULIB_CFLAGS.
3436 (grub_script_check_CFLAGS): New variable.
3437 * gnulib/alloca.h: Resync with gnulib.
3438 * gnulib/error.c: Likewise.
3439 * gnulib/error.h: Likewise.
3440 * gnulib/fnmatch.c: Likewise.
3441 * gnulib/fnmatch_loop.c: Likewise.
3442 * gnulib/getdelim.c: Likewise.
3443 * gnulib/getline.c: Likewise.
3444 * gnulib/getopt.c: Likewise.
3445 * gnulib/getopt1.c: Likewise.
3446 * gnulib/getopt_int.h: Likewise.
3447 * gnulib/gettext.h: Likewise.
3448 * gnulib/progname.c: Likewise.
3449 * gnulib/progname.h: Likewise.
3450
34512010-03-27 Grégoire Sutre <gregoire.sutre@gmail.com>
3452
3453 Fix a build failure (-Wundef -Werror) when ENABLE_NLS is not defined,
3454 which is the case with --disabled-nls.
3455
3456 * include/grub/i18n.h: Use (defined(ENABLE_NLS)
3457 && ENABLE_NLS) instead of ENABLE_NLS in all #if preprocessor macros.
3458 * util/misc.c: Likewise.
3459 * util/mkisofs/mkisofs.c: Likewise.
3460 * util/mkisofs/mkisofs.h: Likewise.
3461
34622010-03-27 Vladimir Serbinenko <phcoder@gmail.com>
3463
3464 Simplify Apple CC support.
3465
3466 * commands/i386/pc/drivemap_int13h.S: Use LOCAL when possible.
3467 Add 0 byte at the end not to have a symbol with empty target.
3468 * mmap/i386/pc/mmap_helper.S: Likewise.
3469 * genmk.rb: Ignore errors 2030 and 2050.
3470 * kern/i386/pc/startup.S: Use LOCAL when possible.
3471
34722010-03-26 BVK Chaitanya <bvk.groups@gmail.com>
3473
3474 Testcase and the fix for final semicolon on cmdline.
3475
3476 * tests/grub_script_final_semicolon.in: New testcase.
3477 * conf/tests.rmk: Rules for the new testcase.
3478 * script/parser.y: Grammar fix.
3479
34802010-03-26 BVK Chaitanya <bvk@localhost>
3481
3482 Blank lines testcase for GRUB script.
3483
3484 * tests/grub_script_blanklines.in: New testcase.
3485 * conf/tests.rmk: Rules for the new testcase.
3486
34872010-03-26 Vladimir Serbinenko <phcoder@gmail.com>
3488
3489 Don't use __FILE__.
3490
3491 * genmk.rb: Add -DGRUB_FILE to all C targets.
3492 * fs/reiserfs.c: Replace __FILE__ with GRUB_FILE.
3493 * include/grub/list.h: Likewise.
3494 * include/grub/misc.h: Likewise.
3495 * include/grub/mm.h: Likewise.
3496 * include/grub/test.h: Likewise.
3497 * kern/mm.c: Likewise.
3498 * lib/libgcrypt_wrap/cipher_wrap.h: Likewise.
3499
35002010-03-26 Vladimir Serbinenko <phcoder@gmail.com>
3501
3502 Sunpc partitions support.
3503
3504 * conf/common.rmk (grub_probe_SOURCES): Add partmap/sunpc.c.
3505 (grub_fstest_SOURCES): Likewise.
3506 (pkglib_MODULES): Add part_sunpc.mod.
3507 (part_sunpc_mod_SOURCES): New variable.
3508 (part_sunpc_mod_CFLAGS): Likewise.
3509 (part_sunpc_mod_LDFLAGS): Likewise.
3510 * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/sunpc.c.
3511 * partmap/sunpc.c: New file.
3512
35132010-03-26 BVK Chaitanya <bvk@localhost>
3514
3515 For loop support to GRUB script.
3516
3517 * include/grub/script_sh.h (grub_script_cmdfor): New struct.
3518 (grub_script_create_cmdfor): New function prototype.
3519 (grub_script_execute_cmdfor): New function prototype.
3520 * script/execute.c (grub_script_execute_cmdfor): New function.
3521 * script/parser.y (command): New for command.
3522 (forcmd): New grammar rule.
3523 * script/script.c (grub_script_create_cmdfor): New function.
3524 * util/grub-script-check.c (grub_script_execute_cmdfor): New
3525 function.
3526 * tests/grub_script_for1.in: New testcase.
3527 * conf/tests.rmk: Rules for new testcase.
3528
35292010-03-26 Vladimir Serbinenko <phcoder@gmail.com>
3530
3531 Nested partitions
3532
3533 * commands/blocklist.c (grub_cmd_blocklist): Don't check whether
3534 'partition' is NULL, grub_partition_get_start already does that.
3535 * commands/loadenv.c (check_blocklists): Likewise.
3536 (write_blocklists): Likewise.
3537 * conf/common.rmk (grub_probe_SOURCES): Add partmap/bsdlabel.c.
3538 (grub_fstest_SOURCES): Likewise.
3539 (pkglib_MODULES): Add part_bsd.mod.
3540 (part_bsd_mod_SOURCES): New variable.
3541 (part_bsd_mod_CFLAGS): Likewise.
3542 (part_bsd_mod_LDFLAGS): Likewise.
3543 * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/bsdlabel.c.
3544 (grub_emu_SOURCES): Likewise.
3545 * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
3546 * include/grub/bsdlabel.h: New file.
3547 * include/grub/partition.h (grub_partition_map): Remove 'probe' and
3548 'get_name'.
3549 (grub_partition): Add 'parent' and 'number'. Remove 'data'.
3550 (grub_partition_map_list): New variable.
3551 (grub_partition_map_register): Inline.
3552 (grub_partition_map_unregister): Likewise.
3553 (FOR_PARTITION_MAPS): New macro.
3554 (grub_partition_map_iterate): Removed.
3555 (grub_partition_get_start): Handle nested partitions.
3556 * include/grub/msdos_partition.h: Remove bsd-related entries.
3557 (grub_pc_partition): Remove.
3558 * kern/disk.c (grub_disk_close): Free partition data.
3559 (grub_disk_adjust_range): Handle nested partitions.
3560 * kern/partition.c (grub_partition_map_probe): New function.
3561 (grub_partition_probe): Parse name to number, handle subpartitions.
3562 (get_partmap): New function.
3563 (grub_partition_iterate): Handle subpartitions.
3564 (grub_partition_get_name): Likewise.
3565 * loader/i386/pc/bsd.c (grub_bsd_get_device): Likewise.
3566 * loader/i386/multiboot.c (grub_multiboot_get_bootdev): Likewise.
3567 * loader/i386/pc/chainloader.c (grub_chainloader_cmd): Likewise.
3568 * partmap/acorn.c (acorn_partition_map_iterate): Don't force raw access.
3569 Set 'number'.
3570 (acorn_partition_map_probe): Remove.
3571 (acorn_partition_map_get_name): Likewise.
3572 * partmap/amiga.c (amiga_partition_map_iterate): Don't force raw access.
3573 Set 'number'.
3574 Set 'index' to 0 since there can be only one partition entry per sector.
3575 (amiga_partition_map_probe): Remove.
3576 (amiga_partition_map_get_name): Likewise.
3577 * partmap/apple.c (apple_partition_map_iterate): Don't force raw access.
3578 Set 'number'.
3579 Set 'offset' and 'index' to real positions of partitions.
3580 (apple_partition_map_probe): Remove.
3581 (apple_partition_map_get_name): Likewise.
3582 * partmap/bsdlabel.c: New file.
3583 * partmap/gpt.c (gpt_partition_map_iterate): Don't force raw access.
3584 Set 'number'.
3585 Allocate 'data' so it can be correctly freed.
3586 Set 'index' to offset inside sector.
3587 (gpt_partition_map_probe): Remove.
3588 (gpt_partition_map_get_name): Likewise.
3589 * partmap/msdos.c (grub_partition_parse): Remove.
3590 (pc_partition_map_iterate): Don't force raw access.
3591 Set 'number'.
3592 Make 'ext_offset' a local variable.
3593 (pc_partition_map_probe): Remove.
3594 (pc_partition_map_get_name): Remove.
3595 * partmap/sun.c (sun_partition_map_iterate): Don't force raw access.
3596 Set 'number'.
3597 (sun_partition_map_probe): Remove.
3598 (sun_partition_map_get_name): Likewise.
3599 * parttool/msdospart.c (grub_pcpart_boot): Handle nested partitions.
3600 (grub_pcpart_type): Likewise.
3601 * util/hostdisk.c (open_device): Handle new numbering scheme.
3602 (grub_util_biosdisk_get_grub_dev): Handle nested partitions.
3603 * util/i386/pc/grub-setup.c (setup): Handle new numbering scheme.
3604 * util/grub-probe.c (probe_partmap): Handle nested paritions.
3605 * util/grub-install.in: Insert all subpartition modules.
3606 * util/ieee1275/grub-install.in: Likewise.
3607
36082010-03-24 Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
3609
3610 * kern/dl.c (grub_dl_resolve_symbols): Improve error message
3611 grammar.
3612
36132010-03-24 Colin Watson <cjwatson@ubuntu.com>
3614
3615 * .bzrignore: Add grub-bin2h, grub-reboot, and grub-set-default.
3616
36172010-03-21 Colin Watson <cjwatson@ubuntu.com>
3618
3619 * util/grub-install.in: Copy .mo files from @datadir@/locale, to
3620 match where 'make install' puts them.
3621 * util/i386/efi/grub-install.in: Likewise.
3622
36232010-03-19 Colin Watson <cjwatson@ubuntu.com>
3624
3625 * .bzrignore: Add gentrigtables, grub-script-check,
3626 grub_script_check_init.c, grub_script_check_init.h, and
3627 trigtables.c.
3628
36292010-03-18 Vladimir Serbinenko <phcoder@gmail.com>
3630
3631 * kern/parser.c: Indented.
3632
36332010-03-17 Vladimir Serbinenko <phcoder@gmail.com>
3634
3635 * term/i386/pc/vesafb.c: Removed (orphaned, deprecated and broken).
3636
36372010-03-17 Vladimir Serbinenko <phcoder@gmail.com>
3638
3639 * video/fb/fbblit.c (grub_video_fbblit_blend_XXXA8888_1bit): Handle
3640 alpha_mask_size == 0 case.
3641
36422010-03-14 BVK Chaitanya <bvk.groups@gmail.com>
3643
3644 GRUB shell lexer and parser improvements.
3645
3646 * conf/any-emu.rmk: Build rule updates.
3647 * conf/common.rmk: Likewise.
3648 * conf/i386-coreboot.rmk: Likewise.
3649 * conf/i386-efi.rmk: Likewise.
3650 * conf/i386-ieee1275.rmk: Likewise.
3651 * conf/i386-pc.rmk: Likewise.
3652 * conf/powerpc-ieee1275.rmk: Likewise.
3653 * conf/x86_64-efi.rmk: Likewise.
3654
3655 * configure.ac: Configure check for flex.
3656
3657 * include/grub/script_sh.h (grub_script_arg_type_t): More argument
3658 types.
3659 (grub_lexer_param): Struct member updates.
3660 (grub_parser_param): Likewise.
3661 (GRUB_LEXER_TOKEN_MAX): Maximum token size.
3662 (GRUB_LEXER_RECORD_INCREMENT): Memory increments' size.
3663 (grub_script_lexer_init): Prototype update.
3664 (grub_script_lexer_record_start): Likewise.
3665 (grub_script_lexer_record_stop): Likewise.
3666 (grub_script_lexer_yywrap): New function prototype.
3667 (grub_script_lexer_fini): Likewise.
3668 (grub_script_execute_argument_to_string): Removed by...
3669 (grub_script_execute_argument_to_argv): ...better version.
3670
3671 * script/execute.c (ROUND_UPTO): New macro.
3672 (grub_script_execute_cmdline): Out of memory fixes.
3673 (grub_script_execute_menuentry): Likewise.
3674 (grub_script_execute_argument_to_string): Removed. Update all
3675 users by...
3676 (grub_script_execute_argument_to_argv): ...better version.
3677 * script/function.c (grub_script_function_create): Use
3678 grub_script_execute_argument_to_argv instead of
3679 grub_script_execute_argument_to_string.
3680
3681 * script/lexer.c (check_varstate): Removed.
3682 (check_textstate): Removed.
3683 (grub_script_lexer_record_start): Likewise.
3684 (grub_script_lexer_record_stop): Likewise.
3685 (recordchar): Replaced with...
3686 (grub_script_lexer_record): ...new function.
3687 (nextchar): Removed.
3688 (grub_script_lexer_init): Rewritten.
3689 (grub_script_yylex): Rewritten.
3690 (append_newline): New function.
3691 (grub_script_lexer_yywrap): New function.
3692 (grub_script_lexer_fini): New function.
3693 (grub_script_yyerror): Sets error flag.
3694
3695 * script/yylex.l: New file.
3696 (grub_lexer_yyfree): Wrapper for flex yyffre.
3697 (grub_lexer_yyalloc): Likewise.
3698 (grub_lexer_yyrealloc): Likewise.
3699 * script/parser.y: Refactored.
3700
3701 * script/script.c (grub_script_arg_add): Out of memory fixes.
3702 (grub_script_add_arglist): Likewise.
3703 (grub_script_create_cmdline): Likewise.
3704 (grub_script_create_cmdmenu): Likewise.
3705 (grub_script_add_cmd): Likewise.
3706 (grub_script_parse): Use grub_script_lexer_fini to deallocated.
3707 * util/grub-script-check.c (grub_script_execute_menuentry): Remove
3708 unnecessary code.
3709
3710 * tests/grub_script_echo1.in: New testcase.
3711 * tests/grub_script_vars1.in: New testcase.
3712 * tests/grub_script_echo_keywords.in: New testcase.
3713
37142010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
3715
3716 Remove some redundancy in build system.
3717
3718 * Makefile.in (TARGET_CFLAGS): Add -ffreestanding.
3719 (TARGET_ASFLAGS): Add -nostdinc -fno-builtin.
3720 (TARGET_LDFLAGS): Add -nostdlib.
3721 (TARGET_IMG_LDFLAGS): Likewise.
3722 * commands/lsmmap.c (grub_cmd_lsmmap) [GRUB_MACHINE_EMU]: Don't do
3723 anything since mmap isn't available.
3724 * conf/any-emu.rmk (kernel_img_SOURCES): Remove commands/boot.c.
3725 Add util/time.c.
3726 (pkglib_MODULES): Remove reboot.mod.
3727 (reboot_mod_SOURCES): Removed.
3728 (reboot_mod_CFLAGS): Likewise.
3729 (reboot_mod_LDFLAGS): Likewise.
3730 * conf/common.rmk (script/lexer.c_DEPENDENCIES): New variable.
3731 (MOSTLYCLEANFILES): Add symlist.c kernel_syms.lst.
3732 (DEFSYMFILES): Add kernel_syms.lst.
3733 (kernel_img_HEADERS): Add common headers.
3734 (symlist.c): New target.
3735 (kernel_syms.lst): Likewise.
3736 (pkglib_MODULES): Add memdisk.mod.
3737 (memdisk_mod_SOURCES): New variable.
3738 (memdisk_mod_CFLAGS): Likewise.
3739 (memdisk_mod_LDFLAGS): Likewise.
3740 (pkglib_MODULES): Add reboot.mod.
3741 (reboot_mod_SOURCES): New variable.
3742 (reboot_mod_CFLAGS): Likewise.
3743 (reboot_mod_LDFLAGS): Likewise.
3744 (pkglib_MODULES): Add date.mod.
3745 (date_mod_SOURCES): New variable.
3746 (date_mod_CFLAGS): Likewise.
3747 (date_mod_LDFLAGS): Likewise.
3748 (pkglib_MODULES): Add datehook.mod.
3749 (datehook_mod_SOURCES): New variable.
3750 (datehook_mod_CFLAGS): Likewise.
3751 (datehook_mod_LDFLAGS): Likewise.
3752 (pkglib_MODULES): Add lsmmap.mod.
3753 (lsmmap_mod_SOURCES): New variable.
3754 (lsmmap_mod_CFLAGS): Likewise.
3755 (lsmmap_mod_LDFLAGS): Likewise.
3756 (pkglib_MODULES): Add boot.mod.
3757 (boot_mod_SOURCES): New variable.
3758 (boot_mod_CFLAGS): Likewise.
3759 (boot_mod_LDFLAGS): Likewise.
3760 * conf/i386-coreboot.rmk: Removed redundant parts.
3761 * conf/i386-ieee1275.rmk: Likewise.
3762 * conf/i386-pc.rmk: Likewise.
3763 * conf/mips-yeeloong.rmk: Likewise.
3764 * conf/mips.rmk: Likewise.
3765 * conf/powerpc-ieee1275.rmk: Likewise.
3766 * conf/sparc64-ieee1275.rmk: Likewise.
3767 * conf/x86_64-efi.rmk: Likewise.
3768 * conf/i386-coreboot.rmk: Moved qemu parts ..
3769 * conf/i386-qemu.rmk: ... here
3770 * conf/i386-efi.rmk: Moved common parts to...
3771 * conf/x86-efi.rmk: ... here.
3772 * conf/i386.rmk: Added modules common to all x86 variants.
3773 * configure.ac: Add -m32/-m64 to TARGET_ASFLAGS.
3774 * disk/memdisk.c: Remove grub/machine/kernel.h.
3775 * gensymlist.sh.in: Include symbol.h.
3776 * hook/datehook.c: Correct module name.
3777 * include/grub/datetime.h (grub_get_datetime) [GRUB_MACHINE_EMU]: Export.
3778 (grub_set_datetime) [GRUB_MACHINE_EMU]: Likewise.
3779 * include/grub/i386/efi/serial.h: New file.
3780 * include/grub/x86_64/efi/serial.h: Likewise.
3781 * util/time.c: Likewise.
3782 * video/ieee1275.c (grub_video_ieee1275_setup): Handle 64-bit void *.
3783
37842010-03-14 Colin King <colin.king@ubuntu.com>
37852010-03-14 Colin Watson <cjwatson@ubuntu.com>
3786
3787 Shrink the pre-partition-table part of boot.img by eight bytes.
3788
3789 * boot/i386/pc/boot.S (ERR): New macro.
3790 (chs_mode): Use ERR.
3791 (geometry_error): Likewise.
3792 (hd_probe_error): Remove. This is only used once, so we wrwite
3793 it inline instead.
3794 (read_error): Instead of printing read_error_string, just set up
3795 %si and fall through to ...
3796 (error_message): ... this new function, also used by ERR.
3797
37982010-03-14 Colin Watson <cjwatson@ubuntu.com>
3799
3800 Speed up consecutive hostdisk operations on the same device.
3801
3802 * util/hostdisk.c (struct grub_util_biosdisk_data): New structure.
3803 (grub_util_biosdisk_open): Initialise disk->data.
3804 (struct linux_partition_cache): New structure.
3805 (linux_find_partition): Cache partition start positions; these are
3806 expensive to compute on every read and write.
3807 (open_device): Cache open file descriptor in disk->data, so that we
3808 don't have to reopen it and flush the buffer cache for consecutive
3809 operations on the same device.
3810 (grub_util_biosdisk_close): New function.
3811 (grub_util_biosdisk_dev): Set `close' member.
3812
3813 * conf/common.rmk (grub_probe_SOURCES): Add kern/list.c.
3814 * conf/i386-efi.rmk (grub_setup_SOURCES): Likewise.
3815 * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
3816 * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
3817 * conf/x86_64-efi.rmk (grub_setup_SOURCES): Likewise.
3818
38192010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
3820
3821 Compile parts of grub-emu as modules.
3822
3823 * Makefile.in (TARGET_CPPFLAGS) [emu]: Remove -nostdinc -isystem.
3824 (pkglib_DATA) [emu]: Remove moddep.lst command.lst fs.lst
3825 partmap.lst parttool.lst handler.lst video.lst crypto.lst terminal.lst.
3826 (all-local): Add $(GRUB_EMU).
3827 (install-local): Install $(GRUB_EMU).
3828 (uninstall): Uninstall $(GRUB_EMU).
3829 * commands/parttool.c: Replace GRUB_UTIL with GRUB_NO_MODULES.
3830 * kern/dl.c: Likewise.
3831 * commands/sleep.c: Not include machine/time.h.
3832 * conf/any-emu.rmk (COMMON_LDFLAGS): New variable.
3833 (COMMON_CFLAGS): Likewise.
3834 (sbin_UTILITIES): Remove grub-emu.
3835 (grub_emu_SOURCES): Removed.
3836 (kernel_img_RELOCATABLE): New variable.
3837 (pkglib_PROGRAMS): Add kernel.img.
3838 (kernel_img_SOURCES): New variable
3839 (kernel_img_CFLAGS): Likewise.
3840 (kernel_img_LDFLAGS): Likewise.
3841 (TARGET_NO_STRIP): Likewise.
3842 (TARGET_NO_DYNAMIC_MODULES): Likewise.
3843 (pkglib_MODULES): Add progname.mod, hostfs.mod, host.mod, reboot.mod,
3844 halt.mod, cpuid.mod, usb.mod, sdl.mod and pci.mod.
3845 (grub-emu): New target.
3846 (GRUB_EMU): New variable.
3847 * configure.ac: Whitelist -emu as possible x86_64 architecture.
3848 * efiemu/main.c: Replace GRUB_UTIL with GRUB_MACHINE_EMU.
3849 * loader/xnu.c: Likewise.
3850 * include/grub/pci.h: Likewise.
3851 * genemuinit.sh: New file.
3852 * genemuinitheader.sh: Likewise.
3853 * genmk.rb: Don't strip if TARGET_NO_STRIP is yes.
3854 Support TARGET_NO_DYNAMIC_MODULES.
3855 * include/grub/dl.h (GRUB_NO_MODULES): New variable.
3856 * commands/search.c: Fix GRUB_MOD_INIT and GRUB_MOD_FINI arguments.
3857 * disk/loopback.c: Likewise.
3858 * font/font_cmd.c: Likewise.
3859 * partmap/acorn.c: Likewise.
3860 * partmap/amiga.c: Likewise.
3861 * partmap/apple.c: Likewise.
3862 * partmap/gpt.c: Likewise.
3863 * partmap/msdos.c: Likewise.
3864 * partmap/sun.c: Likewise.
3865 * parttool/msdospart.c: Likewise.
3866 * term/gfxterm.c: Likewise.
3867 * video/bitmap.c: Likewise.
3868 * video/readers/jpeg.c: Likewise.
3869 * video/readers/png.c: Likewise.
3870 * video/readers/tga.c: Likewise.
3871 * video/video.c: Likewise.
3872 * util/grub-emu.c (read_command_list): Removed.
3873 (main): Don't call util_init_nls.
3874 * util/misc.c (grub_err_printf) [!GRUB_UTIL]: Removed.
3875 (grub_util_init_nls) [!GRUB_UTIL]: Likewise.
3876
38772010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
3878
3879 * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add datetime.mod,
3880 date.mod, datehook.mod.
3881 (datetime_mod_SOURCES): New variable.
3882 (datetime_mod_CFLAGS): Likewise.
3883 (datetime_mod_LDFLAGS): Likewise.
3884 (date_mod_SOURCES): Likewise.
3885 (date_mod_CFLAGS): Likewise.
3886 (date_mod_LDFLAGS): Likewise.
3887 (datehook_mod_SOURCES): Likewise.
3888 (datehook_mod_CFLAGS): Likewise.
3889 (datehook_mod_LDFLAGS): Likewise.
3890 * conf/sparc64-ieee1275.rmk: Likewise.
3891 * lib/ieee1275/datetime.c: New file.
3892
38932010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
3894
3895 * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add ieee1275_fb.mod.
3896 (ieee1275_fb_mod_SOURCES): New variable.
3897 (ieee1275_fb_mod_CFLAGS): Likewise.
3898 (ieee1275_fb_mod_LDFLAGS): Likewise.
3899 * include/grub/ieee1275/ieee1275.h (grub_ieee1275_devices_iterate):
3900 New proto.
3901 * kern/ieee1275/init.c (HEAP_MAX_SIZE): Increased.
3902 (HEAP_MAX_ADDR): Likewise.
3903 * kern/ieee1275/openfw.c (grub_children_iterate): Don't skip empty
3904 type.
3905 Correct stop condition.
3906 (grub_ieee1275_devices_iterate): New function.
3907 * video/ieee1275.c: New file.
3908
39092010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
3910
3911 Merge sparc grub-mkimage into generic grub-mkimage and a.out support.
3912
3913 * boot/sparc64/ieee1275/boot.S (boot_continue): Use SCRATCH_PAD_BOOT
3914 as scratch.
3915 * boot/sparc64/ieee1275/diskboot.S (after_info_block): Use
3916 SCRATCH_PAD_DISKBOOT as scratch.
3917 (bootit): Pass Openfirmware pointer in %o4.
3918 * conf/sparc64-ieee1275.rmk (kernel_img_LDFLAGS): Link at 0x4400 instead
3919 of 0x200000.
3920 (grub_mkimage_SOURCES): Replace util/sparc64/ieee1275/grub-mkimage.c
3921 with util/grub-mkrawimage.c.
3922 * configure.ac: Handle GRUB_MACHINE_SPARC64 and GRUB_MACHINE_MIPS.
3923 * include/grub/aout.h (AOUT_MID_SUN): New definition.
3924 (grub_aout_get_type) [GRUB_UTIL]: Removed.
3925 (grub_aout_load) [GRUB_UTIL]: Likewise.
3926 * include/grub/kernel.h (grub_modules_get_end): New proto.
3927 * include/grub/sparc64/ieee1275/boot.h (SCRATCH_PAD): Removed.
3928 (SCRATCH_PAD_BOOT): New definition.
3929 (SCRATCH_PAD_DISKBOOT): Likewise.
3930 (GRUB_BOOT_MACHINE_IMAGE_ADDRESS): Set to 0x4400.
3931 * include/grub/sparc64/ieee1275/ieee1275.h
3932 (grub_ieee1275_original_stack): New variable
3933 * include/grub/sparc64/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
3934 New definition
3935 (GRUB_KERNEL_MACHINE_STACK_SIZE): Likewise.
3936 (GRUB_PLATFORM_IMAGE_FORMATS): Likewise.
3937 (GRUB_PLATFORM_IMAGE_DEFAULT_FORMAT): Likewise.
3938 (GRUB_PLATFORM_IMAGE_DEFAULT): Likewise.
3939 (GRUB_PLATFORM_IMAGE_RAW): Likewise.
3940 (GRUB_PLATFORM_IMAGE_AOUT): Likewise.
3941 (grub_platform_image_format_t): New type.
3942 * kern/mips/yeeloong/init.c (grub_modules_get_end): Move from here ...
3943 * kern/main.c (grub_modules_get_end)
3944 [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_SPARC64]: ... here.
3945 * kern/sparc64/ieee1275/crt0.S: Store firmware entry point in %o0.
3946 (codestart): Switch stacks.
3947 * kern/sparc64/ieee1275/init.c (grub_ieee1275_original_stack): New
3948 variable.
3949 (grub_heap_init): Use grub_modules_get_end.
3950 * loader/sparc64/ieee1275/linux.c (grub_linux_boot): Restore original
3951 stack.
3952 * util/grub-mkrawimage.c (generate_image): Support sparc64.
3953 (main): Likewise.
3954 * util/sparc64/ieee1275/grub-mkimage.c: Removed.
3955
39562010-03-14 Thorsten Glaser <tg@mirbsd.org>
3957
3958 * util/grub-mkrescue.in: Base ISO UUID on UTC.
3959
39602010-03-08 Matt Kraai <kraai@ftbfs.org>
3961
3962 * util/i386/pc/grub-setup.c (setup): Fix a grammatical error (Debian
3963 bug #559005).
3964
39652010-03-07 Vladimir Serbinenko <phcoder@gmail.com>
3966
3967 * genmoddep.awk: Output all missing symbols and not only first.
3968
39692010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
3970
3971 * NEWS: Put the date of 1.98 release.
3972
39732010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
3974
3975 * configure.ac: Update CPPFLAGS and not CFLAGS when checking for
3976 ft2build.h.
3977
39782010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
3979
3980 * normal/cmdline.c (grub_cmdline_get): Fix gabled line after
3981 completition in the middle of string.
3982
39832010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
3984
3985 * util/grub-mkrescue.in: Use mktemp with explicit template.
3986
39872010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
3988
3989 * loader/i386/bsd.c (grub_bsd_get_device): Fix a memory leak.
3990
39912010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
3992
3993 * loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Free the
3994 right pointer.
3995
39962010-03-05 Vladimir Serbinenko <phcoder@gmail.com>
3997
3998 Fix FreeBSD compilation.
3999
4000 * Makefile.in (TARGET_CPPFLAGS): Remove -nostdinc -isystem.
4001 * configure.ac: Add -nostdinc -isystem to TARGET_CPPFLAGS if it works.
4002
40032010-03-05 Vladimir Serbinenko <phcoder@gmail.com>
4004
4005 * util/import_gcry.py: Add autogenerated files to MAINTAINER_CLEANFILES.
4006
40072010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4008
4009 * gettext/gettext.c (grub_gettext_init_ext): Fix a memory leak.
4010
40112010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4012
4013 * disk/scsi.c (grub_scsi_iterate): Fix a memory leak.
4014
40152010-03-04 Robert Millan <rmh.grub@aybabtu.com>
4016
4017 Support relative image path in theme file.
4018
4019 * gfxmenu/gui_image.c (grub_gui_image): New member theme_dir.
4020 (image_set_property): Handle theme_dir and relative path.
4021
40222010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4023
4024 * configure.ac: Alias amd64 to x86_64.
4025
40262010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4027
4028 * NEWS: mention multiboot on EFI.
4029
40302010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4031
4032 * kern/main.c (grub_load_modules): Handle errors from init functions of
4033 embeded modules.
4034
40352010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4036
4037 * normal/autofs.c (autoload_fs_module): Handle errors.
4038
40392010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4040
4041 Disable linux.mod on qemu-mips since it's not functional and leads
4042 to compilation failure.
4043
4044 * conf/mips.rmk (pkglib_MODULES): Remove linux.mod.
4045 * conf/mips-yeeloong.rmk (pkglib_MODULES): Add linux.mod.
4046 * conf/mips.rmk (linux_mod_SOURCES): Move from here ...
4047 * conf/mips-yeeloong.rmk (linux_mod_SOURCES): ... here
4048 * conf/mips.rmk (linux_mod_CFLAGS): Move from here ...
4049 * conf/mips-yeeloong.rmk (linux_mod_CFLAGS): ... here
4050 * conf/mips.rmk (linux_mod_ASFLAGS): Move from here ...
4051 * conf/mips-yeeloong.rmk (linux_mod_ASFLAGS): ... here
4052 * conf/mips.rmk (linux_mod_LDFLAGS): Move from here ...
4053 * conf/mips-yeeloong.rmk (linux_mod_LDFLAGS): ... here
4054 Reported by: BVK Chaitanya
4055
40562010-03-04 Jordan Uggla <jordan.uggla@gmail.com>
4057
4058 * INSTALL: Add gettext as a dependency and add qemu to a new section
4059 "Prerequisites for make-check".
4060
40612010-03-04 Christian Franke <franke@computer.org>
4062
4063 * util/grub-pe2elf.c: Add missing include "progname.h".
4064
40652010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4066
4067 * normal/crypto.c (read_crypto_list): Fix a typo.
4068 Reported by: Seth Goldberg.
4069
40702010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4071
4072 * Makefile.in (DISTCLEANFILES): Add stamp-h1.
4073 Reported by: Seth Goldberg.
4074
40752010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4076
4077 * Makefile.in (CLEANFILES) [FONT_SOURCE && grub_mkfont]: Add
4078 ascii.bitmaps.
4079
40802010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4081
4082 * genmk.rb: Remove terminal*.lst in make clean.
4083 Reported by: Seth Goldberg.
4084
40852010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
4086
4087 * util/i386/efi/grub-install.in: Copy gettext files.
4088
40892010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
4090
4091 * fs/ext2.c (grub_ext2_read_block): Fix an integer overflow.
4092
40932010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
4094
4095 Wait for user entry basing on presence of output rather than on errors.
4096
4097 * include/grub/normal.h (grub_normal_get_line_counter): New proto.
4098 (grub_install_newline_hook): Likewise.
4099 * normal/main.c (GRUB_MOD_INIT): Call grub_install_newline_hook.
4100 * normal/menu.c (show_menu): Check line_counter to determine presence
4101 of output.
4102 * normal/term.c (grub_normal_line_counter): New variable.
4103 (grub_normal_get_line_counter): New function.
4104 (grub_install_newline_hook): Likewise.
4105
41062010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
4107
4108 * commands/cat.c (grub_cmd_cat): Propagate grub_gzfile_open error.
4109
41102010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
4111
4112 * configure.ac: Update version to 1.98.
4113
41142010-02-26 Vladimir Serbinenko <phcoder@gmail.com>
4115
4116 * util/grub.d/10_linux.in (linux_entry): Don't default to
4117 gfxpayload=keep if Linux doesn't support video handover.
4118
41192010-02-25 Vladimir Serbinenko <phcoder@gmail.com>
4120
4121 Don't compile video modules on yeeloong since video subsystem is part
4122 of kernel.
4123
4124 * conf/common.rmk (pkglib_MODULES) [yeeloong]: Remove video.mod,
4125 video_fb.mod, bitmap.mod, font.mod, gfxterm.mod and bufio.mod
4126 * conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add bitmap.h,
4127 video.h, gfxterm.h, font.h, bitmap_scale.h and bufio.h.
4128 * conf/mips.rmk (kernel_img_HEADERS): Add values instead of overwriting.
4129 * include/grub/bitmap.h: Add EXPORT_FUNC and EXPORT_VAR.
4130 * include/grub/bitmap_scale.h: Likewise.
4131 * include/grub/bufio.h: Likewise.
4132 * include/grub/font.h: Likewise.
4133 * include/grub/gfxterm.h: Likewise.
4134 * include/grub/video.h: Likewise.
4135 * include/grub/vbe.h: Don't include video_fb.h.
4136 * video/i386/pc/vbe.c: Include video_fb.h.
4137 * commands/i386/pc/vbetest.c: Include video.h.
4138
41392010-02-25 Jordan Uggla <jordan.uggla@gmail.com>
4140
4141 * util/grub-mkconfig.in (GRUB_SAVEDEFAULT): Export new variable.
4142 * util/grub-mkconfig_lib.in (save_default_entry): Only save a new
4143 default entry if GRUB_SAVEDEFAULT=true. This allows using
4144 GRUB_DEFAULT=saved on its own to let grub-reboot work, without
4145 saving a new default on every boot.
4146
41472010-02-24 Vladimir Serbinenko <phcoder@gmail.com>
4148
4149 * normal/crypto.c (read_crypto_list): Fix a memory leak.
4150 * normal/term.c (read_terminal_list): Likewise.
4151 * normal/main.c (grub_normal_init_page): Likewise.
4152 (grub_normal_read_line_real): Likewise.
4153
41542010-02-24 Vladimir Serbinenko <phcoder@gmail.com>
4155
4156 * loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Fix a
4157 memory leak.
4158 Reported by: Seth Goldberg.
4159
41602010-02-24 Joey Korkames <joey+lists@kidfixit.com>
4161
4162 * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Remove
4163 duplicate declaration of `start'.
4164
41652010-02-20 Vladimir Serbinenko <phcoder@gmail.com>
4166
4167 * fs/iso9660.c (grub_iso9660_iterate_dir): Strip version from joliet
4168 filename.
4169 Reported by: Georgy Buranov
4170
41712010-02-20 Carles Pina i Estany <carles@pina.cat>
4172
4173 * util/grub-mkrawimage.c (usage): Change string formatting to
4174 improve gettext.
4175
41762010-02-20 Manoel Rebelo Abranches <mrabran@br.ibm.com>
4177
4178 * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Add delete and
4179 backspace keys.
4180
41812010-02-20 Vladimir Serbinenko <phcoder@gmail.com>
4182
4183 * video/fb/video_fb.c (grub_video_fb_scroll): Fix a pixel size bug.
4184 Reported by: Michael Suchanek.
4185
41862010-02-18 Samuel Thibault <samuel.thibault@ens-lyon.org>
4187
4188 * util/grub-mkconfig.in: Export GRUB_INIT_TUNE.
4189 * util/grub.d/00_header.in: Handle GRUB_INIT_TUNE.
4190
41912010-02-16 Vladimir Serbinenko <phcoder@gmail.com>
4192
4193 Remove any reference to non-free fonts.
4194
4195 * commands/videotest.c (grub_cmd_videotest): Use unifont by default.
4196 * docs/gfxmenu-theme-example.txt: Removed. It's both outdated and
4197 uses non-free components.
4198 * font/font.c (grub_font_get_name): Remove example name.
4199 * gfxmenu/gui_label.c (grub_gui_label_new): Use unifont by default.
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches