├── .gitignore ├── ABOUT-NLS ├── AUTHORS ├── BUGS ├── COPYING ├── ChangeLog ├── INSTALL ├── Makefile.am ├── Makefile.util.def ├── NEWS ├── README ├── THANKS ├── TODO ├── acinclude.m4 ├── autogen.sh ├── build-aux ├── config.rpath └── snippet │ ├── _Noreturn.h │ ├── arg-nonnull.h │ ├── c++defs.h │ └── warn-on-use.h ├── conf ├── Makefile.common ├── Makefile.extra-dist └── i386-pc-cygwin-img-ld.sc ├── config.h.in ├── configure.ac ├── docs ├── Makefile.am ├── fdl.texi ├── font_char_metrics.png ├── font_char_metrics.txt ├── grub-dev.texi ├── grub.cfg ├── grub.texi ├── man │ ├── grub-bios-setup.h2m │ ├── grub-editenv.h2m │ ├── grub-emu.h2m │ ├── grub-fstest.h2m │ ├── grub-glue-efi.h2m │ ├── grub-install.h2m │ ├── grub-kbdcomp.h2m │ ├── grub-macho2img.h2m │ ├── grub-menulst2cfg.h2m │ ├── grub-mkconfig.h2m │ ├── grub-mkfont.h2m │ ├── grub-mkimage.h2m │ ├── grub-mklayout.h2m │ ├── grub-mknetdir.h2m │ ├── grub-mkpasswd-pbkdf2.h2m │ ├── grub-mkrelpath.h2m │ ├── grub-mkrescue.h2m │ ├── grub-mkstandalone.h2m │ ├── grub-mount.h2m │ ├── grub-ofpathname.h2m │ ├── grub-pe2elf.h2m │ ├── grub-probe.h2m │ ├── grub-reboot.h2m │ ├── grub-render-label.h2m │ ├── grub-script-check.h2m │ ├── grub-set-default.h2m │ └── grub-sparc64-setup.h2m ├── mdate-sh └── texinfo.tex ├── geninit.sh ├── gentpl.py ├── grub-core ├── Makefile.am ├── Makefile.core.def ├── boot │ ├── decompressor │ │ ├── minilib.c │ │ ├── none.c │ │ └── xz.c │ ├── i386 │ │ ├── pc │ │ │ ├── boot.S │ │ │ ├── cdboot.S │ │ │ ├── diskboot.S │ │ │ ├── lnxboot.S │ │ │ ├── lzma_decode.S │ │ │ ├── pxeboot.S │ │ │ └── startup_raw.S │ │ └── qemu │ │ │ └── boot.S │ ├── mips │ │ ├── loongson │ │ │ ├── fuloong2f.S │ │ │ └── fwstart.S │ │ └── startup_raw.S │ ├── powerpc │ │ ├── bootinfo.txt.in │ │ └── grub.chrp.in │ └── sparc64 │ │ └── ieee1275 │ │ ├── boot.S │ │ └── diskboot.S ├── bus │ ├── bonito.c │ ├── cs5536.c │ ├── emu │ │ └── pci.c │ ├── pci.c │ └── usb │ │ ├── ehci.c │ │ ├── emu │ │ └── usb.c │ │ ├── ohci.c │ │ ├── serial │ │ ├── common.c │ │ ├── ftdi.c │ │ ├── pl2303.c │ │ └── usbdebug_late.c │ │ ├── uhci.c │ │ ├── usb.c │ │ ├── usbhub.c │ │ └── usbtrans.c ├── commands │ ├── acpi.c │ ├── acpihalt.c │ ├── arc │ │ └── lsdev.c │ ├── blocklist.c │ ├── boot.c │ ├── boottime.c │ ├── cacheinfo.c │ ├── cat.c │ ├── cmp.c │ ├── configfile.c │ ├── date.c │ ├── echo.c │ ├── efi │ │ ├── acpi.c │ │ ├── efifwsetup.c │ │ ├── fixvideo.c │ │ ├── loadbios.c │ │ ├── lsefi.c │ │ ├── lsefimmap.c │ │ ├── lsefisystab.c │ │ └── lssal.c │ ├── eval.c │ ├── extcmd.c │ ├── gptsync.c │ ├── halt.c │ ├── hashsum.c │ ├── hdparm.c │ ├── help.c │ ├── hexdump.c │ ├── i386 │ │ ├── cmosdump.c │ │ ├── cmostest.c │ │ ├── coreboot │ │ │ ├── cb_timestamps.c │ │ │ └── cbls.c │ │ ├── cpuid.c │ │ └── pc │ │ │ ├── acpi.c │ │ │ ├── drivemap.c │ │ │ ├── drivemap_int13h.S │ │ │ ├── halt.c │ │ │ ├── lsapm.c │ │ │ ├── play.c │ │ │ └── sendkey.c │ ├── ieee1275 │ │ └── suspend.c │ ├── iorw.c │ ├── keylayouts.c │ ├── keystatus.c │ ├── legacycfg.c │ ├── loadenv.c │ ├── ls.c │ ├── lsacpi.c │ ├── lsmmap.c │ ├── lspci.c │ ├── memrw.c │ ├── menuentry.c │ ├── minicmd.c │ ├── mips │ │ └── loongson │ │ │ └── lsspd.c │ ├── nativedisk.c │ ├── parttool.c │ ├── password.c │ ├── password_pbkdf2.c │ ├── pcidump.c │ ├── probe.c │ ├── read.c │ ├── reboot.c │ ├── regexp.c │ ├── search.c │ ├── search_file.c │ ├── search_label.c │ ├── search_uuid.c │ ├── search_wrap.c │ ├── setpci.c │ ├── sleep.c │ ├── terminal.c │ ├── test.c │ ├── testload.c │ ├── testspeed.c │ ├── time.c │ ├── true.c │ ├── usbtest.c │ ├── verify.c │ ├── videoinfo.c │ ├── videotest.c │ ├── wildcard.c │ └── xnu_uuid.c ├── disk │ ├── AFSplitter.c │ ├── ahci.c │ ├── arc │ │ └── arcdisk.c │ ├── ata.c │ ├── cryptodisk.c │ ├── diskfilter.c │ ├── dmraid_nvidia.c │ ├── efi │ │ └── efidisk.c │ ├── geli.c │ ├── host.c │ ├── i386 │ │ └── pc │ │ │ └── biosdisk.c │ ├── ieee1275 │ │ ├── nand.c │ │ └── ofdisk.c │ ├── ldm.c │ ├── loopback.c │ ├── luks.c │ ├── lvm.c │ ├── mdraid1x_linux.c │ ├── mdraid_linux.c │ ├── mdraid_linux_be.c │ ├── memdisk.c │ ├── pata.c │ ├── raid5_recover.c │ ├── raid6_recover.c │ ├── scsi.c │ ├── uboot │ │ └── ubootdisk.c │ └── usbms.c ├── efiemu │ ├── i386 │ │ ├── coredetect.c │ │ ├── loadcore32.c │ │ ├── loadcore64.c │ │ ├── nocfgtables.c │ │ └── pc │ │ │ └── cfgtables.c │ ├── loadcore.c │ ├── loadcore32.c │ ├── loadcore64.c │ ├── loadcore_common.c │ ├── main.c │ ├── mm.c │ ├── pnvram.c │ ├── prepare.c │ ├── prepare32.c │ ├── prepare64.c │ ├── runtime │ │ ├── config.h │ │ ├── efiemu.S │ │ └── efiemu.c │ └── symbols.c ├── font │ ├── font.c │ └── font_cmd.c ├── fs │ ├── affs.c │ ├── afs.c │ ├── archelp.c │ ├── bfs.c │ ├── btrfs.c │ ├── cbfs.c │ ├── cpio.c │ ├── cpio_be.c │ ├── cpio_common.c │ ├── exfat.c │ ├── ext2.c │ ├── fat.c │ ├── fshelp.c │ ├── hfs.c │ ├── hfsplus.c │ ├── hfspluscomp.c │ ├── iso9660.c │ ├── jfs.c │ ├── minix.c │ ├── minix2.c │ ├── minix2_be.c │ ├── minix3.c │ ├── minix3_be.c │ ├── minix_be.c │ ├── newc.c │ ├── nilfs2.c │ ├── ntfs.c │ ├── ntfscomp.c │ ├── odc.c │ ├── proc.c │ ├── reiserfs.c │ ├── romfs.c │ ├── sfs.c │ ├── squash4.c │ ├── tar.c │ ├── udf.c │ ├── ufs.c │ ├── ufs2.c │ ├── ufs_be.c │ ├── xfs.c │ └── zfs │ │ ├── zfs.c │ │ ├── zfs_fletcher.c │ │ ├── zfs_lz4.c │ │ ├── zfs_lzjb.c │ │ ├── zfs_sha256.c │ │ ├── zfscrypt.c │ │ └── zfsinfo.c ├── gdb │ ├── cstub.c │ ├── gdb.c │ └── i386 │ │ ├── idt.c │ │ ├── machdep.S │ │ └── signal.c ├── gdb_grub.in ├── genemuinit.sh ├── genemuinitheader.sh ├── genmod.sh.in ├── genmoddep.awk ├── gensyminfo.sh.in ├── gensymlist.sh ├── gentrigtables.c ├── gettext │ └── gettext.c ├── gfxmenu │ ├── font.c │ ├── gfxmenu.c │ ├── gui_box.c │ ├── gui_canvas.c │ ├── gui_circular_progress.c │ ├── gui_image.c │ ├── gui_label.c │ ├── gui_list.c │ ├── gui_progress_bar.c │ ├── gui_string_util.c │ ├── gui_util.c │ ├── icon_manager.c │ ├── model.c │ ├── theme_loader.c │ ├── view.c │ └── widget-box.c ├── gmodule.pl.in ├── gnulib-fix-null-deref.diff ├── gnulib-fix-width.diff ├── gnulib-no-abort.diff ├── gnulib-no-gets.diff ├── gnulib │ ├── Makefile.am │ ├── alloca.c │ ├── alloca.in.h │ ├── argp-ba.c │ ├── argp-eexst.c │ ├── argp-fmtstream.c │ ├── argp-fmtstream.h │ ├── argp-fs-xinl.c │ ├── argp-help.c │ ├── argp-namefrob.h │ ├── argp-parse.c │ ├── argp-pin.c │ ├── argp-pv.c │ ├── argp-pvh.c │ ├── argp-xinl.c │ ├── argp.h │ ├── asnprintf.c │ ├── basename-lgpl.c │ ├── btowc.c │ ├── config.charset │ ├── dirname-lgpl.c │ ├── dirname.h │ ├── dosname.h │ ├── errno.in.h │ ├── error.c │ ├── error.h │ ├── float+.h │ ├── float.c │ ├── float.in.h │ ├── fnmatch.c │ ├── fnmatch.in.h │ ├── fnmatch_loop.c │ ├── getdelim.c │ ├── getline.c │ ├── getopt.c │ ├── getopt.in.h │ ├── getopt1.c │ ├── getopt_int.h │ ├── gettext.h │ ├── intprops.h │ ├── itold.c │ ├── langinfo.in.h │ ├── localcharset.c │ ├── localcharset.h │ ├── locale.in.h │ ├── localeconv.c │ ├── malloc.c │ ├── mbrtowc.c │ ├── mbsinit.c │ ├── mbsrtowcs-impl.h │ ├── mbsrtowcs-state.c │ ├── mbsrtowcs.c │ ├── mbswidth.c │ ├── mbswidth.h │ ├── mbtowc-impl.h │ ├── mbtowc.c │ ├── memchr.c │ ├── memchr.valgrind │ ├── mempcpy.c │ ├── msvc-inval.c │ ├── msvc-inval.h │ ├── msvc-nothrow.c │ ├── msvc-nothrow.h │ ├── nl_langinfo.c │ ├── printf-args.c │ ├── printf-args.h │ ├── printf-parse.c │ ├── printf-parse.h │ ├── progname.c │ ├── progname.h │ ├── rawmemchr.c │ ├── rawmemchr.valgrind │ ├── realloc.c │ ├── ref-add.sin │ ├── ref-del.sin │ ├── regcomp.c │ ├── regex.c │ ├── regex.h │ ├── regex_internal.c │ ├── regex_internal.h │ ├── regexec.c │ ├── size_max.h │ ├── sleep.c │ ├── stdalign.in.h │ ├── stdbool.in.h │ ├── stddef.in.h │ ├── stdint.in.h │ ├── stdio.in.h │ ├── stdlib.in.h │ ├── strcasecmp.c │ ├── strchrnul.c │ ├── strchrnul.valgrind │ ├── streq.h │ ├── strerror-override.c │ ├── strerror-override.h │ ├── strerror.c │ ├── string.in.h │ ├── strings.in.h │ ├── stripslash.c │ ├── strncasecmp.c │ ├── strndup.c │ ├── strnlen.c │ ├── strnlen1.c │ ├── strnlen1.h │ ├── sys_types.in.h │ ├── sysexits.in.h │ ├── unistd.c │ ├── unistd.in.h │ ├── unitypes.in.h │ ├── uniwidth.in.h │ ├── uniwidth │ │ ├── cjk.h │ │ └── width.c │ ├── vasnprintf.c │ ├── vasnprintf.h │ ├── verify.h │ ├── vsnprintf.c │ ├── wchar.in.h │ ├── wcrtomb.c │ ├── wctype-h.c │ ├── wctype.in.h │ ├── wcwidth.c │ ├── xsize.c │ └── xsize.h ├── hello │ └── hello.c ├── hook │ └── datehook.c ├── io │ ├── bufio.c │ ├── gzio.c │ ├── lzopio.c │ └── xzio.c ├── kern │ ├── arm │ │ ├── cache.S │ │ ├── cache.c │ │ ├── cache_armv6.S │ │ ├── cache_armv7.S │ │ ├── dl.c │ │ ├── dl_helper.c │ │ ├── efi │ │ │ ├── init.c │ │ │ ├── misc.c │ │ │ └── startup.S │ │ ├── misc.S │ │ └── uboot │ │ │ └── startup.S │ ├── command.c │ ├── corecmd.c │ ├── device.c │ ├── disk.c │ ├── dl.c │ ├── efi │ │ ├── efi.c │ │ ├── init.c │ │ └── mm.c │ ├── elf.c │ ├── elfXX.c │ ├── emu │ │ ├── argp_common.c │ │ ├── cache.c │ │ ├── cache_s.S │ │ ├── error.c │ │ ├── full.c │ │ ├── hostdisk.c │ │ ├── hostfs.c │ │ ├── lite.c │ │ ├── main.c │ │ ├── misc.c │ │ ├── mm.c │ │ └── time.c │ ├── env.c │ ├── err.c │ ├── file.c │ ├── fs.c │ ├── generic │ │ ├── millisleep.c │ │ └── rtc_get_time_ms.c │ ├── i386 │ │ ├── coreboot │ │ │ ├── cbtable.c │ │ │ ├── init.c │ │ │ ├── mmap.c │ │ │ └── startup.S │ │ ├── dl.c │ │ ├── efi │ │ │ ├── init.c │ │ │ └── startup.S │ │ ├── ieee1275 │ │ │ └── startup.S │ │ ├── int.S │ │ ├── multiboot_mmap.c │ │ ├── pc │ │ │ ├── init.c │ │ │ ├── mmap.c │ │ │ └── startup.S │ │ ├── qemu │ │ │ ├── init.c │ │ │ ├── mmap.c │ │ │ └── startup.S │ │ ├── realmode.S │ │ └── tsc.c │ ├── ia64 │ │ ├── dl.c │ │ ├── dl_helper.c │ │ └── efi │ │ │ ├── init.c │ │ │ └── startup.S │ ├── ieee1275 │ │ ├── cmain.c │ │ ├── ieee1275.c │ │ ├── init.c │ │ ├── mmap.c │ │ └── openfw.c │ ├── list.c │ ├── main.c │ ├── mips │ │ ├── arc │ │ │ └── init.c │ │ ├── cache.S │ │ ├── cache_flush.S │ │ ├── dl.c │ │ ├── init.c │ │ ├── loongson │ │ │ └── init.c │ │ ├── qemu_mips │ │ │ └── init.c │ │ └── startup.S │ ├── misc.c │ ├── mm.c │ ├── parser.c │ ├── partition.c │ ├── powerpc │ │ ├── cache.S │ │ ├── cache_flush.S │ │ ├── dl.c │ │ └── ieee1275 │ │ │ └── startup.S │ ├── rescue_parser.c │ ├── rescue_reader.c │ ├── sparc64 │ │ ├── cache.S │ │ ├── dl.c │ │ └── ieee1275 │ │ │ ├── crt0.S │ │ │ └── ieee1275.c │ ├── term.c │ ├── time.c │ ├── uboot │ │ ├── hw.c │ │ ├── init.c │ │ └── uboot.c │ ├── vga_init.c │ └── x86_64 │ │ ├── dl.c │ │ └── efi │ │ ├── callwrap.S │ │ └── startup.S ├── lib │ ├── LzFind.c │ ├── LzmaDec.c │ ├── LzmaEnc.c │ ├── adler32.c │ ├── arc │ │ └── datetime.c │ ├── arg.c │ ├── arm │ │ └── setjmp.S │ ├── backtrace.c │ ├── cmdline.c │ ├── cmos_datetime.c │ ├── crc.c │ ├── crc64.c │ ├── crypto.c │ ├── efi │ │ ├── datetime.c │ │ ├── halt.c │ │ ├── reboot.c │ │ └── relocator.c │ ├── emu │ │ └── halt.c │ ├── envblk.c │ ├── fake_module.c │ ├── fdt.c │ ├── hexdump.c │ ├── i386 │ │ ├── backtrace.c │ │ ├── halt.c │ │ ├── pc │ │ │ ├── biosnum.c │ │ │ └── vesa_modes_table.c │ │ ├── reboot.c │ │ ├── reboot_trampoline.S │ │ ├── relocator.c │ │ ├── relocator16.S │ │ ├── relocator32.S │ │ ├── relocator64.S │ │ ├── relocator_asm.S │ │ ├── relocator_common.S │ │ └── setjmp.S │ ├── ia64 │ │ ├── longjmp.S │ │ └── setjmp.S │ ├── ieee1275 │ │ ├── cmos.c │ │ ├── datetime.c │ │ ├── halt.c │ │ ├── reboot.c │ │ └── relocator.c │ ├── legacy_parse.c │ ├── libgcrypt │ │ ├── cipher │ │ │ ├── ChangeLog │ │ │ ├── Makefile.am │ │ │ ├── Manifest │ │ │ ├── ac.c │ │ │ ├── arcfour.c │ │ │ ├── bithelp.h │ │ │ ├── blowfish.c │ │ │ ├── camellia-glue.c │ │ │ ├── camellia.c │ │ │ ├── camellia.h │ │ │ ├── cast5.c │ │ │ ├── cipher.c │ │ │ ├── crc.c │ │ │ ├── des.c │ │ │ ├── dsa.c │ │ │ ├── ecc.c │ │ │ ├── elgamal.c │ │ │ ├── hash-common.c │ │ │ ├── hash-common.h │ │ │ ├── hmac-tests.c │ │ │ ├── md.c │ │ │ ├── md4.c │ │ │ ├── md5.c │ │ │ ├── primegen.c │ │ │ ├── pubkey.c │ │ │ ├── rfc2268.c │ │ │ ├── rijndael-tables.h │ │ │ ├── rijndael.c │ │ │ ├── rmd.h │ │ │ ├── rmd160.c │ │ │ ├── rsa.c │ │ │ ├── seed.c │ │ │ ├── serpent.c │ │ │ ├── sha1.c │ │ │ ├── sha256.c │ │ │ ├── sha512.c │ │ │ ├── test-getrusage.c │ │ │ ├── tiger.c │ │ │ ├── twofish.c │ │ │ └── whirlpool.c │ │ ├── mpi │ │ │ ├── ChangeLog-2011 │ │ │ ├── Makefile.am │ │ │ ├── Manifest │ │ │ ├── alpha │ │ │ │ ├── README │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-mul1.S │ │ │ │ ├── mpih-mul2.S │ │ │ │ ├── mpih-mul3.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ ├── mpih-sub1.S │ │ │ │ └── udiv-qrnnd.S │ │ │ ├── amd64 │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-mul1.S │ │ │ │ ├── mpih-mul2.S │ │ │ │ ├── mpih-mul3.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ └── mpih-sub1.S │ │ │ ├── config.links │ │ │ ├── ec.c │ │ │ ├── generic │ │ │ │ ├── Manifest │ │ │ │ ├── distfiles │ │ │ │ ├── mpi-asm-defs.h │ │ │ │ ├── mpih-add1.c │ │ │ │ ├── mpih-lshift.c │ │ │ │ ├── mpih-mul1.c │ │ │ │ ├── mpih-mul2.c │ │ │ │ ├── mpih-mul3.c │ │ │ │ ├── mpih-rshift.c │ │ │ │ ├── mpih-sub1.c │ │ │ │ └── udiv-w-sdiv.c │ │ │ ├── hppa │ │ │ │ ├── README │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ ├── mpih-sub1.S │ │ │ │ └── udiv-qrnnd.S │ │ │ ├── i386 │ │ │ │ ├── Manifest │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-mul1.S │ │ │ │ ├── mpih-mul2.S │ │ │ │ ├── mpih-mul3.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ ├── mpih-sub1.S │ │ │ │ └── syntax.h │ │ │ ├── i586 │ │ │ │ ├── Manifest │ │ │ │ ├── README │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-mul1.S │ │ │ │ ├── mpih-mul2.S │ │ │ │ ├── mpih-mul3.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ └── mpih-sub1.S │ │ │ ├── longlong.h │ │ │ ├── m68k │ │ │ │ ├── Manifest │ │ │ │ ├── distfiles │ │ │ │ ├── mc68020 │ │ │ │ │ ├── Manifest │ │ │ │ │ ├── distfiles │ │ │ │ │ ├── mpih-mul1.S │ │ │ │ │ ├── mpih-mul2.S │ │ │ │ │ └── mpih-mul3.S │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ ├── mpih-sub1.S │ │ │ │ └── syntax.h │ │ │ ├── mips3 │ │ │ │ ├── Manifest │ │ │ │ ├── README │ │ │ │ ├── distfiles │ │ │ │ ├── mpi-asm-defs.h │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-mul1.S │ │ │ │ ├── mpih-mul2.S │ │ │ │ ├── mpih-mul3.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ └── mpih-sub1.S │ │ │ ├── mpi-add.c │ │ │ ├── mpi-bit.c │ │ │ ├── mpi-cmp.c │ │ │ ├── mpi-div.c │ │ │ ├── mpi-gcd.c │ │ │ ├── mpi-inline.c │ │ │ ├── mpi-inline.h │ │ │ ├── mpi-internal.h │ │ │ ├── mpi-inv.c │ │ │ ├── mpi-mod.c │ │ │ ├── mpi-mpow.c │ │ │ ├── mpi-mul.c │ │ │ ├── mpi-pow.c │ │ │ ├── mpi-scan.c │ │ │ ├── mpicoder.c │ │ │ ├── mpih-div.c │ │ │ ├── mpih-mul.c │ │ │ ├── mpiutil.c │ │ │ ├── pa7100 │ │ │ │ ├── Manifest │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-lshift.S │ │ │ │ └── mpih-rshift.S │ │ │ ├── pentium4 │ │ │ │ ├── README │ │ │ │ ├── distfiles │ │ │ │ ├── mmx │ │ │ │ │ ├── distfiles │ │ │ │ │ ├── mpih-lshift.S │ │ │ │ │ └── mpih-rshift.S │ │ │ │ └── sse2 │ │ │ │ │ ├── distfiles │ │ │ │ │ ├── mpih-add1.S │ │ │ │ │ ├── mpih-mul1.S │ │ │ │ │ ├── mpih-mul2.S │ │ │ │ │ ├── mpih-mul3.S │ │ │ │ │ └── mpih-sub1.S │ │ │ ├── power │ │ │ │ ├── Manifest │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-mul1.S │ │ │ │ ├── mpih-mul2.S │ │ │ │ ├── mpih-mul3.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ └── mpih-sub1.S │ │ │ ├── powerpc32 │ │ │ │ ├── Manifest │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-mul1.S │ │ │ │ ├── mpih-mul2.S │ │ │ │ ├── mpih-mul3.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ ├── mpih-sub1.S │ │ │ │ └── syntax.h │ │ │ ├── sparc32 │ │ │ │ ├── Manifest │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-add1.S │ │ │ │ ├── mpih-lshift.S │ │ │ │ ├── mpih-rshift.S │ │ │ │ └── udiv.S │ │ │ ├── sparc32v8 │ │ │ │ ├── Manifest │ │ │ │ ├── distfiles │ │ │ │ ├── mpih-mul1.S │ │ │ │ ├── mpih-mul2.S │ │ │ │ └── mpih-mul3.S │ │ │ └── supersparc │ │ │ │ ├── Manifest │ │ │ │ ├── distfiles │ │ │ │ └── udiv.S │ │ └── src │ │ │ ├── ChangeLog-2011 │ │ │ ├── Makefile.am │ │ │ ├── Manifest │ │ │ ├── ath.c │ │ │ ├── ath.h │ │ │ ├── cipher-proto.h │ │ │ ├── cipher.h │ │ │ ├── dumpsexp.c │ │ │ ├── fips.c │ │ │ ├── g10lib.h │ │ │ ├── gcrypt-module.h │ │ │ ├── gcrypt.h.in │ │ │ ├── gcryptrnd.c │ │ │ ├── getrandom.c │ │ │ ├── global.c │ │ │ ├── hmac256.c │ │ │ ├── hmac256.h │ │ │ ├── hwfeatures.c │ │ │ ├── libgcrypt-config.in │ │ │ ├── libgcrypt.def │ │ │ ├── libgcrypt.m4 │ │ │ ├── libgcrypt.vers │ │ │ ├── misc.c │ │ │ ├── missing-string.c │ │ │ ├── module.c │ │ │ ├── mpi.h │ │ │ ├── secmem.c │ │ │ ├── secmem.h │ │ │ ├── sexp.c │ │ │ ├── stdmem.c │ │ │ ├── stdmem.h │ │ │ ├── types.h │ │ │ ├── versioninfo.rc.in │ │ │ ├── visibility.c │ │ │ └── visibility.h │ ├── libgcrypt_wrap │ │ ├── cipher_wrap.h │ │ └── mem.c │ ├── minilzo │ │ ├── lzoconf.h │ │ ├── lzodefs.h │ │ ├── minilzo.c │ │ └── minilzo.h │ ├── mips │ │ ├── arc │ │ │ └── reboot.c │ │ ├── loongson │ │ │ └── reboot.c │ │ ├── qemu_mips │ │ │ └── reboot.c │ │ ├── relocator.c │ │ ├── relocator_asm.S │ │ └── setjmp.S │ ├── pbkdf2.c │ ├── posix_wrap │ │ ├── assert.h │ │ ├── ctype.h │ │ ├── errno.h │ │ ├── inttypes.h │ │ ├── langinfo.h │ │ ├── limits.h │ │ ├── localcharset.h │ │ ├── locale.h │ │ ├── stdint.h │ │ ├── stdio.h │ │ ├── stdlib.h │ │ ├── string.h │ │ ├── sys │ │ │ └── types.h │ │ ├── unistd.h │ │ ├── wchar.h │ │ └── wctype.h │ ├── powerpc │ │ ├── relocator.c │ │ ├── relocator_asm.S │ │ └── setjmp.S │ ├── priority_queue.c │ ├── reed_solomon.c │ ├── relocator.c │ ├── setjmp.S │ ├── sparc64 │ │ └── setjmp.S │ ├── uboot │ │ ├── datetime.c │ │ ├── halt.c │ │ └── reboot.c │ ├── x86_64 │ │ ├── relocator_asm.S │ │ └── setjmp.S │ └── xzembed │ │ ├── xz.h │ │ ├── xz_config.h │ │ ├── xz_dec_bcj.c │ │ ├── xz_dec_lzma2.c │ │ ├── xz_dec_stream.c │ │ ├── xz_lzma2.h │ │ ├── xz_private.h │ │ └── xz_stream.h ├── loader │ ├── aout.c │ ├── arm │ │ └── linux.c │ ├── efi │ │ ├── appleloader.c │ │ └── chainloader.c │ ├── i386 │ │ ├── bsd.c │ │ ├── bsd32.c │ │ ├── bsd64.c │ │ ├── bsdXX.c │ │ ├── bsd_pagetable.c │ │ ├── coreboot │ │ │ └── chainloader.c │ │ ├── linux.c │ │ ├── multiboot_mbi.c │ │ ├── pc │ │ │ ├── chainloader.c │ │ │ ├── freedos.c │ │ │ ├── linux.c │ │ │ ├── ntldr.c │ │ │ ├── plan9.c │ │ │ └── pxechainloader.c │ │ └── xnu.c │ ├── ia64 │ │ └── efi │ │ │ └── linux.c │ ├── linux.c │ ├── lzss.c │ ├── macho.c │ ├── macho32.c │ ├── macho64.c │ ├── machoXX.c │ ├── mips │ │ └── linux.c │ ├── multiboot.c │ ├── multiboot_elfxx.c │ ├── multiboot_mbi2.c │ ├── powerpc │ │ └── ieee1275 │ │ │ └── linux.c │ ├── sparc64 │ │ └── ieee1275 │ │ │ └── linux.c │ ├── xnu.c │ └── xnu_resume.c ├── mmap │ ├── efi │ │ └── mmap.c │ ├── i386 │ │ ├── mmap.c │ │ ├── pc │ │ │ ├── mmap.c │ │ │ └── mmap_helper.S │ │ └── uppermem.c │ ├── mips │ │ └── uppermem.c │ └── mmap.c ├── modinfo.sh.in ├── net │ ├── arp.c │ ├── bootp.c │ ├── dns.c │ ├── drivers │ │ ├── efi │ │ │ └── efinet.c │ │ ├── emu │ │ │ └── emunet.c │ │ ├── i386 │ │ │ └── pc │ │ │ │ └── pxe.c │ │ ├── ieee1275 │ │ │ └── ofnet.c │ │ └── uboot │ │ │ └── ubootnet.c │ ├── ethernet.c │ ├── http.c │ ├── icmp.c │ ├── icmp6.c │ ├── ip.c │ ├── net.c │ ├── netbuff.c │ ├── tcp.c │ ├── tftp.c │ └── udp.c ├── normal │ ├── auth.c │ ├── autofs.c │ ├── charset.c │ ├── cmdline.c │ ├── color.c │ ├── completion.c │ ├── context.c │ ├── crypto.c │ ├── datetime.c │ ├── dyncmd.c │ ├── main.c │ ├── menu.c │ ├── menu_entry.c │ ├── menu_text.c │ ├── misc.c │ └── term.c ├── partmap │ ├── acorn.c │ ├── amiga.c │ ├── apple.c │ ├── bsdlabel.c │ ├── dfly.c │ ├── dvh.c │ ├── gpt.c │ ├── msdos.c │ ├── plan.c │ ├── sun.c │ └── sunpc.c ├── parttool │ └── msdospart.c ├── script │ ├── argv.c │ ├── execute.c │ ├── function.c │ ├── lexer.c │ ├── main.c │ ├── parser.y │ ├── script.c │ └── yylex.l ├── term │ ├── arc │ │ ├── console.c │ │ └── serial.c │ ├── at_keyboard.c │ ├── efi │ │ ├── console.c │ │ └── serial.c │ ├── emu │ │ └── console.c │ ├── gfxterm.c │ ├── gfxterm_background.c │ ├── i386 │ │ ├── coreboot │ │ │ └── cbmemc.c │ │ └── pc │ │ │ ├── console.c │ │ │ ├── mda_text.c │ │ │ └── vga_text.c │ ├── ieee1275 │ │ ├── console.c │ │ ├── escc.c │ │ └── serial.c │ ├── morse.c │ ├── ns8250.c │ ├── serial.c │ ├── spkmodem.c │ ├── terminfo.c │ ├── tparm.c │ ├── uboot │ │ └── console.c │ └── usb_keyboard.c ├── tests │ ├── boot │ │ ├── kbsd.init-i386.S │ │ ├── kbsd.init-x86_64.S │ │ ├── kbsd.spec.txt │ │ ├── kernel-8086.S │ │ ├── kernel-i386.S │ │ ├── kfreebsd-aout.cfg │ │ ├── kfreebsd.cfg │ │ ├── kfreebsd.init-i386.S │ │ ├── kfreebsd.init-x86_64.S │ │ ├── knetbsd.cfg │ │ ├── kopenbsd.cfg │ │ ├── kopenbsdlabel.txt │ │ ├── linux-ppc.cfg │ │ ├── linux.cfg │ │ ├── linux.init-i386.S │ │ ├── linux.init-mips.S │ │ ├── linux.init-ppc.S │ │ ├── linux.init-x86_64.S │ │ ├── linux16.cfg │ │ ├── multiboot.cfg │ │ ├── multiboot2.cfg │ │ ├── ntldr.cfg │ │ ├── pc-chainloader.cfg │ │ └── qemu-shutdown-x86.S │ ├── checksums.h │ ├── cmdline_cat_test.c │ ├── example_functional_test.c │ ├── fake_input.c │ ├── gfxterm_menu.c │ ├── lib │ │ ├── functional_test.c │ │ └── test.c │ ├── setjmp_test.c │ ├── test_blockarg.c │ ├── video_checksum.c │ └── videotest_checksum.c └── video │ ├── bitmap.c │ ├── bitmap_scale.c │ ├── bochs.c │ ├── capture.c │ ├── cirrus.c │ ├── colors.c │ ├── efi_gop.c │ ├── efi_uga.c │ ├── emu │ └── sdl.c │ ├── fb │ ├── fbblit.c │ ├── fbfill.c │ ├── fbutil.c │ └── video_fb.c │ ├── i386 │ ├── coreboot │ │ └── cbfb.c │ └── pc │ │ ├── vbe.c │ │ └── vga.c │ ├── ieee1275.c │ ├── radeon_fuloong2e.c │ ├── readers │ ├── jpeg.c │ ├── png.c │ └── tga.c │ ├── sis315_init.c │ ├── sis315pro.c │ ├── sm712.c │ ├── sm712_init.c │ └── video.c ├── include ├── grub │ ├── acorn_filecore.h │ ├── acpi.h │ ├── aout.h │ ├── arc │ │ ├── arc.h │ │ └── console.h │ ├── archelp.h │ ├── arm │ │ ├── efi │ │ │ ├── loader.h │ │ │ └── memory.h │ │ ├── linux.h │ │ ├── reloc.h │ │ ├── setjmp.h │ │ ├── system.h │ │ ├── time.h │ │ ├── types.h │ │ └── uboot │ │ │ └── kernel.h │ ├── at_keyboard.h │ ├── ata.h │ ├── auth.h │ ├── autoefi.h │ ├── backtrace.h │ ├── bitmap.h │ ├── bitmap_scale.h │ ├── boottime.h │ ├── bsdlabel.h │ ├── bufio.h │ ├── cache.h │ ├── cbfs_core.h │ ├── charset.h │ ├── cmos.h │ ├── color.h │ ├── command.h │ ├── crypto.h │ ├── cryptodisk.h │ ├── cs5536.h │ ├── datetime.h │ ├── decompressor.h │ ├── deflate.h │ ├── device.h │ ├── disk.h │ ├── diskfilter.h │ ├── dl.h │ ├── efi │ │ ├── api.h │ │ ├── console.h │ │ ├── console_control.h │ │ ├── disk.h │ │ ├── edid.h │ │ ├── efi.h │ │ ├── graphics_output.h │ │ ├── memory.h │ │ ├── pci.h │ │ ├── pe32.h │ │ └── uga_draw.h │ ├── efiemu │ │ ├── efiemu.h │ │ └── runtime.h │ ├── elf.h │ ├── elfload.h │ ├── emu │ │ ├── console.h │ │ ├── export.h │ │ ├── getroot.h │ │ ├── hostdisk.h │ │ └── misc.h │ ├── env.h │ ├── env_private.h │ ├── err.h │ ├── extcmd.h │ ├── fat.h │ ├── fbblit.h │ ├── fbfill.h │ ├── fbutil.h │ ├── fdt.h │ ├── file.h │ ├── font.h │ ├── fontformat.h │ ├── fs.h │ ├── fshelp.h │ ├── gcry │ │ └── types.h │ ├── gcrypt │ │ └── gpg-error.h │ ├── gdb.h │ ├── gfxmenu_model.h │ ├── gfxmenu_view.h │ ├── gfxterm.h │ ├── gfxwidgets.h │ ├── gpt_partition.h │ ├── gui.h │ ├── gui_string_util.h │ ├── hfs.h │ ├── hfsplus.h │ ├── i18n.h │ ├── i386 │ │ ├── at_keyboard.h │ │ ├── bsd.h │ │ ├── cmos.h │ │ ├── coreboot │ │ │ ├── boot.h │ │ │ ├── console.h │ │ │ ├── lbio.h │ │ │ ├── memory.h │ │ │ ├── serial.h │ │ │ └── time.h │ │ ├── cpuid.h │ │ ├── efi │ │ │ ├── memory.h │ │ │ └── serial.h │ │ ├── efiemu.h │ │ ├── floppy.h │ │ ├── freebsd_linker.h │ │ ├── freebsd_reboot.h │ │ ├── gdb.h │ │ ├── ieee1275 │ │ │ ├── ieee1275.h │ │ │ ├── memory.h │ │ │ └── serial.h │ │ ├── io.h │ │ ├── linux.h │ │ ├── macho.h │ │ ├── memory.h │ │ ├── multiboot.h │ │ ├── multiboot │ │ │ ├── boot.h │ │ │ ├── console.h │ │ │ ├── kernel.h │ │ │ ├── memory.h │ │ │ ├── serial.h │ │ │ └── time.h │ │ ├── netbsd_bootinfo.h │ │ ├── netbsd_reboot.h │ │ ├── openbsd_bootarg.h │ │ ├── openbsd_reboot.h │ │ ├── pc │ │ │ ├── apm.h │ │ │ ├── biosdisk.h │ │ │ ├── biosnum.h │ │ │ ├── boot.h │ │ │ ├── chainloader.h │ │ │ ├── console.h │ │ │ ├── int.h │ │ │ ├── kernel.h │ │ │ ├── memory.h │ │ │ ├── pxe.h │ │ │ ├── time.h │ │ │ ├── vbe.h │ │ │ └── vesa_modes_table.h │ │ ├── pci.h │ │ ├── pit.h │ │ ├── qemu │ │ │ ├── boot.h │ │ │ ├── console.h │ │ │ ├── kernel.h │ │ │ ├── memory.h │ │ │ ├── serial.h │ │ │ └── time.h │ │ ├── reboot.h │ │ ├── relocator.h │ │ ├── relocator_private.h │ │ ├── setjmp.h │ │ ├── time.h │ │ ├── tsc.h │ │ ├── types.h │ │ └── xnu.h │ ├── ia64 │ │ ├── efi │ │ │ ├── memory.h │ │ │ └── time.h │ │ ├── kernel.h │ │ ├── reloc.h │ │ ├── setjmp.h │ │ ├── time.h │ │ └── types.h │ ├── icon_manager.h │ ├── ieee1275 │ │ ├── console.h │ │ ├── ieee1275.h │ │ └── ofdisk.h │ ├── kernel.h │ ├── keyboard_layouts.h │ ├── legacy_parse.h │ ├── lib │ │ ├── LzFind.h │ │ ├── LzHash.h │ │ ├── LzmaDec.h │ │ ├── LzmaEnc.h │ │ ├── LzmaTypes.h │ │ ├── arg.h │ │ ├── cmdline.h │ │ ├── crc.h │ │ ├── envblk.h │ │ └── hexdump.h │ ├── libgcc.h │ ├── libpciaccess.h │ ├── libusb.h │ ├── linux.h │ ├── list.h │ ├── loader.h │ ├── lvm.h │ ├── macho.h │ ├── machoload.h │ ├── memory.h │ ├── menu.h │ ├── menu_viewer.h │ ├── mips │ │ ├── arc │ │ │ ├── kernel.h │ │ │ ├── memory.h │ │ │ └── time.h │ │ ├── at_keyboard.h │ │ ├── cache.h │ │ ├── cmos.h │ │ ├── io.h │ │ ├── kernel.h │ │ ├── loongson.h │ │ ├── loongson │ │ │ ├── at_keyboard.h │ │ │ ├── cmos.h │ │ │ ├── ec.h │ │ │ ├── kernel.h │ │ │ ├── memory.h │ │ │ ├── pci.h │ │ │ ├── serial.h │ │ │ └── time.h │ │ ├── memory.h │ │ ├── mips.h │ │ ├── multiboot.h │ │ ├── pci.h │ │ ├── qemu_mips │ │ │ ├── at_keyboard.h │ │ │ ├── cmos.h │ │ │ ├── console.h │ │ │ ├── kernel.h │ │ │ ├── loader.h │ │ │ ├── memory.h │ │ │ ├── serial.h │ │ │ └── time.h │ │ ├── relocator.h │ │ ├── setjmp.h │ │ ├── time.h │ │ └── types.h │ ├── misc.h │ ├── mm.h │ ├── mm_private.h │ ├── msdos_partition.h │ ├── multiboot.h │ ├── multiboot_loader.h │ ├── net.h │ ├── net │ │ ├── arp.h │ │ ├── ethernet.h │ │ ├── ip.h │ │ ├── netbuff.h │ │ ├── tcp.h │ │ └── udp.h │ ├── normal.h │ ├── ns8250.h │ ├── ntfs.h │ ├── offsets.h │ ├── parser.h │ ├── partition.h │ ├── parttool.h │ ├── pci.h │ ├── pciutils.h │ ├── powerpc │ │ ├── ieee1275 │ │ │ └── ieee1275.h │ │ ├── kernel.h │ │ ├── memory.h │ │ ├── relocator.h │ │ ├── setjmp.h │ │ ├── time.h │ │ └── types.h │ ├── priority_queue.h │ ├── procfs.h │ ├── pubkey.h │ ├── reader.h │ ├── reed_solomon.h │ ├── relocator.h │ ├── relocator_private.h │ ├── script_sh.h │ ├── scsi.h │ ├── scsicmd.h │ ├── sdl.h │ ├── search.h │ ├── serial.h │ ├── setjmp.h │ ├── smbus.h │ ├── sparc64 │ │ ├── ieee1275 │ │ │ ├── boot.h │ │ │ ├── ieee1275.h │ │ │ └── kernel.h │ │ ├── setjmp.h │ │ ├── time.h │ │ └── types.h │ ├── speaker.h │ ├── symbol.h │ ├── term.h │ ├── terminfo.h │ ├── test.h │ ├── time.h │ ├── tparm.h │ ├── trig.h │ ├── types.h │ ├── uboot │ │ ├── api_public.h │ │ ├── console.h │ │ ├── disk.h │ │ ├── image.h │ │ └── uboot.h │ ├── unicode.h │ ├── usb.h │ ├── usbdesc.h │ ├── usbserial.h │ ├── usbtrans.h │ ├── util │ │ ├── libnvpair.h │ │ ├── libzfs.h │ │ ├── lvm.h │ │ ├── misc.h │ │ ├── ofpath.h │ │ └── resolve.h │ ├── vga.h │ ├── vgaregs.h │ ├── video.h │ ├── video_fb.h │ ├── x86_64 │ │ ├── at_keyboard.h │ │ ├── efi │ │ │ ├── boot.h │ │ │ ├── loader.h │ │ │ ├── memory.h │ │ │ └── serial.h │ │ ├── io.h │ │ ├── linux.h │ │ ├── macho.h │ │ ├── memory.h │ │ ├── multiboot.h │ │ ├── pci.h │ │ ├── relocator.h │ │ ├── setjmp.h │ │ ├── time.h │ │ ├── types.h │ │ └── xnu.h │ ├── xnu.h │ └── zfs │ │ ├── dmu.h │ │ ├── dmu_objset.h │ │ ├── dnode.h │ │ ├── dsl_dataset.h │ │ ├── dsl_dir.h │ │ ├── sa_impl.h │ │ ├── spa.h │ │ ├── uberblock_impl.h │ │ ├── vdev_impl.h │ │ ├── zap_impl.h │ │ ├── zap_leaf.h │ │ ├── zfs.h │ │ ├── zfs_acl.h │ │ ├── zfs_znode.h │ │ ├── zil.h │ │ ├── zio.h │ │ └── zio_checksum.h ├── multiboot.h └── multiboot2.h ├── linguas.sh ├── m4 ├── 00gnulib.m4 ├── alloca.m4 ├── argp.m4 ├── btowc.m4 ├── codeset.m4 ├── configmake.m4 ├── dirname.m4 ├── double-slash-root.m4 ├── eealloc.m4 ├── errno_h.m4 ├── error.m4 ├── exponentd.m4 ├── extensions.m4 ├── extern-inline.m4 ├── fcntl-o.m4 ├── float_h.m4 ├── fnmatch.m4 ├── getdelim.m4 ├── getline.m4 ├── getopt.m4 ├── gettext.m4 ├── glibc2.m4 ├── glibc21.m4 ├── gnulib-cache.m4 ├── gnulib-common.m4 ├── gnulib-comp.m4 ├── gnulib-tool.m4 ├── iconv.m4 ├── include_next.m4 ├── intdiv0.m4 ├── intl.m4 ├── intldir.m4 ├── intlmacosx.m4 ├── intmax.m4 ├── intmax_t.m4 ├── inttypes-pri.m4 ├── inttypes_h.m4 ├── langinfo_h.m4 ├── lcmessage.m4 ├── lib-ld.m4 ├── lib-link.m4 ├── lib-prefix.m4 ├── libunistring-base.m4 ├── localcharset.m4 ├── locale-fr.m4 ├── locale-ja.m4 ├── locale-zh.m4 ├── locale_h.m4 ├── localeconv.m4 ├── lock.m4 ├── longlong.m4 ├── malloc.m4 ├── math_h.m4 ├── mbrtowc.m4 ├── mbsinit.m4 ├── mbsrtowcs.m4 ├── mbstate_t.m4 ├── mbswidth.m4 ├── mbtowc.m4 ├── memchr.m4 ├── mempcpy.m4 ├── mmap-anon.m4 ├── msvc-inval.m4 ├── msvc-nothrow.m4 ├── multiarch.m4 ├── nl_langinfo.m4 ├── nls.m4 ├── nocrash.m4 ├── off_t.m4 ├── po.m4 ├── printf-posix.m4 ├── printf.m4 ├── progtest.m4 ├── rawmemchr.m4 ├── realloc.m4 ├── regex.m4 ├── size_max.m4 ├── sleep.m4 ├── ssize_t.m4 ├── stdalign.m4 ├── stdbool.m4 ├── stddef_h.m4 ├── stdint.m4 ├── stdint_h.m4 ├── stdio_h.m4 ├── stdlib_h.m4 ├── strcase.m4 ├── strchrnul.m4 ├── strerror.m4 ├── string_h.m4 ├── strings_h.m4 ├── strndup.m4 ├── strnlen.m4 ├── sys_socket_h.m4 ├── sys_types_h.m4 ├── sysexits.m4 ├── threadlib.m4 ├── uintmax_t.m4 ├── unistd_h.m4 ├── vasnprintf.m4 ├── visibility.m4 ├── vsnprintf.m4 ├── warn-on-use.m4 ├── wchar_h.m4 ├── wchar_t.m4 ├── wcrtomb.m4 ├── wctype_h.m4 ├── wcwidth.m4 ├── wint_t.m4 └── xsize.m4 ├── po ├── Makefile.in.in ├── Makevars ├── README ├── Rules-piglatin ├── Rules-quot ├── Rules-swiss ├── Rules-translit ├── arabic.sed ├── boldquot.sed ├── cyrillic.sed ├── en@boldquot.header ├── en@piglatin.header ├── en@quot.header ├── exclude.pot ├── greek.sed ├── grub.d.sed ├── hebrew.sed ├── insert-header.sin ├── piglatin.sed ├── quot.sed ├── remove-potcdate.sin └── swiss.sed ├── tests ├── ahci_test.in ├── cdboot_test.in ├── cmp_unit_test.c ├── core_compress_test.in ├── dfly-mbr-mbexample.dfly.img.gz ├── dfly-mbr-mbexample.mbr.img.gz ├── ehci_test.in ├── example_grub_script_test.in ├── example_scripted_test.in ├── example_unit_test.c ├── fddboot_test.in ├── gettext_strings_test.in ├── grub_cmd_date.in ├── grub_cmd_echo.in ├── grub_cmd_regexp.in ├── grub_cmd_set_date.in ├── grub_cmd_sleep.in ├── grub_func_test.in ├── grub_script_blanklines.in ├── grub_script_blockarg.in ├── grub_script_break.in ├── grub_script_comments.in ├── grub_script_continue.in ├── grub_script_dollar.in ├── grub_script_echo1.in ├── grub_script_echo_keywords.in ├── grub_script_escape_comma.in ├── grub_script_eval.in ├── grub_script_expansion.in ├── grub_script_final_semicolon.in ├── grub_script_for1.in ├── grub_script_functions.in ├── grub_script_gettext.in ├── grub_script_if.in ├── grub_script_leading_whitespace.in ├── grub_script_no_commands.in ├── grub_script_not.in ├── grub_script_return.in ├── grub_script_setparams.in ├── grub_script_shift.in ├── grub_script_strcmp.in ├── grub_script_test.in ├── grub_script_vars1.in ├── grub_script_while1.in ├── gzcompress_test.in ├── hddboot_test.in ├── help_test.in ├── lib │ └── unit_test.c ├── lzocompress_test.in ├── netboot_test.in ├── ohci_test.in ├── partmap_test.in ├── pata_test.in ├── printf_unit_test.c ├── priority_queue_unit_test.cc ├── pseries_test.in ├── uhci_test.in ├── util │ ├── grub-shell-tester.in │ └── grub-shell.in └── xzcompress_test.in ├── themes └── starfield │ ├── COPYING.CC-BY-SA-3.0 │ ├── README │ ├── blob_w.png │ ├── boot_menu_c.png │ ├── boot_menu_e.png │ ├── boot_menu_n.png │ ├── boot_menu_ne.png │ ├── boot_menu_nw.png │ ├── boot_menu_s.png │ ├── boot_menu_se.png │ ├── boot_menu_sw.png │ ├── boot_menu_w.png │ ├── slider_c.png │ ├── slider_n.png │ ├── slider_s.png │ ├── src │ ├── blob_nw.xcf │ ├── bootmenu │ │ ├── center.xcf │ │ ├── corner.xcf │ │ └── side.xcf │ ├── slider_c.xcf │ ├── slider_n.xcf │ ├── slider_s.xcf │ └── terminalbox │ │ ├── center.xcf │ │ ├── corner.xcf │ │ └── side.xcf │ ├── starfield.png │ ├── terminal_box_c.png │ ├── terminal_box_e.png │ ├── terminal_box_n.png │ ├── terminal_box_ne.png │ ├── terminal_box_nw.png │ ├── terminal_box_s.png │ ├── terminal_box_se.png │ ├── terminal_box_sw.png │ ├── terminal_box_w.png │ └── theme.txt ├── unicode ├── ArabicShaping.txt ├── BidiMirroring.txt ├── COPYING └── UnicodeData.txt └── util ├── bash-completion.d ├── Makefile.am └── grub-completion.bash.in ├── bin2h.c ├── getroot.c ├── grub-editenv.c ├── grub-fstest.c ├── grub-gen-asciih.c ├── grub-gen-widthspec.c ├── grub-glue-efi.c ├── grub-install.in ├── grub-install_header ├── grub-kbdcomp.in ├── grub-macho2img.c ├── grub-menulst2cfg.c ├── grub-mkconfig.in ├── grub-mkconfig_lib.in ├── grub-mkfont.c ├── grub-mkimage.c ├── grub-mkimagexx.c ├── grub-mklayout.c ├── grub-mknetdir.in ├── grub-mkpasswd-pbkdf2.c ├── grub-mkrelpath.c ├── grub-mkrescue.in ├── grub-mkstandalone.in ├── grub-mount.c ├── grub-pe2elf.c ├── grub-probe.c ├── grub-reboot.in ├── grub-render-label.c ├── grub-script-check.c ├── grub-set-default.in ├── grub-setup.c ├── grub.d ├── 00_header.in ├── 10_hurd.in ├── 10_illumos.in ├── 10_kfreebsd.in ├── 10_linux.in ├── 10_netbsd.in ├── 10_windows.in ├── 10_xnu.in ├── 20_linux_xen.in ├── 30_os-prober.in ├── 40_custom.in ├── 41_custom.in └── README ├── i386 └── efi │ └── grub-dumpdevtree ├── ieee1275 ├── grub-ofpathname.c └── ofpath.c ├── import_gcry.py ├── import_gcrypth.sed ├── import_unicode.py ├── lvm.c ├── misc.c ├── raid.c ├── resolve.c └── spkmodem-recv.c /AUTHORS: -------------------------------------------------------------------------------- 1 | The following authors assigned copyright on their work to the Free 2 | Software Foundation: 3 | 4 | Yoshinori K. Okuji designed and implemented the initial version. 5 | 6 | Jeroen Dekkers added initrd support, Multiboot support, and fixed bugs 7 | in ext2fs. 8 | 9 | Marco Gerards added ext2fs support, grub-emu, a new command-line 10 | engine, and fixed many bugs. 11 | 12 | Omniflux added terminfo and serial support. 13 | 14 | Vincent Pelletier added Sparc64 support. 15 | 16 | Hollis Blanchard implemented many parts of PowerPC support. 17 | 18 | Tomas Ebenlendr added the command chainloader into the normal mode, 19 | fixed some bugs. 20 | 21 | Guillem Jover merged architecture-independent ELF support code. 22 | 23 | Vesa Jaaskelainen added VBE support. 24 | -------------------------------------------------------------------------------- /BUGS: -------------------------------------------------------------------------------- 1 | GRUB team is aware of following problems: 2 | - Currently search and assembling multidevice abstractions scans 3 | all the devices which can be slow. 4 | - Cache isn't used correctly for video which results in slowness. 5 | 6 | While these are bugs their solution has a potential of breaking more and more 7 | seriously. So it was decided for 1.99 that they aren't fixed. 8 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | This is GRUB 2, the second version of the GRand Unified Bootloader. 2 | GRUB 2 is rewritten from scratch to make GNU GRUB cleaner, safer, more 3 | robust, more powerful, and more portable. 4 | 5 | See the file NEWS for a description of recent changes to GRUB 2. 6 | 7 | See the file INSTALL for instructions on how to build and install the 8 | GRUB 2 data and program files. 9 | 10 | Please visit the official web page of GRUB 2, for more information. 11 | The URL is . 12 | 13 | More extensive documentation is available in the Info manual, 14 | accessible using 'info grub' after building and installing GRUB 2. 15 | Please look at the GRUB Wiki for testing 16 | procedures. 17 | 18 | There are a number of important user-visible differences from the 19 | first version of GRUB, now known as GRUB Legacy. For a summary, please 20 | see: 21 | 22 | info grub Introduction 'Changes from GRUB Legacy' 23 | -------------------------------------------------------------------------------- /TODO: -------------------------------------------------------------------------------- 1 | 2 | Before working on improving GRUB, it's very important that you 3 | make contact with the core GRUB developers. Things herein might be 4 | slightly out of date or otherwise not easy to understand at first 5 | glance. So write to first. 6 | 7 | For bug tracking, refer to: 8 | 9 | http://savannah.gnu.org/bugs/?group=grub 10 | 11 | Our wiki also lists some areas that need work: 12 | 13 | http://grub.enbug.org/ 14 | -------------------------------------------------------------------------------- /build-aux/snippet/_Noreturn.h: -------------------------------------------------------------------------------- 1 | #if !defined _Noreturn && __STDC_VERSION__ < 201112 2 | # if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \ 3 | || 0x5110 <= __SUNPRO_C) 4 | # define _Noreturn __attribute__ ((__noreturn__)) 5 | # elif 1200 <= _MSC_VER 6 | # define _Noreturn __declspec (noreturn) 7 | # else 8 | # define _Noreturn 9 | # endif 10 | #endif 11 | -------------------------------------------------------------------------------- /conf/i386-pc-cygwin-img-ld.sc: -------------------------------------------------------------------------------- 1 | /* Linker script to create grub .img files on Cygwin. */ 2 | 3 | SECTIONS 4 | { 5 | .text : 6 | { 7 | start = . ; 8 | *(.text) 9 | etext = . ; 10 | } 11 | .data : 12 | { 13 | __data_start__ = . ; 14 | *(.data) 15 | __data_end__ = . ; 16 | __rdata_start__ = . ; 17 | *(.rdata) 18 | __rdata_end__ = . ; 19 | *(.pdata) 20 | edata = . ; 21 | _edata = . ; 22 | __edata = . ; 23 | } 24 | .bss : 25 | { 26 | __bss_start__ = . ; 27 | *(.bss) 28 | __common_start__ = . ; 29 | *(COMMON) 30 | __bss_end__ = . ; 31 | } 32 | .edata : 33 | { 34 | *(.edata) 35 | end = . ; 36 | } 37 | .stab : 38 | { 39 | *(.stab) 40 | } 41 | .stabstr : 42 | { 43 | *(.stabstr) 44 | } 45 | } 46 | 47 | ASSERT("__rdata_end__"=="edata", ".pdata not empty") 48 | ASSERT("__bss_end__" =="end" , ".edata not empty") 49 | 50 | -------------------------------------------------------------------------------- /docs/Makefile.am: -------------------------------------------------------------------------------- 1 | AUTOMAKE_OPTIONS = subdir-objects 2 | 3 | # AM_MAKEINFOFLAGS = --no-split --no-validate 4 | info_TEXINFOS = grub.texi grub-dev.texi 5 | grub_TEXINFOS = fdl.texi 6 | 7 | EXTRA_DIST = font_char_metrics.png font_char_metrics.txt 8 | 9 | 10 | -------------------------------------------------------------------------------- /docs/font_char_metrics.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/docs/font_char_metrics.png -------------------------------------------------------------------------------- /docs/font_char_metrics.txt: -------------------------------------------------------------------------------- 1 | Please fill this in. 2 | -------------------------------------------------------------------------------- /docs/man/grub-bios-setup.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-bios-setup \- set up a device to boot using GRUB 3 | [SEE ALSO] 4 | .BR grub-install (8), 5 | .BR grub-mkimage (1), 6 | .BR grub-mkrescue (1) 7 | -------------------------------------------------------------------------------- /docs/man/grub-editenv.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-editenv \- edit GRUB environment block 3 | [SEE ALSO] 4 | .BR grub-reboot (8), 5 | .BR grub-set-default (8) 6 | -------------------------------------------------------------------------------- /docs/man/grub-emu.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-emu \- GRUB emulator 3 | [SEE ALSO] 4 | If you are trying to install GRUB, then you should use 5 | .BR grub-install (8) 6 | rather than this program. 7 | -------------------------------------------------------------------------------- /docs/man/grub-fstest.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-fstest \- debug tool for GRUB filesystem drivers 3 | [SEE ALSO] 4 | .BR grub-probe (8) 5 | -------------------------------------------------------------------------------- /docs/man/grub-glue-efi.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-glue-efi \- generate a fat binary for EFI 3 | [DESCRIPTION] 4 | grub-glue-efi processes ia32 and amd64 EFI images and glues them according to Apple format. 5 | -------------------------------------------------------------------------------- /docs/man/grub-install.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-install \- install GRUB to a device 3 | [SEE ALSO] 4 | .BR grub-mkconfig (8), 5 | .BR grub-mkimage (1), 6 | .BR grub-mkrescue (1) 7 | -------------------------------------------------------------------------------- /docs/man/grub-kbdcomp.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-kbdcomp \- generate a GRUB keyboard layout file 3 | [DESCRIPTION] 4 | grub-kbdcomp processes a X keyboard layout description in 5 | .BR keymaps (5) 6 | format into a format that can be used by GRUB's 7 | .B keymap 8 | command. 9 | [SEE ALSO] 10 | .BR grub-mklayout (8) 11 | -------------------------------------------------------------------------------- /docs/man/grub-macho2img.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-macho2img \- convert Mach-O to raw image 3 | [SEE ALSO] 4 | .BR grub-mkimage (1) 5 | -------------------------------------------------------------------------------- /docs/man/grub-menulst2cfg.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-menulst2cfg \- transform legacy menu.lst into grub.cfg 3 | [SEE ALSO] 4 | .BR grub-mkconfig (8) 5 | -------------------------------------------------------------------------------- /docs/man/grub-mkconfig.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mkconfig \- generate a GRUB configuration file 3 | [SEE ALSO] 4 | .BR grub-install (8) 5 | -------------------------------------------------------------------------------- /docs/man/grub-mkfont.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mkfont \- make GRUB font files 3 | [SEE ALSO] 4 | .BR grub-mkconfig (8) 5 | -------------------------------------------------------------------------------- /docs/man/grub-mkimage.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mkimage \- make a bootable image of GRUB 3 | [SEE ALSO] 4 | .BR grub-install (8), 5 | .BR grub-mkrescue (1), 6 | .BR grub-mknetdir (8) 7 | -------------------------------------------------------------------------------- /docs/man/grub-mklayout.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mklayout \- generate a GRUB keyboard layout file 3 | [DESCRIPTION] 4 | grub-mklayout processes a keyboard layout description in 5 | .BR keymaps (5) 6 | format into a format that can be used by GRUB's 7 | .B keymap 8 | command. 9 | [SEE ALSO] 10 | .BR grub-mkconfig (8) 11 | -------------------------------------------------------------------------------- /docs/man/grub-mknetdir.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mknetdir \- prepare a GRUB netboot directory. 3 | [SEE ALSO] 4 | .BR grub-mkimage (1) 5 | -------------------------------------------------------------------------------- /docs/man/grub-mkpasswd-pbkdf2.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mkpasswd-pbkdf2 \- generate hashed password for GRUB 3 | [SEE ALSO] 4 | .BR grub-mkconfig (8) 5 | -------------------------------------------------------------------------------- /docs/man/grub-mkrelpath.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mkrelpath \- make a system path relative to its root 3 | [SEE ALSO] 4 | .BR grub-probe (8) 5 | -------------------------------------------------------------------------------- /docs/man/grub-mkrescue.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mkrescue \- make a GRUB rescue image 3 | [SEE ALSO] 4 | .BR grub-mkimage (1) 5 | -------------------------------------------------------------------------------- /docs/man/grub-mkstandalone.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mkstandalone \- make a memdisk-based GRUB image 3 | [SEE ALSO] 4 | .BR grub-mkimage (1) 5 | -------------------------------------------------------------------------------- /docs/man/grub-mount.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-mount \- export GRUB filesystem with FUSE 3 | -------------------------------------------------------------------------------- /docs/man/grub-ofpathname.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-ofpathname \- find OpenBOOT path for a device 3 | [SEE ALSO] 4 | .BR grub-probe (8) 5 | -------------------------------------------------------------------------------- /docs/man/grub-pe2elf.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-pe2elf \- convert PE image to ELF 3 | [SEE ALSO] 4 | .BR grub-mkimage (1) 5 | -------------------------------------------------------------------------------- /docs/man/grub-probe.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-probe \- probe device information for GRUB 3 | [SEE ALSO] 4 | .BR grub-fstest (1) 5 | -------------------------------------------------------------------------------- /docs/man/grub-reboot.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-reboot \- set the default boot entry for GRUB, for the next boot only 3 | [SEE ALSO] 4 | .BR grub-set-default (8), 5 | .BR grub-editenv (1) 6 | -------------------------------------------------------------------------------- /docs/man/grub-render-label.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-render-label \- generate a .disk_label for Apple Macs. 3 | 4 | -------------------------------------------------------------------------------- /docs/man/grub-script-check.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-script-check \- check grub.cfg for syntax errors 3 | [SEE ALSO] 4 | .BR grub-mkconfig (8) 5 | -------------------------------------------------------------------------------- /docs/man/grub-set-default.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-set-default \- set the saved default boot entry for GRUB 3 | [SEE ALSO] 4 | .BR grub-reboot (8), 5 | .BR grub-editenv (1) 6 | -------------------------------------------------------------------------------- /docs/man/grub-sparc64-setup.h2m: -------------------------------------------------------------------------------- 1 | [NAME] 2 | grub-sparc64-setup \- set up a device to boot using GRUB 3 | [SEE ALSO] 4 | .BR grub-install (8), 5 | .BR grub-mkimage (1), 6 | .BR grub-mkrescue (1) 7 | -------------------------------------------------------------------------------- /grub-core/boot/mips/loongson/fuloong2f.S: -------------------------------------------------------------------------------- 1 | #define FULOONG2F 1 2 | #include "fwstart.S" 3 | -------------------------------------------------------------------------------- /grub-core/commands/search_file.c: -------------------------------------------------------------------------------- 1 | #define DO_SEARCH_FILE 1 2 | #define FUNC_NAME grub_search_fs_file 3 | #define COMMAND_NAME "search.file" 4 | #define HELP_MESSAGE N_("Search devices by file. If VARIABLE is specified, the first device found is set to a variable.") 5 | #include "search.c" 6 | -------------------------------------------------------------------------------- /grub-core/commands/search_label.c: -------------------------------------------------------------------------------- 1 | #define DO_SEARCH_FS_LABEL 1 2 | #define FUNC_NAME grub_search_label 3 | #define COMMAND_NAME "search.fs_label" 4 | #define HELP_MESSAGE N_("Search devices by label. If VARIABLE is specified, the first device found is set to a variable.") 5 | #include "search.c" 6 | -------------------------------------------------------------------------------- /grub-core/commands/search_uuid.c: -------------------------------------------------------------------------------- 1 | #define DO_SEARCH_FS_UUID 1 2 | #define FUNC_NAME grub_search_fs_uuid 3 | #define COMMAND_NAME "search.fs_uuid" 4 | #define HELP_MESSAGE N_("Search devices by UUID. If VARIABLE is specified, the first device found is set to a variable.") 5 | #include "search.c" 6 | -------------------------------------------------------------------------------- /grub-core/disk/mdraid_linux_be.c: -------------------------------------------------------------------------------- 1 | #define MODE_BIGENDIAN 1 2 | #include "mdraid_linux.c" 3 | -------------------------------------------------------------------------------- /grub-core/efiemu/i386/nocfgtables.c: -------------------------------------------------------------------------------- 1 | /* Register SMBIOS and ACPI tables. */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2009 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | 26 | grub_err_t 27 | grub_machine_efiemu_init_tables (void) 28 | { 29 | return GRUB_ERR_NONE; 30 | } 31 | -------------------------------------------------------------------------------- /grub-core/efiemu/loadcore32.c: -------------------------------------------------------------------------------- 1 | /* This file contains definitions so that loadcore.c compiles for 32-bit */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2009 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #define SUFFIX(x) x ## 32 21 | #define GRUB_TARGET_WORDSIZE 32 22 | #include "loadcore.c" 23 | -------------------------------------------------------------------------------- /grub-core/efiemu/loadcore64.c: -------------------------------------------------------------------------------- 1 | /* This file contains definitions so that loadcore.c compiles for 64-bit */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2009 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #define SUFFIX(x) x ## 64 21 | #define GRUB_TARGET_WORDSIZE 64 22 | #include "loadcore.c" 23 | -------------------------------------------------------------------------------- /grub-core/efiemu/prepare32.c: -------------------------------------------------------------------------------- 1 | /* This file contains definitions so that prepare.c compiles for 32-bit */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2009 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #define SUFFIX(x) x ## 32 21 | 22 | #include "prepare.c" 23 | -------------------------------------------------------------------------------- /grub-core/efiemu/prepare64.c: -------------------------------------------------------------------------------- 1 | /* This file contains definitions so that prepare.c compiles for 64-bit */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2009 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #define SUFFIX(x) x ## 64 21 | 22 | #include "prepare.c" 23 | -------------------------------------------------------------------------------- /grub-core/fs/afs.c: -------------------------------------------------------------------------------- 1 | #define MODE_AFS 1 2 | #include "bfs.c" 3 | 4 | -------------------------------------------------------------------------------- /grub-core/fs/exfat.c: -------------------------------------------------------------------------------- 1 | #define MODE_EXFAT 1 2 | #include "fat.c" 3 | -------------------------------------------------------------------------------- /grub-core/fs/minix2.c: -------------------------------------------------------------------------------- 1 | #define MODE_MINIX2 1 2 | #include "minix.c" 3 | -------------------------------------------------------------------------------- /grub-core/fs/minix2_be.c: -------------------------------------------------------------------------------- 1 | #define MODE_MINIX2 1 2 | #define MODE_BIGENDIAN 1 3 | #include "minix.c" 4 | -------------------------------------------------------------------------------- /grub-core/fs/minix3.c: -------------------------------------------------------------------------------- 1 | #define MODE_MINIX3 1 2 | #include "minix.c" 3 | -------------------------------------------------------------------------------- /grub-core/fs/minix3_be.c: -------------------------------------------------------------------------------- 1 | #define MODE_MINIX3 1 2 | #define MODE_BIGENDIAN 1 3 | #include "minix.c" 4 | -------------------------------------------------------------------------------- /grub-core/fs/minix_be.c: -------------------------------------------------------------------------------- 1 | #define MODE_BIGENDIAN 1 2 | #include "minix.c" 3 | -------------------------------------------------------------------------------- /grub-core/fs/ufs2.c: -------------------------------------------------------------------------------- 1 | /* ufs2.c - Unix File System 2 */ 2 | #define MODE_UFS2 1 3 | #include "ufs.c" 4 | -------------------------------------------------------------------------------- /grub-core/fs/ufs_be.c: -------------------------------------------------------------------------------- 1 | #define MODE_BIGENDIAN 1 2 | #include "ufs.c" 3 | -------------------------------------------------------------------------------- /grub-core/gfxmenu/model.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/grub-core/gfxmenu/model.c -------------------------------------------------------------------------------- /grub-core/gmodule.pl.in: -------------------------------------------------------------------------------- 1 | ### 2 | ### Generate GDB commands, that load symbols for specified module, 3 | ### with proper section relocations. See .gdbinit 4 | ### 5 | ### $Id: gmodule.pl,v 1.2 2006/05/14 11:38:42 lkundrak Exp lkundrak $ 6 | ### Lubomir Kundrak 7 | ### 8 | 9 | use strict; 10 | 11 | while (<>) { 12 | my ($name, %sections) = split; 13 | 14 | print "add-symbol-file $name.module"; 15 | 16 | open (READELF, "readelf -S $name.mod |") or die; 17 | while () { 18 | /\[\s*(\d+)\]\s+(\.\S+)/ or next; 19 | 20 | if ($2 eq '.text') { 21 | print " $sections{$1}"; 22 | next; 23 | } 24 | 25 | print " -s $2 $sections{$1}" 26 | if ($sections{$1} ne '0x0'); 27 | }; 28 | close (READELF); 29 | print "\n"; 30 | } 31 | -------------------------------------------------------------------------------- /grub-core/gnulib-fix-null-deref.diff: -------------------------------------------------------------------------------- 1 | === modified file 'grub-core/gnulib/argp-parse.c' 2 | --- grub-core/gnulib/argp-parse.c 2010-04-02 22:45:01 +0000 3 | +++ grub-core/gnulib/argp-parse.c 2011-04-10 13:25:52 +0000 4 | @@ -935,7 +935,7 @@ 5 | void * 6 | __argp_input (const struct argp *argp, const struct argp_state *state) 7 | { 8 | - if (state) 9 | + if (state && state->pstate) 10 | { 11 | struct group *group; 12 | struct parser *parser = state->pstate; 13 | 14 | -------------------------------------------------------------------------------- /grub-core/gnulib-no-abort.diff: -------------------------------------------------------------------------------- 1 | === modified file 'grub-core/gnulib/regcomp.c' 2 | --- grub-core/gnulib/regcomp.c 2010-09-20 10:35:33 +0000 3 | +++ grub-core/gnulib/regcomp.c 2012-03-10 11:31:42 +0000 4 | @@ -549,13 +549,9 @@ regerror (int errcode, const regex_t *_R 5 | if (BE (errcode < 0 6 | || errcode >= (int) (sizeof (__re_error_msgid_idx) 7 | / sizeof (__re_error_msgid_idx[0])), 0)) 8 | - /* Only error codes returned by the rest of the code should be passed 9 | - to this routine. If we are given anything else, or if other regex 10 | - code generates an invalid error code, then the program has a bug. 11 | - Dump core so we can fix it. */ 12 | - abort (); 13 | - 14 | - msg = gettext (__re_error_msgid + __re_error_msgid_idx[errcode]); 15 | + msg = gettext ("unknown regexp error"); 16 | + else 17 | + msg = gettext (__re_error_msgid + __re_error_msgid_idx[errcode]); 18 | 19 | msg_size = strlen (msg) + 1; /* Includes the null. */ 20 | 21 | @@ -1119,7 +1119,7 @@ 22 | } 23 | break; 24 | default: 25 | - abort (); 26 | + break; 27 | } 28 | 29 | if (mb_chars || has_period) 30 | 31 | -------------------------------------------------------------------------------- /grub-core/gnulib-no-gets.diff: -------------------------------------------------------------------------------- 1 | --- /tmp/x.diff 2013-04-11 16:51:42.777873536 +0200 2 | +++ grub-core/gnulib/stdio.in.h 2013-04-11 16:51:49.917873298 +0200 3 | @@ -700,7 +700,6 @@ 4 | removed it. */ 5 | #undef gets 6 | #if HAVE_RAW_DECL_GETS 7 | -_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); 8 | #endif 9 | 10 | 11 | -------------------------------------------------------------------------------- /grub-core/gnulib/argp-pin.c: -------------------------------------------------------------------------------- 1 | /* Full and short program names for argp module 2 | Copyright (C) 2005, 2009-2013 Free Software Foundation, Inc. 3 | 4 | This program is free software: you can redistribute it and/or modify 5 | it under the terms of the GNU General Public License as published by 6 | the Free Software Foundation; either version 3 of the License, or 7 | (at your option) any later version. 8 | 9 | This program is distributed in the hope that it will be useful, 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | GNU General Public License for more details. 13 | 14 | You should have received a copy of the GNU General Public License 15 | along with this program. If not, see . */ 16 | 17 | #ifdef HAVE_CONFIG_H 18 | # include 19 | #endif 20 | 21 | #ifndef HAVE_PROGRAM_INVOCATION_SHORT_NAME 22 | char *program_invocation_short_name = 0; 23 | #endif 24 | #ifndef HAVE_PROGRAM_INVOCATION_NAME 25 | char *program_invocation_name = 0; 26 | #endif 27 | -------------------------------------------------------------------------------- /grub-core/gnulib/getline.c: -------------------------------------------------------------------------------- 1 | /* getline.c --- Implementation of replacement getline function. 2 | Copyright (C) 2005-2007, 2009-2013 Free Software Foundation, Inc. 3 | 4 | This program is free software; you can redistribute it and/or 5 | modify it under the terms of the GNU General Public License as 6 | published by the Free Software Foundation; either version 3, or (at 7 | your option) any later version. 8 | 9 | This program is distributed in the hope that it will be useful, but 10 | WITHOUT ANY WARRANTY; without even the implied warranty of 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 | General Public License for more details. 13 | 14 | You should have received a copy of the GNU General Public License 15 | along with this program; if not, see . */ 16 | 17 | /* Written by Simon Josefsson. */ 18 | 19 | #include 20 | 21 | #include 22 | 23 | ssize_t 24 | getline (char **lineptr, size_t *n, FILE *stream) 25 | { 26 | return getdelim (lineptr, n, '\n', stream); 27 | } 28 | -------------------------------------------------------------------------------- /grub-core/gnulib/itold.c: -------------------------------------------------------------------------------- 1 | /* Replacement for 'int' to 'long double' conversion routine. 2 | Copyright (C) 2011-2013 Free Software Foundation, Inc. 3 | Written by Bruno Haible , 2011. 4 | 5 | This program is free software: you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation; either version 3 of the License, or 8 | (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with this program. If not, see . */ 17 | 18 | #include 19 | 20 | /* Specification. */ 21 | #include 22 | 23 | void 24 | _Qp_itoq (long double *result, int a) 25 | { 26 | /* Convert from 'int' to 'double', then from 'double' to 'long double'. */ 27 | *result = (double) a; 28 | } 29 | -------------------------------------------------------------------------------- /grub-core/gnulib/mbsrtowcs.c: -------------------------------------------------------------------------------- 1 | /* Convert string to wide string. 2 | Copyright (C) 2008-2013 Free Software Foundation, Inc. 3 | Written by Bruno Haible , 2008. 4 | 5 | This program is free software: you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation; either version 3 of the License, or 8 | (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with this program. If not, see . */ 17 | 18 | #include 19 | 20 | /* Specification. */ 21 | #include 22 | 23 | #include 24 | #include 25 | #include 26 | 27 | #include "strnlen1.h" 28 | 29 | 30 | extern mbstate_t _gl_mbsrtowcs_state; 31 | 32 | #include "mbsrtowcs-impl.h" 33 | -------------------------------------------------------------------------------- /grub-core/gnulib/mbtowc.c: -------------------------------------------------------------------------------- 1 | /* Convert multibyte character to wide character. 2 | Copyright (C) 2011-2013 Free Software Foundation, Inc. 3 | Written by Bruno Haible , 2011. 4 | 5 | This program is free software: you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation; either version 3 of the License, or 8 | (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with this program. If not, see . */ 17 | 18 | #include 19 | 20 | #include 21 | 22 | #include 23 | #include 24 | #include 25 | 26 | #include "mbtowc-impl.h" 27 | -------------------------------------------------------------------------------- /grub-core/gnulib/memchr.valgrind: -------------------------------------------------------------------------------- 1 | # Suppress a valgrind message about use of uninitialized memory in memchr(). 2 | # POSIX states that when the character is found, memchr must not read extra 3 | # bytes in an overestimated length (for example, where memchr is used to 4 | # implement strnlen). However, we use a safe word read to provide a speedup. 5 | { 6 | memchr-value4 7 | Memcheck:Value4 8 | fun:rpl_memchr 9 | } 10 | { 11 | memchr-value8 12 | Memcheck:Value8 13 | fun:rpl_memchr 14 | } 15 | -------------------------------------------------------------------------------- /grub-core/gnulib/mempcpy.c: -------------------------------------------------------------------------------- 1 | /* Copy memory area and return pointer after last written byte. 2 | Copyright (C) 2003, 2007, 2009-2013 Free Software Foundation, Inc. 3 | 4 | This program is free software; you can redistribute it and/or modify 5 | it under the terms of the GNU General Public License as published by 6 | the Free Software Foundation; either version 3, or (at your option) 7 | any later version. 8 | 9 | This program is distributed in the hope that it will be useful, 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | GNU General Public License for more details. 13 | 14 | You should have received a copy of the GNU General Public License 15 | along with this program; if not, see . */ 16 | 17 | #include 18 | 19 | /* Specification. */ 20 | #include 21 | 22 | /* Copy N bytes of SRC to DEST, return pointer to bytes after the 23 | last written byte. */ 24 | void * 25 | mempcpy (void *dest, const void *src, size_t n) 26 | { 27 | return (char *) memcpy (dest, src, n) + n; 28 | } 29 | -------------------------------------------------------------------------------- /grub-core/gnulib/rawmemchr.valgrind: -------------------------------------------------------------------------------- 1 | # Suppress a valgrind message about use of uninitialized memory in rawmemchr(). 2 | # This use is OK because it provides only a speedup. 3 | { 4 | rawmemchr-value4 5 | Memcheck:Value4 6 | fun:rawmemchr 7 | } 8 | { 9 | rawmemchr-value8 10 | Memcheck:Value8 11 | fun:rawmemchr 12 | } 13 | -------------------------------------------------------------------------------- /grub-core/gnulib/ref-add.sin: -------------------------------------------------------------------------------- 1 | # Add this package to a list of references stored in a text file. 2 | # 3 | # Copyright (C) 2000, 2009-2013 Free Software Foundation, Inc. 4 | # 5 | # This program is free software; you can redistribute it and/or modify 6 | # it under the terms of the GNU General Public License as published by 7 | # the Free Software Foundation; either version 3, or (at your option) 8 | # any later version. 9 | # 10 | # This program is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU General Public License along 16 | # with this program; if not, see . 17 | # 18 | # Written by Bruno Haible . 19 | # 20 | /^# Packages using this file: / { 21 | s/# Packages using this file:// 22 | ta 23 | :a 24 | s/ @PACKAGE@ / @PACKAGE@ / 25 | tb 26 | s/ $/ @PACKAGE@ / 27 | :b 28 | s/^/# Packages using this file:/ 29 | } 30 | -------------------------------------------------------------------------------- /grub-core/gnulib/ref-del.sin: -------------------------------------------------------------------------------- 1 | # Remove this package from a list of references stored in a text file. 2 | # 3 | # Copyright (C) 2000, 2009-2013 Free Software Foundation, Inc. 4 | # 5 | # This program is free software; you can redistribute it and/or modify 6 | # it under the terms of the GNU General Public License as published by 7 | # the Free Software Foundation; either version 3, or (at your option) 8 | # any later version. 9 | # 10 | # This program is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU General Public License along 16 | # with this program; if not, see . 17 | # 18 | # Written by Bruno Haible . 19 | # 20 | /^# Packages using this file: / { 21 | s/# Packages using this file:// 22 | s/ @PACKAGE@ / / 23 | s/^/# Packages using this file:/ 24 | } 25 | -------------------------------------------------------------------------------- /grub-core/gnulib/strchrnul.valgrind: -------------------------------------------------------------------------------- 1 | # Suppress a valgrind message about use of uninitialized memory in strchrnul(). 2 | # This use is OK because it provides only a speedup. 3 | { 4 | strchrnul-value4 5 | Memcheck:Value4 6 | fun:strchrnul 7 | } 8 | { 9 | strchrnul-value8 10 | Memcheck:Value8 11 | fun:strchrnul 12 | } 13 | -------------------------------------------------------------------------------- /grub-core/gnulib/unistd.c: -------------------------------------------------------------------------------- 1 | #include 2 | #define _GL_UNISTD_INLINE _GL_EXTERN_INLINE 3 | #include "unistd.h" 4 | -------------------------------------------------------------------------------- /grub-core/gnulib/wctype-h.c: -------------------------------------------------------------------------------- 1 | /* Normally this would be wctype.c, but that name's already taken. */ 2 | #include 3 | #define _GL_WCTYPE_INLINE _GL_EXTERN_INLINE 4 | #include "wctype.h" 5 | -------------------------------------------------------------------------------- /grub-core/gnulib/xsize.c: -------------------------------------------------------------------------------- 1 | #include 2 | #define XSIZE_INLINE _GL_EXTERN_INLINE 3 | #include "xsize.h" 4 | -------------------------------------------------------------------------------- /grub-core/kern/emu/cache.c: -------------------------------------------------------------------------------- 1 | 2 | #if defined(__ia64__) 3 | #include 4 | 5 | void __clear_cache (char *beg, char *end); 6 | 7 | void 8 | grub_arch_sync_caches (void *address, grub_size_t len) 9 | { 10 | __clear_cache (address, (char *) address + len); 11 | } 12 | #endif 13 | 14 | -------------------------------------------------------------------------------- /grub-core/kern/emu/cache_s.S: -------------------------------------------------------------------------------- 1 | #ifndef GRUB_MACHINE_EMU 2 | #error "This source is only meant for grub-emu platform" 3 | #endif 4 | 5 | #if defined(__i386__) || defined(__x86_64__) 6 | /* Nothing is necessary. */ 7 | #elif defined(__sparc__) 8 | #include "../sparc64/cache.S" 9 | #elif defined(__mips__) 10 | /* On MIPS we must go through standard functions. */ 11 | #include 12 | 13 | FUNCTION (grub_cpu_flush_cache) 14 | FUNCTION (grub_arch_sync_caches) 15 | .set nomacro 16 | .set noreorder 17 | lui $t0, %hi(_flush_cache) 18 | addui $t0, $t0, %lo(_flush_cache) 19 | move $a3, $zero 20 | jr $t0 21 | nop 22 | .set reorder 23 | .set macro 24 | #elif defined(__powerpc__) 25 | #include "../powerpc/cache.S" 26 | #elif defined(__ia64__) 27 | #else 28 | #error "No target cpu type is defined" 29 | #endif 30 | -------------------------------------------------------------------------------- /grub-core/kern/emu/error.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include "../../gnulib/error.c" 3 | -------------------------------------------------------------------------------- /grub-core/kern/emu/lite.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #ifndef GRUB_MACHINE_EMU 5 | #error "This source is only meant for grub-emu platform" 6 | #endif 7 | 8 | #if defined(__i386__) 9 | #include "../i386/dl.c" 10 | #elif defined(__x86_64__) 11 | #include "../x86_64/dl.c" 12 | #elif defined(__sparc__) 13 | #include "../sparc64/dl.c" 14 | #elif defined(__mips__) 15 | #include "../mips/dl.c" 16 | #elif defined(__powerpc__) 17 | #include "../powerpc/dl.c" 18 | #elif defined(__ia64__) 19 | #include "../ia64/dl.c" 20 | #else 21 | #error "No target cpu type is defined" 22 | #endif 23 | 24 | const int grub_no_modules = 0; 25 | 26 | /* grub-emu-lite supports dynamic module loading, so it won't have any 27 | embedded modules. */ 28 | void 29 | grub_init_all (void) 30 | { 31 | return; 32 | } 33 | 34 | void 35 | grub_fini_all (void) 36 | { 37 | return; 38 | } 39 | -------------------------------------------------------------------------------- /grub-core/kern/mips/cache_flush.S: -------------------------------------------------------------------------------- 1 | move $t2, $a0 2 | addu $t3, $a0, $a1 3 | srl $t2, $t2, 5 4 | sll $t2, $t2, 5 5 | addu $t3, $t3, 0x1f 6 | srl $t3, $t3, 5 7 | sll $t3, $t3, 5 8 | move $t0, $t2 9 | subu $t1, $t3, $t2 10 | 1: 11 | cache 1, 0($t0) 12 | /* All four ways. */ 13 | #ifdef GRUB_MACHINE_MIPS_LOONGSON 14 | cache 1, 1($t0) 15 | cache 1, 2($t0) 16 | cache 1, 3($t0) 17 | addiu $t1, $t1, -0x20 18 | bne $t1, $zero, 1b 19 | addiu $t0, $t0, 0x20 20 | 21 | #else 22 | addiu $t1, $t1, -0x4 23 | bne $t1, $zero, 1b 24 | addiu $t0, $t0, 0x4 25 | #endif 26 | sync 27 | move $t0, $t2 28 | subu $t1, $t3, $t2 29 | 2: 30 | cache 0, 0($t0) 31 | #ifdef GRUB_MACHINE_MIPS_LOONGSON 32 | addiu $t1, $t1, -0x20 33 | bne $t1, $zero, 2b 34 | addiu $t0, $t0, 0x20 35 | #else 36 | addiu $t1, $t1, -0x4 37 | bne $t1, $zero, 2b 38 | addiu $t0, $t0, 0x4 39 | #endif 40 | sync 41 | -------------------------------------------------------------------------------- /grub-core/kern/powerpc/cache.S: -------------------------------------------------------------------------------- 1 | /* cache.S - Flush the processor cache for a specific region. */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2004,2007,2010 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | .text 21 | 22 | .align 2 23 | .globl grub_arch_sync_caches 24 | grub_arch_sync_caches: 25 | #include "cache_flush.S" 26 | blr 27 | -------------------------------------------------------------------------------- /grub-core/lib/efi/reboot.c: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2011 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | 25 | void 26 | grub_reboot (void) 27 | { 28 | grub_machine_fini (); 29 | efi_call_4 (grub_efi_system_table->runtime_services->reset_system, 30 | GRUB_EFI_RESET_COLD, GRUB_EFI_SUCCESS, 0, NULL); 31 | for (;;) ; 32 | } 33 | -------------------------------------------------------------------------------- /grub-core/lib/emu/halt.c: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | 21 | void 22 | grub_halt (void) 23 | { 24 | grub_reboot (); 25 | } 26 | -------------------------------------------------------------------------------- /grub-core/lib/fake_module.c: -------------------------------------------------------------------------------- 1 | /* This file is intentionally empty: it's used to generate modules with no code or data. (purely dependency modules) */ 2 | #include 3 | 4 | GRUB_MOD_LICENSE ("GPLv3+"); 5 | -------------------------------------------------------------------------------- /grub-core/lib/i386/reboot_trampoline.S: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2011 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | #include 21 | 22 | .p2align 4 23 | 24 | VARIABLE(grub_reboot_start) 25 | .code16 26 | 27 | /* set 0x472 to 0x0000 for cold boot (0x1234 for warm boot) */ 28 | movw $0x0472, %di 29 | xorw %ax, %ax 30 | movw %ax, (%di) 31 | ljmp $0xf000, $0xfff0 32 | 33 | .code32 34 | VARIABLE(grub_reboot_end) 35 | -------------------------------------------------------------------------------- /grub-core/lib/ieee1275/reboot.c: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2011 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | #include 21 | 22 | void 23 | grub_reboot (void) 24 | { 25 | grub_ieee1275_interpret ("reset-all", 0); 26 | for (;;) ; 27 | } 28 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/alpha/distfiles: -------------------------------------------------------------------------------- 1 | README 2 | mpih-add1.S 3 | mpih-sub1.S 4 | mpih-mul1.S 5 | mpih-mul2.S 6 | mpih-mul3.S 7 | mpih-lshift.S 8 | mpih-rshift.S 9 | 10 | udiv-qrnnd.S 11 | 12 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/amd64/distfiles: -------------------------------------------------------------------------------- 1 | mpih-add1.S 2 | mpih-lshift.S 3 | mpih-mul1.S 4 | mpih-mul2.S 5 | mpih-mul3.S 6 | mpih-rshift.S 7 | mpih-sub1.S 8 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/generic/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | mpih-add1.c 3 | mpih-mul1.c 4 | mpih-mul2.c 5 | mpih-mul3.c 6 | mpih-lshift.c 7 | mpih-rshift.c 8 | mpih-sub1.c 9 | udiv-w-sdiv.c 10 | mpi-asm-defs.h 11 | 12 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/generic/mpi-asm-defs.h: -------------------------------------------------------------------------------- 1 | /* This file defines some basic constants for the MPI machinery. We 2 | * need to define the types on a per-CPU basis, so it is done with 3 | * this file here. */ 4 | #define BYTES_PER_MPI_LIMB (SIZEOF_UNSIGNED_LONG) 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/hppa/distfiles: -------------------------------------------------------------------------------- 1 | README 2 | udiv-qrnnd.S 3 | mpih-add1.S 4 | mpih-sub1.S 5 | mpih-lshift.S 6 | mpih-rshift.S 7 | 8 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/i386/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | mpih-add1.S 3 | mpih-mul1.S 4 | mpih-mul2.S 5 | mpih-mul3.S 6 | mpih-lshift.S 7 | mpih-rshift.S 8 | mpih-sub1.S 9 | syntax.h 10 | 11 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/i586/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | mpih-add1.S 3 | mpih-mul1.S 4 | mpih-mul2.S 5 | mpih-mul3.S 6 | mpih-lshift.S 7 | mpih-rshift.S 8 | mpih-sub1.S 9 | README 10 | 11 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/m68k/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | syntax.h 3 | mpih-lshift.S 4 | mpih-rshift.S 5 | mpih-add1.S 6 | mpih-sub1.S 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/m68k/mc68020/Manifest: -------------------------------------------------------------------------------- 1 | # Manifest - checksums 2 | # Copyright 2003 Free Software Foundation, Inc. 3 | # 4 | # This file is part of Libgcrypt. 5 | # 6 | # Libgcrypt is free software; you can redistribute it and/or modify 7 | # it under the terms of the GNU Lesser general Public License as 8 | # published by the Free Software Foundation; either version 2.1 of 9 | # the License, or (at your option) any later version. 10 | # 11 | # Libgcrypt is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU Lesser General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU Lesser General Public 17 | # License along with this program; if not, write to the Free Software 18 | # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 19 | 20 | mpih-mul1.S 21 | mpih-mul2.S 22 | mpih-mul3.S 23 | $names$ iQCVAwUAP+LmRTEAnp832S/7AQK3rwP/TyGBbii5HCrjDiLCVJHiDNeOdENx6AicRXnu4vuJmMmPZ0y+i7MPusDaeTbIUA0w6RaJx+Ep41nIvthmNDnFePY5Mw0pIUJcpI7AJR4vYqpwNQA6nlEdn/m1jg6sPLKZXUXNUkhroEzcHzoU+12BPS+nvSXlwSksg6rXEGOJ+Ms==XCXP 24 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/m68k/mc68020/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | mpih-mul1.S 3 | mpih-mul2.S 4 | mpih-mul3.S 5 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/mips3/README: -------------------------------------------------------------------------------- 1 | This directory contains mpn functions optimized for MIPS3. Example of 2 | processors that implement MIPS3 are R4000, R4400, R4600, R4700, and R8000. 3 | 4 | RELEVANT OPTIMIZATION ISSUES 5 | 6 | 1. On the R4000 and R4400, branches, both the plain and the "likely" ones, 7 | take 3 cycles to execute. (The fastest possible loop will take 4 cycles, 8 | because of the delay insn.) 9 | 10 | On the R4600, branches takes a single cycle 11 | 12 | On the R8000, branches often take no noticable cycles, as they are 13 | executed in a separate function unit.. 14 | 15 | 2. The R4000 and R4400 have a load latency of 4 cycles. 16 | 17 | 3. On the R4000 and R4400, multiplies take a data-dependent number of 18 | cycles, contrary to the SGI documentation. There seem to be 3 or 4 19 | possible latencies. 20 | 21 | STATUS 22 | 23 | Good... 24 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/mips3/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | README 3 | mpih-add1.S 4 | mpih-sub1.S 5 | mpih-mul1.S 6 | mpih-mul2.S 7 | mpih-mul3.S 8 | mpih-lshift.S 9 | mpih-rshift.S 10 | mpi-asm-defs.h 11 | 12 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/mips3/mpi-asm-defs.h: -------------------------------------------------------------------------------- 1 | /* This file defines some basic constants for the MPI machinery. We 2 | * need to define the types on a per-CPU basis, so it is done with 3 | * this file here. */ 4 | #define BYTES_PER_MPI_LIMB 8 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/pa7100/Manifest: -------------------------------------------------------------------------------- 1 | # Manifest - checksums 2 | # Copyright 2003 Free Software Foundation, Inc. 3 | # 4 | # This file is part of Libgcrypt. 5 | # 6 | # Libgcrypt is free software; you can redistribute it and/or modify 7 | # it under the terms of the GNU Lesser General Public License as 8 | # published by the Free Software Foundation; either version 2.1 of 9 | # the License, or (at your option) any later version. 10 | # 11 | # Libgcrypt is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU Lesser General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU Lesser General Public 17 | # License along with this program; if not, write to the Free Software 18 | # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 19 | 20 | mpih-lshift.S 21 | mpih-rshift.S 22 | $names$ iQCVAwUAP+LmVjEAnp832S/7AQKlEQQAv2+x/d+Z0t8FwwHlxKpIKOJDr9e+Y2i8y8orcIEa3dnwU5LMOH3EzFoNSD9crc31FMokgm/X5xeLjqRTdcmGHyJJQJDPJVJyuaOm6qHJaFzzfJjrfMW66nJxfNSXIiIm4DgpP20NmumaorLCkiIZ5Z81KGAc8FiRggbRVYx+wxo==Vjh9 23 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/pa7100/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | mpih-lshift.S 3 | mpih-rshift.S 4 | 5 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/pentium4/distfiles: -------------------------------------------------------------------------------- 1 | README 2 | 3 | 4 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/pentium4/mmx/distfiles: -------------------------------------------------------------------------------- 1 | mpih-lshift.S 2 | mpih-rshift.S 3 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/pentium4/sse2/distfiles: -------------------------------------------------------------------------------- 1 | mpih-add1.S 2 | mpih-mul1.S 3 | mpih-mul2.S 4 | mpih-mul3.S 5 | mpih-sub1.S 6 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/power/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | mpih-add1.S 3 | mpih-lshift.S 4 | mpih-mul1.S 5 | mpih-mul2.S 6 | mpih-mul3.S 7 | mpih-rshift.S 8 | mpih-sub1.S 9 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/powerpc32/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | mpih-add1.S 3 | mpih-sub1.S 4 | mpih-mul1.S 5 | mpih-mul2.S 6 | mpih-mul3.S 7 | mpih-lshift.S 8 | mpih-rshift.S 9 | syntax.h 10 | 11 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/sparc32/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | mpih-lshift.S 3 | mpih-rshift.S 4 | mpih-add1.S 5 | udiv.S 6 | 7 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/sparc32v8/Manifest: -------------------------------------------------------------------------------- 1 | # Manifest - checksums 2 | # Copyright 2003 Free Software Foundation, Inc. 3 | # 4 | # This file is part of Libgcrypt. 5 | # 6 | # Libgcrypt is free software; you can redistribute it and/or modify 7 | # it under the terms of the GNU Lesser General Public License as 8 | # published by the Free Software Foundation; either version 2.1 of 9 | # the License, or (at your option) any later version. 10 | # 11 | # Libgcrypt is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU Lesser General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU Lesser General Public 17 | # License along with this program; if not, write to the Free Software 18 | # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 19 | 20 | mpih-mul1.S 21 | mpih-mul2.S 22 | mpih-mul3.S 23 | $names$ iQCVAwUAP+LmbjEAnp832S/7AQKQ2gQAotpCpY9rOJUCdZHbDLXXB9i1UUMraRKbVWimtKq493Y2d2wcqXCK2WaGs1AePK3K6Qk6msxZ0PL5Ho7KgHMkzsZ+wG0EUziiuX0yZRTWNm0r3TYerP6SdWH5GOVdSXn7ckkppk2sVOokfQTy+Tmrnah3+dlYJoujan+fmXWN6Us==DolM 24 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/sparc32v8/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | mpih-mul1.S 3 | mpih-mul2.S 4 | mpih-mul3.S 5 | 6 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/supersparc/Manifest: -------------------------------------------------------------------------------- 1 | # Manifest - checksums 2 | # Copyright 2003 Free Software Foundation, Inc. 3 | # 4 | # This file is part of Libgcrypt. 5 | # 6 | # Libgcrypt is free software; you can redistribute it and/or modify 7 | # it under the terms of the GNU Lesser General Public License as 8 | # published by the Free Software Foundation; either version 2.1 of 9 | # the License, or (at your option) any later version. 10 | # 11 | # Libgcrypt is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU Lesser General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU Lesser General Public 17 | # License along with this program; if not, write to the Free Software 18 | # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 19 | 20 | udiv.S 21 | $names$ iQCVAwUAP+LmdjEAnp832S/7AQIrUgQA3YmurZhK7r20DqRvg0gwNe9jMDcFfUY4ZPhW5HkGzMbmrxXtj5Dx50RIPteum72bXE+IhcngljQb/cskiN5Hi9oc2a2CPhyTqVFEeGyF+kJ170GI1pVfFOfzbVG0F4nEwm5lGHgv/nvFsvrjmmAXVW1v/yk5N35wbiLviOFrLOQ==byFc 22 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/mpi/supersparc/distfiles: -------------------------------------------------------------------------------- 1 | Manifest 2 | udiv.S 3 | 4 | -------------------------------------------------------------------------------- /grub-core/lib/libgcrypt/src/versioninfo.rc.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/grub-core/lib/libgcrypt/src/versioninfo.rc.in -------------------------------------------------------------------------------- /grub-core/lib/mips/arc/reboot.c: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2011 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | 25 | void 26 | grub_reboot (void) 27 | { 28 | GRUB_ARC_FIRMWARE_VECTOR->restart (); 29 | 30 | grub_millisleep (1500); 31 | 32 | grub_puts_ (N_("Reboot failed")); 33 | grub_refresh (); 34 | while (1); 35 | } 36 | -------------------------------------------------------------------------------- /grub-core/lib/mips/qemu_mips/reboot.c: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2011 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | #include 21 | 22 | void 23 | grub_reboot (void) 24 | { 25 | grub_outl (42, 0xbfbf0000); 26 | while (1); 27 | } 28 | -------------------------------------------------------------------------------- /grub-core/lib/posix_wrap/assert.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009, 2010 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_POSIX_ASSERT_H 20 | #define GRUB_POSIX_ASSERT_H 1 21 | 22 | #include 23 | 24 | #define assert(x) assert_real(__FILE__, __LINE__, x) 25 | 26 | static inline void 27 | assert_real (const char *file, int line, int cond) 28 | { 29 | if (!cond) 30 | grub_printf ("Assertion failed at %s:%d\n", file, line); 31 | } 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /grub-core/lib/posix_wrap/errno.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009, 2010 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_POSIX_ERRNO_H 20 | #define GRUB_POSIX_ERRNO_H 1 21 | 22 | #include 23 | 24 | #define errno grub_errno 25 | #define EINVAL GRUB_ERR_BAD_NUMBER 26 | #define ENOMEM GRUB_ERR_OUT_OF_MEMORY 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /grub-core/lib/posix_wrap/inttypes.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /grub-core/lib/posix_wrap/localcharset.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009, 2010 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_POSIX_LOCALCHARSET_H 20 | #define GRUB_POSIX_LOCALCHARSET_H 1 21 | 22 | static inline const char * 23 | locale_charset (void) 24 | { 25 | return "UTF-8"; 26 | } 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /grub-core/lib/posix_wrap/locale.h: -------------------------------------------------------------------------------- 1 | #ifdef GRUB_UTIL 2 | #include_next 3 | #endif 4 | -------------------------------------------------------------------------------- /grub-core/lib/posix_wrap/stdint.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /grub-core/lib/posix_wrap/unistd.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /grub-core/lib/setjmp.S: -------------------------------------------------------------------------------- 1 | #if defined(__i386__) 2 | #include "./i386/setjmp.S" 3 | #elif defined(__x86_64__) 4 | #include "./x86_64/setjmp.S" 5 | #elif defined(__sparc__) 6 | #include "./sparc64/setjmp.S" 7 | #elif defined(__mips__) 8 | #include "./mips/setjmp.S" 9 | #elif defined(__powerpc__) || defined(__PPC__) 10 | #include "./powerpc/setjmp.S" 11 | #elif defined(__ia64__) 12 | #include "./ia64/setjmp.S" 13 | #include "./ia64/longjmp.S" 14 | #elif defined(__arm__) 15 | #include "./arm/setjmp.S" 16 | #else 17 | #error "Unknown target cpu type" 18 | #endif 19 | -------------------------------------------------------------------------------- /grub-core/lib/uboot/halt.c: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2013 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | void 24 | grub_halt (void) 25 | { 26 | grub_machine_fini (); 27 | 28 | /* Just stop here */ 29 | 30 | while (1); 31 | } 32 | -------------------------------------------------------------------------------- /grub-core/lib/uboot/reboot.c: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2013 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | void 24 | grub_reboot (void) 25 | { 26 | grub_machine_fini (); 27 | 28 | grub_uboot_reset (); 29 | while (1); 30 | } 31 | -------------------------------------------------------------------------------- /grub-core/loader/i386/bsd32.c: -------------------------------------------------------------------------------- 1 | #define SUFFIX(x) x ## 32 2 | #define GRUB_TARGET_WORDSIZE 32 3 | #define OBJSYM 0 4 | #include 5 | typedef grub_uint32_t grub_freebsd_addr_t; 6 | #include "bsdXX.c" 7 | -------------------------------------------------------------------------------- /grub-core/loader/i386/bsd64.c: -------------------------------------------------------------------------------- 1 | #define SUFFIX(x) x ## 64 2 | #define GRUB_TARGET_WORDSIZE 64 3 | #define OBJSYM 1 4 | #include 5 | typedef grub_uint64_t grub_freebsd_addr_t; 6 | #include "bsdXX.c" 7 | -------------------------------------------------------------------------------- /grub-core/loader/macho32.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #define SUFFIX(x) x ## 32 5 | typedef struct grub_macho_header32 grub_macho_header_t; 6 | typedef struct grub_macho_segment32 grub_macho_segment_t; 7 | typedef grub_uint32_t grub_macho_addr_t; 8 | typedef struct grub_macho_thread32 grub_macho_thread_t; 9 | #define offsetXX offset32 10 | #define ncmdsXX ncmds32 11 | #define cmdsizeXX cmdsize32 12 | #define cmdsXX cmds32 13 | #define endXX end32 14 | #define uncompressedXX uncompressed32 15 | #define compressedXX compressed32 16 | #define uncompressed_sizeXX uncompressed_size32 17 | #define compressed_sizeXX compressed_size32 18 | #define XX "32" 19 | #define GRUB_MACHO_MAGIC GRUB_MACHO_MAGIC32 20 | #define GRUB_MACHO_CMD_SEGMENT GRUB_MACHO_CMD_SEGMENT32 21 | #include "machoXX.c" 22 | 23 | -------------------------------------------------------------------------------- /grub-core/loader/macho64.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #define SUFFIX(x) x ## 64 5 | typedef struct grub_macho_header64 grub_macho_header_t; 6 | typedef struct grub_macho_segment64 grub_macho_segment_t; 7 | typedef grub_uint64_t grub_macho_addr_t; 8 | typedef struct grub_macho_thread64 grub_macho_thread_t; 9 | #define offsetXX offset64 10 | #define ncmdsXX ncmds64 11 | #define cmdsizeXX cmdsize64 12 | #define cmdsXX cmds64 13 | #define endXX end64 14 | #define uncompressedXX uncompressed64 15 | #define compressedXX compressed64 16 | #define uncompressed_sizeXX uncompressed_size64 17 | #define compressed_sizeXX compressed_size64 18 | #define XX "64" 19 | #define GRUB_MACHO_MAGIC GRUB_MACHO_MAGIC64 20 | #define GRUB_MACHO_CMD_SEGMENT GRUB_MACHO_CMD_SEGMENT64 21 | #include "machoXX.c" 22 | 23 | -------------------------------------------------------------------------------- /grub-core/modinfo.sh.in: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | grub_modinfo_target_cpu=@target_cpu@ 4 | grub_modinfo_platform=@platform@ 5 | -------------------------------------------------------------------------------- /grub-core/term/i386/pc/mda_text.c: -------------------------------------------------------------------------------- 1 | #define MODE_MDA 1 2 | #include "vga_text.c" 3 | 4 | GRUB_MOD_INIT(mda_text) 5 | { 6 | grub_term_register_output ("mda_text", &grub_vga_text_term); 7 | } 8 | 9 | GRUB_MOD_FINI(mda_text) 10 | { 11 | grub_term_unregister_output (&grub_vga_text_term); 12 | } 13 | 14 | -------------------------------------------------------------------------------- /grub-core/tests/boot/kbsd.spec.txt: -------------------------------------------------------------------------------- 1 | . type=dir 2 | dev type=dir 3 | console type=char device=0 mode=666 gid=0 uid=0 4 | -------------------------------------------------------------------------------- /grub-core/tests/boot/kernel-8086.S: -------------------------------------------------------------------------------- 1 | 2 | .text 3 | .globl _start 4 | _start: 5 | base: 6 | .code16 7 | jmp cont 8 | 9 | serialmsg: 10 | 1: 11 | movb 0(%si), %bl 12 | testb %bl, %bl 13 | jz 1f 14 | movw $0x3fd, %dx 15 | 2: 16 | inb %dx, %al 17 | testb $0x20, %al 18 | jz 2b 19 | 20 | movw $0x3f8, %dx 21 | movb %bl, %al 22 | outb %al, %dx 23 | incw %si 24 | jmp 1b 25 | 1: 26 | ret 27 | 28 | cont: 29 | #ifdef TARGET_NTLDR 30 | movw $0x2000, %ax 31 | #elif defined (TARGET_CHAINLOADER) 32 | xorw %ax, %ax 33 | #else 34 | #error unsupported target 35 | #endif 36 | movw %ax, %ds 37 | lea message, %si 38 | call serialmsg 39 | #include "qemu-shutdown-x86.S" 40 | 41 | 1: 42 | hlt 43 | jmp 1b 44 | 45 | message: 46 | .ascii "Boot Test Passed Successfully\n" SUCCESSFUL_BOOT_STRING "\n" 47 | .byte 0 48 | 49 | . = base + 510 50 | .short 0xaa55 -------------------------------------------------------------------------------- /grub-core/tests/boot/kfreebsd-aout.cfg: -------------------------------------------------------------------------------- 1 | kfreebsd /kfreebsd.aout 2 | boot 3 | # Shouln't happen 4 | halt 5 | -------------------------------------------------------------------------------- /grub-core/tests/boot/kfreebsd.cfg: -------------------------------------------------------------------------------- 1 | kfreebsd /kfreebsd -hv 2 | kfreebsd_loadenv /kfreebsd_env 3 | kfreebsd_module /mfsroot.gz type=mfs_root 4 | set kFreeBSD.hw.hasbrokenint12=1 5 | fakebios 6 | boot 7 | # Shouln't happen 8 | halt 9 | -------------------------------------------------------------------------------- /grub-core/tests/boot/knetbsd.cfg: -------------------------------------------------------------------------------- 1 | knetbsd /knetbsd -h 2 | knetbsd_module_elf /miniroot.gz 3 | boot 4 | # Shouln't happen 5 | halt 6 | -------------------------------------------------------------------------------- /grub-core/tests/boot/kopenbsd.cfg: -------------------------------------------------------------------------------- 1 | kopenbsd /kopenbsd -h 2 | kopenbsd_ramdisk /ramdisk 3 | boot 4 | # Shouln't happen 5 | halt 6 | -------------------------------------------------------------------------------- /grub-core/tests/boot/kopenbsdlabel.txt: -------------------------------------------------------------------------------- 1 | # size offset fstype [fsize bsize bps/cpg] 2 | a: 256 0 4.2BSD 0 0 1 3 | c: 256 0 unused 0 0 # "raw" part, don't edit 4 | -------------------------------------------------------------------------------- /grub-core/tests/boot/linux-ppc.cfg: -------------------------------------------------------------------------------- 1 | linux /linux console=ttyPZ1 root=/dev/ram0 2 | initrd /initrd 3 | boot 4 | # Shouln't happen 5 | halt 6 | -------------------------------------------------------------------------------- /grub-core/tests/boot/linux.cfg: -------------------------------------------------------------------------------- 1 | linux /linux console=ttyS0 root=/dev/ram0 2 | initrd /initrd 3 | boot 4 | # Shouln't happen 5 | halt 6 | -------------------------------------------------------------------------------- /grub-core/tests/boot/linux16.cfg: -------------------------------------------------------------------------------- 1 | linux16 /linux console=ttyS0 root=/dev/ram0 2 | initrd16 /initrd 3 | boot 4 | # Shouln't happen 5 | halt 6 | -------------------------------------------------------------------------------- /grub-core/tests/boot/multiboot.cfg: -------------------------------------------------------------------------------- 1 | multiboot /multiboot.elf 2 | boot 3 | # Shouln't happen 4 | halt 5 | -------------------------------------------------------------------------------- /grub-core/tests/boot/multiboot2.cfg: -------------------------------------------------------------------------------- 1 | multiboot2 /multiboot2.elf 2 | boot 3 | # Shouln't happen 4 | halt 5 | -------------------------------------------------------------------------------- /grub-core/tests/boot/ntldr.cfg: -------------------------------------------------------------------------------- 1 | ntldr /ntldr.bin 2 | boot 3 | # Shouln't happen 4 | halt 5 | -------------------------------------------------------------------------------- /grub-core/tests/boot/pc-chainloader.cfg: -------------------------------------------------------------------------------- 1 | chainloader /pc-chainloader.bin 2 | boot 3 | # Shouln't happen 4 | halt 5 | -------------------------------------------------------------------------------- /grub-core/tests/boot/qemu-shutdown-x86.S: -------------------------------------------------------------------------------- 1 | movl $0x80000b80, %eax 2 | movw $0xcf8, %dx 3 | outl %eax, %dx 4 | movw $0xcfc, %dx 5 | inb %dx, %al 6 | orb $1, %al 7 | outb %al, %dx 8 | 9 | movl $0x80000b40, %eax 10 | movw $0xcf8, %dx 11 | outl %eax, %dx 12 | movl $0x7001, %eax 13 | movw $0xcfc, %dx 14 | outl %eax, %dx 15 | movw $0x2000, %ax 16 | movw $0x7004, %dx 17 | outw %ax, %dx 18 | -------------------------------------------------------------------------------- /grub-core/video/sm712_init.c: -------------------------------------------------------------------------------- 1 | /* Following sequence is a capture of sm712 initialisation sequence. */ 2 | static grub_uint8_t sm712_sr_seq1[] = 3 | { 0xc8, 0x40, 0x14, 0x60, 0x0, 0xa, 0x92, 0x0, 4 | 0x51, 0x00, 0x01, 0x00, 0x0, 0x0, 0x00, 0x0, 5 | 0xc4, 0x30, 0x02, 0x00, 0x1 }; 6 | 7 | static grub_uint8_t sm712_sr_seq2[] = 8 | { 0x28, 0x03, 0x24, 0x09, 0xc0, 0x3a, 0x3a, 0x3a, 9 | 0x3a, 0x3a, 0x3a, 0x3a, 0x00, 0x00, 0x03, 0xff, 10 | 0x00, 0xfc, 0x00, 0x00, 0x20, 0x18, 0x00, 0xfc, 11 | 0x20, 0x0c, 0x44, 0x20, 0x00, 0x00, 0x00, 0x3a, 12 | 0x06, 0x68, 0xa7, 0x7f, 0x83, 0x24, 0xff, 0x03, 13 | 0x00, 0x60, 0x59, 0x3a, 0x3a, 0x00, 0x00, 0x3a, 14 | 0x01, 0x80 }; 15 | -------------------------------------------------------------------------------- /include/grub/arc/console.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CONSOLE_MACHINE_HEADER 20 | #define GRUB_CONSOLE_MACHINE_HEADER 1 21 | 22 | #include 23 | 24 | /* Initialize the console system. */ 25 | void grub_console_init_early (void); 26 | void grub_console_init_lately (void); 27 | 28 | /* Finish the console system. */ 29 | void grub_console_fini (void); 30 | 31 | #endif /* ! GRUB_CONSOLE_MACHINE_HEADER */ 32 | -------------------------------------------------------------------------------- /include/grub/arm/efi/loader.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2013 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_LOADER_MACHINE_HEADER 20 | #define GRUB_LOADER_MACHINE_HEADER 1 21 | 22 | grub_err_t EXPORT_FUNC (grub_efi_prepare_platform) (void); 23 | void * EXPORT_FUNC (grub_efi_allocate_loader_memory) (grub_uint32_t min_offset, 24 | grub_uint32_t size); 25 | 26 | #endif /* ! GRUB_LOADER_MACHINE_HEADER */ 27 | -------------------------------------------------------------------------------- /include/grub/arm/efi/memory.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/arm/setjmp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2002,2004,2006,2007,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_SETJMP_CPU_HEADER 20 | #define GRUB_SETJMP_CPU_HEADER 1 21 | 22 | typedef unsigned long grub_jmp_buf[10]; 23 | 24 | int grub_setjmp (grub_jmp_buf env) __attribute__ ((returns_twice)); 25 | void grub_longjmp (grub_jmp_buf env, int val) __attribute__ ((noreturn)); 26 | 27 | #endif /* ! GRUB_SETJMP_CPU_HEADER */ 28 | -------------------------------------------------------------------------------- /include/grub/arm/system.h: -------------------------------------------------------------------------------- 1 | #ifndef GRUB_SYSTEM_CPU_HEADER 2 | #define GRUB_SYSTEM_CPU_HEADER 3 | 4 | void grub_arm_disable_caches_mmu (void); 5 | 6 | #endif /* ! GRUB_SYSTEM_CPU_HEADER */ 7 | 8 | -------------------------------------------------------------------------------- /include/grub/arm/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2013 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef KERNEL_CPU_TIME_HEADER 20 | #define KERNEL_CPU_TIME_HEADER 1 21 | 22 | static __inline void 23 | grub_cpu_idle (void) 24 | { 25 | /* FIXME: this can't work until we handle interrupts. */ 26 | /* __asm__ __volatile__ ("wfi"); */ 27 | } 28 | 29 | #endif /* ! KERNEL_CPU_TIME_HEADER */ 30 | -------------------------------------------------------------------------------- /include/grub/backtrace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_BACKTRACE_HEADER 20 | #define GRUB_BACKTRACE_HEADER 1 21 | 22 | void grub_backtrace (void); 23 | void grub_backtrace_pointer (void *ptr); 24 | void grub_backtrace_print_address (void *addr); 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /include/grub/boottime.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/include/grub/boottime.h -------------------------------------------------------------------------------- /include/grub/bufio.h: -------------------------------------------------------------------------------- 1 | /* bufio.h - prototypes for bufio */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2008 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #ifndef GRUB_BUFIO_H 21 | #define GRUB_BUFIO_H 1 22 | 23 | #include 24 | 25 | grub_file_t EXPORT_FUNC (grub_bufio_open) (grub_file_t io, int size); 26 | grub_file_t EXPORT_FUNC (grub_buffile_open) (const char *name, int size); 27 | 28 | #endif /* ! GRUB_BUFIO_H */ 29 | -------------------------------------------------------------------------------- /include/grub/color.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_VIDEO_COLOR_HEADER 20 | #define GRUB_VIDEO_COLOR_HEADER 1 21 | 22 | #include 23 | 24 | int grub_video_get_named_color (const char *name, 25 | grub_video_rgba_color_t *color); 26 | 27 | grub_err_t grub_video_parse_color (const char *s, 28 | grub_video_rgba_color_t *color); 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /include/grub/deflate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2010 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_DEFLATE_HEADER 20 | #define GRUB_DEFLATE_HEADER 1 21 | 22 | grub_ssize_t 23 | grub_zlib_decompress (char *inbuf, grub_size_t insize, grub_off_t off, 24 | char *outbuf, grub_size_t outsize); 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /include/grub/efi/console.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2002,2005,2006,2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_EFI_CONSOLE_HEADER 20 | #define GRUB_EFI_CONSOLE_HEADER 1 21 | 22 | #include 23 | #include 24 | 25 | /* Initialize the console system. */ 26 | void grub_console_init (void); 27 | 28 | /* Finish the console system. */ 29 | void grub_console_fini (void); 30 | 31 | #endif /* ! GRUB_EFI_CONSOLE_HEADER */ 32 | -------------------------------------------------------------------------------- /include/grub/emu/console.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CONSOLE_UTIL_HEADER 20 | #define GRUB_CONSOLE_UTIL_HEADER 1 21 | 22 | /* Initialize the console system. */ 23 | void grub_console_init (void); 24 | 25 | /* Finish the console system. */ 26 | void grub_console_fini (void); 27 | 28 | #endif /* ! GRUB_CONSOLE_UTIL_HEADER */ 29 | -------------------------------------------------------------------------------- /include/grub/emu/export.h: -------------------------------------------------------------------------------- 1 | void EXPORT_FUNC (open64) (void); 2 | void EXPORT_FUNC (close) (void); 3 | void EXPORT_FUNC (read) (void); 4 | void EXPORT_FUNC (write) (void); 5 | void EXPORT_FUNC (ioctl) (void); 6 | void EXPORT_FUNC (__errno_location) (void); 7 | void EXPORT_FUNC (strerror) (void); 8 | void EXPORT_FUNC (sysconf) (void); 9 | void EXPORT_FUNC (times) (void); 10 | -------------------------------------------------------------------------------- /include/grub/gcrypt/gpg-error.h: -------------------------------------------------------------------------------- 1 | #ifndef GRUB_GPG_ERROR_H 2 | #define GRUB_GPG_ERROR_H 1 3 | 4 | #include 5 | typedef enum 6 | { 7 | GPG_ERR_SOURCE_USER_1 8 | } 9 | gpg_err_source_t; 10 | #define GPG_ERR_INLINE inline 11 | static inline int 12 | gpg_err_make (gpg_err_source_t source __attribute__ ((unused)), gpg_err_code_t code) 13 | { 14 | return code; 15 | } 16 | 17 | static inline gpg_err_code_t 18 | gpg_err_code (gpg_error_t err) 19 | { 20 | return err; 21 | } 22 | 23 | static inline gpg_err_source_t 24 | gpg_err_source (gpg_error_t err __attribute__ ((unused))) 25 | { 26 | return GPG_ERR_SOURCE_USER_1; 27 | } 28 | 29 | gcry_err_code_t 30 | gpg_error_from_syserror (void); 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /include/grub/gfxmenu_model.h: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /include/grub/i386/at_keyboard.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2007,2008,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CPU_AT_KEYBOARD_HEADER 20 | #define GRUB_CPU_AT_KEYBOARD_HEADER 1 21 | 22 | #define KEYBOARD_REG_DATA 0x60 23 | #define KEYBOARD_REG_STATUS 0x64 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /include/grub/i386/cmos.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CPU_CMOS_H 20 | #define GRUB_CPU_CMOS_H 1 21 | 22 | #include 23 | #include 24 | 25 | #define GRUB_CMOS_ADDR_REG 0x70 26 | #define GRUB_CMOS_DATA_REG 0x71 27 | #define GRUB_CMOS_ADDR_REG_HI 0x72 28 | #define GRUB_CMOS_DATA_REG_HI 0x73 29 | 30 | #endif /* GRUB_CPU_CMOS_H */ 31 | -------------------------------------------------------------------------------- /include/grub/i386/coreboot/boot.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/coreboot/serial.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_MACHINE_SERIAL_HEADER 20 | #define GRUB_MACHINE_SERIAL_HEADER 1 21 | 22 | #define GRUB_MACHINE_SERIAL_PORTS { 0x3f8, 0x2f8, 0x3e8, 0x2e8 } 23 | 24 | #endif 25 | -------------------------------------------------------------------------------- /include/grub/i386/coreboot/time.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/cpuid.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CPU_CPUID_HEADER 20 | #define GRUB_CPU_CPUID_HEADER 1 21 | 22 | extern unsigned char grub_cpuid_has_longmode; 23 | 24 | #endif 25 | -------------------------------------------------------------------------------- /include/grub/i386/efi/memory.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/efi/serial.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/ieee1275/ieee1275.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/ieee1275/memory.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/ieee1275/serial.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/multiboot/boot.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/multiboot/console.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/multiboot/kernel.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/multiboot/memory.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/multiboot/serial.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/multiboot/time.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/pc/biosnum.h: -------------------------------------------------------------------------------- 1 | #ifndef GRUB_BIOSNUM_MACHINE_HEADER 2 | #define GRUB_BIOSNUM_MACHINE_HEADER 1 3 | 4 | extern int (*grub_get_root_biosnumber) (void); 5 | 6 | #endif 7 | -------------------------------------------------------------------------------- /include/grub/i386/pc/chainloader.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2004,2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CHAINLOADER_MACHINE_HEADER 20 | #define GRUB_CHAINLOADER_MACHINE_HEADER 1 21 | 22 | #include 23 | 24 | void 25 | grub_chainloader_patch_bpb (void *bs, grub_device_t dev, grub_uint8_t dl); 26 | 27 | #endif /* GRUB_CHAINLOADER_MACHINE_HEADER */ 28 | -------------------------------------------------------------------------------- /include/grub/i386/pc/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2003,2004,2005,2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef KERNEL_MACHINE_TIME_HEADER 20 | #define KERNEL_MACHINE_TIME_HEADER 1 21 | 22 | #include 23 | 24 | #endif /* ! KERNEL_MACHINE_TIME_HEADER */ 25 | -------------------------------------------------------------------------------- /include/grub/i386/pc/vesa_modes_table.h: -------------------------------------------------------------------------------- 1 | #ifndef GRUB_VESA_MODE_TABLE_HEADER 2 | #define GRUB_VESA_MODE_TABLE_HEADER 1 3 | 4 | #include 5 | 6 | #define GRUB_VESA_MODE_TABLE_START 0x300 7 | #define GRUB_VESA_MODE_TABLE_END 0x373 8 | 9 | struct grub_vesa_mode_table_entry { 10 | grub_uint16_t width; 11 | grub_uint16_t height; 12 | grub_uint8_t depth; 13 | }; 14 | 15 | extern struct grub_vesa_mode_table_entry 16 | grub_vesa_mode_table[GRUB_VESA_MODE_TABLE_END 17 | - GRUB_VESA_MODE_TABLE_START + 1]; 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /include/grub/i386/qemu/boot.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_BOOT_MACHINE_HEADER 20 | #define GRUB_BOOT_MACHINE_HEADER 1 21 | 22 | /* The size of boot.img. */ 23 | #define GRUB_BOOT_MACHINE_SIZE (0x100000 - GRUB_BOOT_MACHINE_LINK_ADDR) 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /include/grub/i386/qemu/console.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/qemu/serial.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/qemu/time.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/i386/reboot.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2011 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_REBOOT_H 20 | #define GRUB_REBOOT_H 1 21 | 22 | #ifndef ASM_FILE 23 | 24 | extern grub_uint8_t grub_reboot_end[], grub_reboot_start[]; 25 | 26 | #endif 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /include/grub/i386/relocator_private.h: -------------------------------------------------------------------------------- 1 | #define GRUB_RELOCATOR16_STACK_SIZE 4096 2 | -------------------------------------------------------------------------------- /include/grub/i386/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef KERNEL_CPU_TIME_HEADER 20 | #define KERNEL_CPU_TIME_HEADER 1 21 | 22 | static __inline void 23 | grub_cpu_idle (void) 24 | { 25 | /* FIXME: this can't work until we handle interrupts. */ 26 | /* __asm__ __volatile__ ("hlt"); */ 27 | } 28 | 29 | #endif /* ! KERNEL_CPU_TIME_HEADER */ 30 | -------------------------------------------------------------------------------- /include/grub/ia64/efi/memory.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/ia64/efi/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | #ifndef GRUB_MACHINE_TIME_HEADER 19 | #define GRUB_MACHINE_TIME_HEADER 1 20 | 21 | #include 22 | 23 | #endif /* ! GRUB_MACHINE_TIME_HEADER */ 24 | -------------------------------------------------------------------------------- /include/grub/ia64/kernel.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2010 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CPU_KERNEL_HEADER 20 | #define GRUB_CPU_KERNEL_HEADER 1 21 | 22 | #define GRUB_MOD_ALIGN 0x1 23 | #define GRUB_MOD_GAP 0x0 24 | 25 | #endif /* ! GRUB_CPU_KERNEL_HEADER */ 26 | -------------------------------------------------------------------------------- /include/grub/ia64/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2007, 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef KERNEL_CPU_TIME_HEADER 20 | #define KERNEL_CPU_TIME_HEADER 1 21 | 22 | static __inline void 23 | grub_cpu_idle (void) 24 | { 25 | /* FIXME: not implemented */ 26 | } 27 | 28 | #endif /* ! KERNEL_CPU_TIME_HEADER */ 29 | -------------------------------------------------------------------------------- /include/grub/ia64/types.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_TYPES_CPU_HEADER 20 | #define GRUB_TYPES_CPU_HEADER 1 21 | 22 | /* The size of void *. */ 23 | #define GRUB_TARGET_SIZEOF_VOID_P 8 24 | 25 | /* The size of long. */ 26 | #define GRUB_TARGET_SIZEOF_LONG 8 27 | 28 | /* ia64 is little-endian (usually). */ 29 | #undef GRUB_TARGET_WORDS_BIGENDIAN 30 | 31 | 32 | #endif /* ! GRUB_TYPES_CPU_HEADER */ 33 | -------------------------------------------------------------------------------- /include/grub/ieee1275/ofdisk.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2005,2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_OFDISK_HEADER 20 | #define GRUB_OFDISK_HEADER 1 21 | 22 | extern void grub_ofdisk_init (void); 23 | extern void grub_ofdisk_fini (void); 24 | 25 | extern grub_err_t grub_ofdisk_get_block_size (const char *device, 26 | grub_uint32_t *block_size); 27 | 28 | #endif /* ! GRUB_INIT_HEADER */ 29 | -------------------------------------------------------------------------------- /include/grub/legacy_parse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_LEGACY_PARSE_HEADER 20 | #define GRUB_LEGACY_PARSE_HEADER 1 21 | 22 | #include 23 | 24 | char *grub_legacy_parse (const char *buf, char **entryname, char **suffix); 25 | char *grub_legacy_escape (const char *in, grub_size_t len); 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /include/grub/lib/crc.h: -------------------------------------------------------------------------------- 1 | /* crc.h - prototypes for crc */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2008 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #ifndef GRUB_CRC_H 21 | #define GRUB_CRC_H 1 22 | 23 | grub_uint32_t grub_getcrc32c (grub_uint32_t crc, const void *buf, int size); 24 | 25 | #endif /* ! GRUB_CRC_H */ 26 | -------------------------------------------------------------------------------- /include/grub/lib/hexdump.h: -------------------------------------------------------------------------------- 1 | /* hexdump.h - prototypes for dump */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2007 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #ifndef GRUB_HEXDUMP_H 21 | #define GRUB_HEXDUMP_H 1 22 | 23 | void hexdump (unsigned long bse,char* buf,int len); 24 | 25 | #endif /* ! GRUB_HEXDUMP_H */ 26 | -------------------------------------------------------------------------------- /include/grub/linux.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | struct grub_linux_initrd_component; 4 | 5 | struct grub_linux_initrd_context 6 | { 7 | int nfiles; 8 | struct grub_linux_initrd_component *components; 9 | grub_size_t size; 10 | }; 11 | 12 | grub_err_t 13 | grub_initrd_init (int argc, char *argv[], 14 | struct grub_linux_initrd_context *ctx); 15 | 16 | grub_size_t 17 | grub_get_initrd_size (struct grub_linux_initrd_context *ctx); 18 | 19 | void 20 | grub_initrd_close (struct grub_linux_initrd_context *initrd_ctx); 21 | 22 | grub_err_t 23 | grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx, 24 | char *argv[], void *target); 25 | -------------------------------------------------------------------------------- /include/grub/mips/arc/kernel.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | -------------------------------------------------------------------------------- /include/grub/mips/arc/time.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/include/grub/mips/arc/time.h -------------------------------------------------------------------------------- /include/grub/mips/at_keyboard.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/mips/cache.h: -------------------------------------------------------------------------------- 1 | /* cache.h - Flush the processor's cache. */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2004,2007 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #ifndef GRUB_CPU_CACHE_H 21 | #define GRUB_CPU_CACHE_H 1 22 | 23 | #include 24 | #include 25 | 26 | void EXPORT_FUNC(grub_cpu_flush_cache) (void *start, grub_size_t size, int type); 27 | #endif 28 | -------------------------------------------------------------------------------- /include/grub/mips/cmos.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/mips/kernel.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2005,2006,2007,2008,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_KERNEL_CPU_HEADER 20 | #define GRUB_KERNEL_CPU_HEADER 1 21 | 22 | #include 23 | 24 | #endif /* ! GRUB_KERNEL_MACHINE_HEADER */ 25 | -------------------------------------------------------------------------------- /include/grub/mips/loongson/at_keyboard.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2007,2008,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_MACHINE_AT_KEYBOARD_HEADER 20 | #define GRUB_MACHINE_AT_KEYBOARD_HEADER 1 21 | 22 | #define KEYBOARD_REG_DATA 0xbfd00060 23 | #define KEYBOARD_REG_STATUS 0xbfd00064 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /include/grub/mips/loongson/cmos.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CPU_CMOS_H 20 | #define GRUB_CPU_CMOS_H 1 21 | 22 | #include 23 | #include 24 | 25 | #define GRUB_CMOS_ADDR_REG 0xbfd00070 26 | #define GRUB_CMOS_DATA_REG 0xbfd00071 27 | #define GRUB_CMOS_ADDR_REG_HI 0xbfd00072 28 | #define GRUB_CMOS_DATA_REG_HI 0xbfd00073 29 | 30 | #endif /* GRUB_CPU_CMOS_H */ 31 | -------------------------------------------------------------------------------- /include/grub/mips/loongson/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2003,2004,2005,2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef KERNEL_MACHINE_TIME_HEADER 20 | #define KERNEL_MACHINE_TIME_HEADER 1 21 | 22 | #include 23 | #include 24 | 25 | extern grub_uint32_t EXPORT_VAR (grub_arch_busclock) __attribute__ ((section(".text"))); 26 | 27 | #endif /* ! KERNEL_MACHINE_TIME_HEADER */ 28 | -------------------------------------------------------------------------------- /include/grub/mips/mips.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2010 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_REGISTERS_CPU_HEADER 20 | #define GRUB_REGISTERS_CPU_HEADER 1 21 | 22 | #ifdef ASM_FILE 23 | #define GRUB_CPU_REGISTER_WRAP(x) x 24 | #else 25 | #define GRUB_CPU_REGISTER_WRAP(x) #x 26 | #endif 27 | 28 | #define GRUB_CPU_MIPS_COP0_TIMER_COUNT GRUB_CPU_REGISTER_WRAP($9) 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /include/grub/mips/pci.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/mips/qemu_mips/at_keyboard.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2007,2008,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_MACHINE_AT_KEYBOARD_HEADER 20 | #define GRUB_MACHINE_AT_KEYBOARD_HEADER 1 21 | 22 | #define KEYBOARD_REG_DATA 0xb4000060 23 | #define KEYBOARD_REG_STATUS 0xb4000064 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /include/grub/mips/qemu_mips/cmos.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CPU_CMOS_H 20 | #define GRUB_CPU_CMOS_H 1 21 | 22 | #include 23 | #include 24 | 25 | #define GRUB_CMOS_ADDR_REG 0xb4000070 26 | #define GRUB_CMOS_DATA_REG 0xb4000071 27 | #define GRUB_CMOS_ADDR_REG_HI 0xb4000072 28 | #define GRUB_CMOS_DATA_REG_HI 0xb4000073 29 | 30 | #endif /* GRUB_CPU_CMOS_H */ 31 | -------------------------------------------------------------------------------- /include/grub/mips/qemu_mips/console.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_MACHINE_CONSOLE_HEADER 20 | #define GRUB_MACHINE_CONSOLE_HEADER 1 21 | 22 | void grub_vga_text_init (void); 23 | void grub_vga_text_fini (void); 24 | 25 | #endif /* ! GRUB_MACHINE_CONSOLE_HEADER */ 26 | -------------------------------------------------------------------------------- /include/grub/mips/qemu_mips/kernel.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2005,2006,2007,2008,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_KERNEL_MACHINE_HEADER 20 | #define GRUB_KERNEL_MACHINE_HEADER 1 21 | 22 | #include 23 | 24 | #ifndef ASM_FILE 25 | 26 | void grub_qemu_init_cirrus (void); 27 | 28 | #endif 29 | 30 | #endif /* ! GRUB_KERNEL_MACHINE_HEADER */ 31 | -------------------------------------------------------------------------------- /include/grub/mips/qemu_mips/loader.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/include/grub/mips/qemu_mips/loader.h -------------------------------------------------------------------------------- /include/grub/mips/qemu_mips/serial.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_MACHINE_SERIAL_HEADER 20 | #define GRUB_MACHINE_SERIAL_HEADER 1 21 | 22 | #define GRUB_MACHINE_SERIAL_PORTS { 0xb40003f8 } 23 | 24 | #endif 25 | -------------------------------------------------------------------------------- /include/grub/mips/qemu_mips/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2003,2004,2005,2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef KERNEL_MACHINE_TIME_HEADER 20 | #define KERNEL_MACHINE_TIME_HEADER 1 21 | 22 | #include 23 | #include 24 | 25 | #endif /* ! KERNEL_MACHINE_TIME_HEADER */ 26 | -------------------------------------------------------------------------------- /include/grub/mips/setjmp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2002,2004,2006,2007,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_SETJMP_CPU_HEADER 20 | #define GRUB_SETJMP_CPU_HEADER 1 21 | 22 | typedef unsigned long grub_jmp_buf[11]; 23 | 24 | int grub_setjmp (grub_jmp_buf env) __attribute__ ((returns_twice)); 25 | void grub_longjmp (grub_jmp_buf env, int val) __attribute__ ((noreturn)); 26 | 27 | #endif /* ! GRUB_SETJMP_CPU_HEADER */ 28 | -------------------------------------------------------------------------------- /include/grub/net/netbuff.h: -------------------------------------------------------------------------------- 1 | #ifndef GRUB_NETBUFF_HEADER 2 | #define GRUB_NETBUFF_HEADER 3 | 4 | #include 5 | 6 | #define NETBUFF_ALIGN 2048 7 | #define NETBUFFMINLEN 64 8 | 9 | struct grub_net_buff 10 | { 11 | /* Pointer to the start of the buffer. */ 12 | grub_uint8_t *head; 13 | /* Pointer to the data. */ 14 | grub_uint8_t *data; 15 | /* Pointer to the tail. */ 16 | grub_uint8_t *tail; 17 | /* Pointer to the end of the buffer. */ 18 | grub_uint8_t *end; 19 | }; 20 | 21 | grub_err_t grub_netbuff_put (struct grub_net_buff *net_buff, grub_size_t len); 22 | grub_err_t grub_netbuff_unput (struct grub_net_buff *net_buff, grub_size_t len); 23 | grub_err_t grub_netbuff_push (struct grub_net_buff *net_buff, grub_size_t len); 24 | grub_err_t grub_netbuff_pull (struct grub_net_buff *net_buff, grub_size_t len); 25 | grub_err_t grub_netbuff_reserve (struct grub_net_buff *net_buff, grub_size_t len); 26 | grub_err_t grub_netbuff_clear (struct grub_net_buff *net_buff); 27 | struct grub_net_buff * grub_netbuff_alloc (grub_size_t len); 28 | void grub_netbuff_free (struct grub_net_buff *net_buff); 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /include/grub/powerpc/ieee1275/ieee1275.h: -------------------------------------------------------------------------------- 1 | /* ieee1275.h - Access the Open Firmware client interface. */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2003,2004,2005,2007 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #ifndef GRUB_IEEE1275_MACHINE_HEADER 21 | #define GRUB_IEEE1275_MACHINE_HEADER 1 22 | 23 | #include 24 | 25 | #define GRUB_IEEE1275_CELL_SIZEOF 4 26 | typedef grub_uint32_t grub_ieee1275_cell_t; 27 | 28 | #endif /* ! GRUB_IEEE1275_MACHINE_HEADER */ 29 | -------------------------------------------------------------------------------- /include/grub/powerpc/kernel.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2005,2006,2007,2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_KERNEL_CPU_HEADER 20 | #define GRUB_KERNEL_CPU_HEADER 1 21 | 22 | #endif 23 | -------------------------------------------------------------------------------- /include/grub/powerpc/setjmp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2002,2004,2006,2007,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_SETJMP_CPU_HEADER 20 | #define GRUB_SETJMP_CPU_HEADER 1 21 | 22 | typedef unsigned long grub_jmp_buf[20]; 23 | 24 | int grub_setjmp (grub_jmp_buf env) __attribute__ ((returns_twice)); 25 | void grub_longjmp (grub_jmp_buf env, int val) __attribute__ ((noreturn)); 26 | 27 | #endif /* ! GRUB_SETJMP_CPU_HEADER */ 28 | -------------------------------------------------------------------------------- /include/grub/powerpc/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef KERNEL_CPU_TIME_HEADER 20 | #define KERNEL_CPU_TIME_HEADER 1 21 | 22 | static __inline void 23 | grub_cpu_idle (void) 24 | { 25 | /* FIXME: not implemented */ 26 | } 27 | 28 | #endif /* ! KERNEL_CPU_TIME_HEADER */ 29 | -------------------------------------------------------------------------------- /include/grub/powerpc/types.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2002,2004,2006,2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_TYPES_CPU_HEADER 20 | #define GRUB_TYPES_CPU_HEADER 1 21 | 22 | /* The size of void *. */ 23 | #define GRUB_TARGET_SIZEOF_VOID_P 4 24 | 25 | /* The size of long. */ 26 | #define GRUB_TARGET_SIZEOF_LONG 4 27 | 28 | /* powerpc is big-endian. */ 29 | #define GRUB_TARGET_WORDS_BIGENDIAN 1 30 | 31 | 32 | #endif /* ! GRUB_TYPES_CPU_HEADER */ 33 | -------------------------------------------------------------------------------- /include/grub/reader.h: -------------------------------------------------------------------------------- 1 | /* reader.h - prototypes for command line reader. */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2009 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #ifndef GRUB_READER_HEADER 21 | #define GRUB_READER_HEADER 1 22 | 23 | #include 24 | 25 | typedef grub_err_t (*grub_reader_getline_t) (char **, int, void *); 26 | 27 | void grub_rescue_run (void) __attribute__ ((noreturn)); 28 | 29 | #endif /* ! GRUB_READER_HEADER */ 30 | -------------------------------------------------------------------------------- /include/grub/reed_solomon.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2010 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_REED_SOLOMON_HEADER 20 | #define GRUB_REED_SOLOMON_HEADER 1 21 | 22 | void 23 | grub_reed_solomon_add_redundancy (void *buffer, grub_size_t data_size, 24 | grub_size_t redundancy); 25 | 26 | void 27 | grub_reed_solomon_recover (void *buffer, grub_size_t data_size, 28 | grub_size_t redundancy); 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /include/grub/sdl.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2010 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | void EXPORT_FUNC (SDL_Quit) (void); 20 | void EXPORT_FUNC (SDL_SetColors) (void); 21 | void EXPORT_FUNC (SDL_Init) (void); 22 | void EXPORT_FUNC (SDL_GetError) (void); 23 | void EXPORT_FUNC (SDL_Flip) (void); 24 | void EXPORT_FUNC (SDL_SetVideoMode) (void); 25 | -------------------------------------------------------------------------------- /include/grub/sparc64/ieee1275/kernel.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2005,2007,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_KERNEL_MACHINE_HEADER 20 | #define GRUB_KERNEL_MACHINE_HEADER 1 21 | 22 | #define GRUB_KERNEL_MACHINE_STACK_SIZE 0x40000 23 | 24 | #ifndef ASM_FILE 25 | 26 | #include 27 | #include 28 | 29 | #endif /* ! ASM_FILE */ 30 | 31 | #endif /* ! GRUB_KERNEL_MACHINE_HEADER */ 32 | -------------------------------------------------------------------------------- /include/grub/sparc64/setjmp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2002,2004,2006,2007,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_SETJMP_CPU_HEADER 20 | #define GRUB_SETJMP_CPU_HEADER 1 21 | 22 | #include 23 | 24 | typedef grub_uint64_t grub_jmp_buf[3]; 25 | 26 | int grub_setjmp (grub_jmp_buf env) __attribute__ ((returns_twice)); 27 | void grub_longjmp (grub_jmp_buf env, int val) __attribute__ ((noreturn)); 28 | 29 | #endif /* ! GRUB_SETJMP_CPU_HEADER */ 30 | -------------------------------------------------------------------------------- /include/grub/sparc64/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef KERNEL_CPU_TIME_HEADER 20 | #define KERNEL_CPU_TIME_HEADER 1 21 | 22 | static __inline void 23 | grub_cpu_idle (void) 24 | { 25 | /* FIXME: not implemented */ 26 | } 27 | 28 | #endif /* ! KERNEL_CPU_TIME_HEADER */ 29 | -------------------------------------------------------------------------------- /include/grub/sparc64/types.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2002,2004,2006,2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_TYPES_CPU_HEADER 20 | #define GRUB_TYPES_CPU_HEADER 1 21 | 22 | /* The size of void *. */ 23 | #define GRUB_TARGET_SIZEOF_VOID_P 8 24 | 25 | /* The size of long. */ 26 | #define GRUB_TARGET_SIZEOF_LONG 8 27 | 28 | /* sparc64 is big-endian. */ 29 | #define GRUB_TARGET_WORDS_BIGENDIAN 1 30 | 31 | 32 | #endif /* ! GRUB_TYPES_CPU_HEADER */ 33 | -------------------------------------------------------------------------------- /include/grub/tparm.h: -------------------------------------------------------------------------------- 1 | /* tparm.h - parameter formatting of terminfo */ 2 | /* 3 | * GRUB -- GRand Unified Bootloader 4 | * Copyright (C) 2002,2005,2007 Free Software Foundation, Inc. 5 | * 6 | * GRUB is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * GRUB is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with GRUB. If not, see . 18 | */ 19 | 20 | #ifndef GRUB_TPARM_HEADER 21 | #define GRUB_TPARM_HEADER 1 22 | 23 | /* Function prototypes. */ 24 | const char *grub_terminfo_tparm (const char *string, ...); 25 | 26 | #endif /* ! GRUB_TPARM_HEADER */ 27 | -------------------------------------------------------------------------------- /include/grub/uboot/console.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2013 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_CONSOLE_MACHINE_HEADER 20 | #define GRUB_CONSOLE_MACHINE_HEADER 1 21 | 22 | /* Initialize the console system. */ 23 | void grub_console_init_early (void); 24 | void grub_console_init_lately (void); 25 | 26 | /* Exit the console system. */ 27 | void grub_console_fini (void); 28 | 29 | #endif /* ! GRUB_CONSOLE_MACHINE_HEADER */ 30 | -------------------------------------------------------------------------------- /include/grub/util/ofpath.h: -------------------------------------------------------------------------------- 1 | #ifndef GRUB_OFPATH_MACHINE_UTIL_HEADER 2 | #define GRUB_OFPATH_MACHINE_UTIL_HEADER 1 3 | 4 | char *grub_util_devname_to_ofpath (const char *devname); 5 | 6 | #endif /* ! GRUB_OFPATH_MACHINE_UTIL_HEADER */ 7 | -------------------------------------------------------------------------------- /include/grub/x86_64/at_keyboard.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/x86_64/efi/boot.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/include/grub/x86_64/efi/boot.h -------------------------------------------------------------------------------- /include/grub/x86_64/efi/loader.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2002,2003,2004,2006,2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_LOADER_MACHINE_HEADER 20 | #define GRUB_LOADER_MACHINE_HEADER 1 21 | 22 | #include 23 | #include 24 | 25 | 26 | #endif /* ! GRUB_LOADER_MACHINE_HEADER */ 27 | -------------------------------------------------------------------------------- /include/grub/x86_64/efi/memory.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/x86_64/efi/serial.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/x86_64/io.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | -------------------------------------------------------------------------------- /include/grub/x86_64/linux.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | -------------------------------------------------------------------------------- /include/grub/x86_64/macho.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/x86_64/memory.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/x86_64/multiboot.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/x86_64/pci.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2008 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #include 20 | -------------------------------------------------------------------------------- /include/grub/x86_64/relocator.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /include/grub/x86_64/setjmp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2003,2006,2007,2009 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef GRUB_SETJMP_CPU_HEADER 20 | #define GRUB_SETJMP_CPU_HEADER 1 21 | 22 | typedef unsigned long grub_jmp_buf[8]; 23 | 24 | int grub_setjmp (grub_jmp_buf env) __attribute__ ((returns_twice)); 25 | void grub_longjmp (grub_jmp_buf env, int val) __attribute__ ((noreturn)); 26 | 27 | #endif /* ! GRUB_SETJMP_CPU_HEADER */ 28 | -------------------------------------------------------------------------------- /include/grub/x86_64/time.h: -------------------------------------------------------------------------------- 1 | /* 2 | * GRUB -- GRand Unified Bootloader 3 | * Copyright (C) 2007 Free Software Foundation, Inc. 4 | * 5 | * GRUB is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * GRUB is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with GRUB. If not, see . 17 | */ 18 | 19 | #ifndef KERNEL_CPU_TIME_HEADER 20 | #define KERNEL_CPU_TIME_HEADER 1 21 | 22 | static __inline void 23 | grub_cpu_idle (void) 24 | { 25 | /* FIXME: this can't work until we handle interrupts. */ 26 | /* __asm__ __volatile__ ("hlt"); */ 27 | } 28 | 29 | #endif /* ! KERNEL_CPU_TIME_HEADER */ 30 | -------------------------------------------------------------------------------- /include/grub/x86_64/xnu.h: -------------------------------------------------------------------------------- 1 | #include 2 | -------------------------------------------------------------------------------- /linguas.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | rsync -Lrtvz --exclude=ko.po translationproject.org::tp/latest/grub/ po 4 | 5 | autogenerated="en@quot en@hebrew de@hebrew en@cyrillic en@greek en@arabic en@piglatin de_CH" 6 | 7 | 8 | for x in $autogenerated; do 9 | rm "po/$x.po"; 10 | done 11 | 12 | 13 | ( 14 | ( 15 | cd po && ls *.po| cut -d. -f1 16 | for x in $autogenerated; do 17 | echo "$x"; 18 | done 19 | ) | sort | uniq | xargs 20 | ) >po/LINGUAS 21 | -------------------------------------------------------------------------------- /m4/codeset.m4: -------------------------------------------------------------------------------- 1 | # codeset.m4 serial 5 (gettext-0.18.2) 2 | dnl Copyright (C) 2000-2002, 2006, 2008-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | dnl From Bruno Haible. 8 | 9 | AC_DEFUN([AM_LANGINFO_CODESET], 10 | [ 11 | AC_CACHE_CHECK([for nl_langinfo and CODESET], [am_cv_langinfo_codeset], 12 | [AC_LINK_IFELSE( 13 | [AC_LANG_PROGRAM( 14 | [[#include ]], 15 | [[char* cs = nl_langinfo(CODESET); return !cs;]])], 16 | [am_cv_langinfo_codeset=yes], 17 | [am_cv_langinfo_codeset=no]) 18 | ]) 19 | if test $am_cv_langinfo_codeset = yes; then 20 | AC_DEFINE([HAVE_LANGINFO_CODESET], [1], 21 | [Define if you have and nl_langinfo(CODESET).]) 22 | fi 23 | ]) 24 | -------------------------------------------------------------------------------- /m4/dirname.m4: -------------------------------------------------------------------------------- 1 | #serial 10 -*- autoconf -*- 2 | dnl Copyright (C) 2002-2006, 2009-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN([gl_DIRNAME], 8 | [ 9 | AC_REQUIRE([gl_DIRNAME_LGPL]) 10 | ]) 11 | 12 | AC_DEFUN([gl_DIRNAME_LGPL], 13 | [ 14 | dnl Prerequisites of lib/dirname.h. 15 | AC_REQUIRE([gl_DOUBLE_SLASH_ROOT]) 16 | 17 | dnl No prerequisites of lib/basename-lgpl.c, lib/dirname-lgpl.c, 18 | dnl lib/stripslash.c. 19 | ]) 20 | -------------------------------------------------------------------------------- /m4/eealloc.m4: -------------------------------------------------------------------------------- 1 | # eealloc.m4 serial 3 2 | dnl Copyright (C) 2003, 2009-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN([gl_EEALLOC], 8 | [ 9 | AC_REQUIRE([gl_EEMALLOC]) 10 | AC_REQUIRE([gl_EEREALLOC]) 11 | ]) 12 | 13 | AC_DEFUN([gl_EEMALLOC], 14 | [ 15 | _AC_FUNC_MALLOC_IF( 16 | [gl_cv_func_malloc_0_nonnull=1], 17 | [gl_cv_func_malloc_0_nonnull=0]) 18 | AC_DEFINE_UNQUOTED([MALLOC_0_IS_NONNULL], [$gl_cv_func_malloc_0_nonnull], 19 | [If malloc(0) is != NULL, define this to 1. Otherwise define this 20 | to 0.]) 21 | ]) 22 | 23 | AC_DEFUN([gl_EEREALLOC], 24 | [ 25 | _AC_FUNC_REALLOC_IF( 26 | [gl_cv_func_realloc_0_nonnull=1], 27 | [gl_cv_func_realloc_0_nonnull=0]) 28 | AC_DEFINE_UNQUOTED([REALLOC_0_IS_NONNULL], [$gl_cv_func_realloc_0_nonnull], 29 | [If realloc(NULL,0) is != NULL, define this to 1. Otherwise define this 30 | to 0.]) 31 | ]) 32 | -------------------------------------------------------------------------------- /m4/error.m4: -------------------------------------------------------------------------------- 1 | #serial 14 2 | 3 | # Copyright (C) 1996-1998, 2001-2004, 2009-2013 Free Software Foundation, Inc. 4 | # 5 | # This file is free software; the Free Software Foundation 6 | # gives unlimited permission to copy and/or distribute it, 7 | # with or without modifications, as long as this notice is preserved. 8 | 9 | AC_DEFUN([gl_ERROR], 10 | [ 11 | dnl We don't use AC_FUNC_ERROR_AT_LINE any more, because it is no longer 12 | dnl maintained in Autoconf and because it invokes AC_LIBOBJ. 13 | AC_CACHE_CHECK([for error_at_line], [ac_cv_lib_error_at_line], 14 | [AC_LINK_IFELSE( 15 | [AC_LANG_PROGRAM( 16 | [[#include ]], 17 | [[error_at_line (0, 0, "", 0, "an error occurred");]])], 18 | [ac_cv_lib_error_at_line=yes], 19 | [ac_cv_lib_error_at_line=no])]) 20 | ]) 21 | 22 | # Prerequisites of lib/error.c. 23 | AC_DEFUN([gl_PREREQ_ERROR], 24 | [ 25 | AC_REQUIRE([AC_FUNC_STRERROR_R]) 26 | : 27 | ]) 28 | -------------------------------------------------------------------------------- /m4/glibc2.m4: -------------------------------------------------------------------------------- 1 | # glibc2.m4 serial 3 2 | dnl Copyright (C) 2000-2002, 2004, 2008, 2010-2013 Free Software Foundation, 3 | dnl Inc. 4 | dnl This file is free software; the Free Software Foundation 5 | dnl gives unlimited permission to copy and/or distribute it, 6 | dnl with or without modifications, as long as this notice is preserved. 7 | 8 | # Test for the GNU C Library, version 2.0 or newer. 9 | # From Bruno Haible. 10 | 11 | AC_DEFUN([gt_GLIBC2], 12 | [ 13 | AC_CACHE_CHECK([whether we are using the GNU C Library 2 or newer], 14 | [ac_cv_gnu_library_2], 15 | [AC_EGREP_CPP([Lucky GNU user], 16 | [ 17 | #include 18 | #ifdef __GNU_LIBRARY__ 19 | #if (__GLIBC__ >= 2) && !defined __UCLIBC__ 20 | Lucky GNU user 21 | #endif 22 | #endif 23 | ], 24 | [ac_cv_gnu_library_2=yes], 25 | [ac_cv_gnu_library_2=no]) 26 | ] 27 | ) 28 | AC_SUBST([GLIBC2]) 29 | GLIBC2="$ac_cv_gnu_library_2" 30 | ] 31 | ) 32 | -------------------------------------------------------------------------------- /m4/glibc21.m4: -------------------------------------------------------------------------------- 1 | # glibc21.m4 serial 5 2 | dnl Copyright (C) 2000-2002, 2004, 2008, 2010-2013 Free Software Foundation, 3 | dnl Inc. 4 | dnl This file is free software; the Free Software Foundation 5 | dnl gives unlimited permission to copy and/or distribute it, 6 | dnl with or without modifications, as long as this notice is preserved. 7 | 8 | # Test for the GNU C Library, version 2.1 or newer, or uClibc. 9 | # From Bruno Haible. 10 | 11 | AC_DEFUN([gl_GLIBC21], 12 | [ 13 | AC_CACHE_CHECK([whether we are using the GNU C Library >= 2.1 or uClibc], 14 | [ac_cv_gnu_library_2_1], 15 | [AC_EGREP_CPP([Lucky], 16 | [ 17 | #include 18 | #ifdef __GNU_LIBRARY__ 19 | #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) 20 | Lucky GNU user 21 | #endif 22 | #endif 23 | #ifdef __UCLIBC__ 24 | Lucky user 25 | #endif 26 | ], 27 | [ac_cv_gnu_library_2_1=yes], 28 | [ac_cv_gnu_library_2_1=no]) 29 | ] 30 | ) 31 | AC_SUBST([GLIBC21]) 32 | GLIBC21="$ac_cv_gnu_library_2_1" 33 | ] 34 | ) 35 | -------------------------------------------------------------------------------- /m4/intldir.m4: -------------------------------------------------------------------------------- 1 | # intldir.m4 serial 2 (gettext-0.18) 2 | dnl Copyright (C) 2006, 2009-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | dnl 7 | dnl This file can can be used in projects which are not available under 8 | dnl the GNU General Public License or the GNU Library General Public 9 | dnl License but which still want to provide support for the GNU gettext 10 | dnl functionality. 11 | dnl Please note that the actual code of the GNU gettext library is covered 12 | dnl by the GNU Library General Public License, and the rest of the GNU 13 | dnl gettext package package is covered by the GNU General Public License. 14 | dnl They are *not* in the public domain. 15 | 16 | AC_PREREQ([2.52]) 17 | 18 | dnl Tells the AM_GNU_GETTEXT macro to consider an intl/ directory. 19 | AC_DEFUN([AM_GNU_GETTEXT_INTL_SUBDIR], []) 20 | -------------------------------------------------------------------------------- /m4/inttypes_h.m4: -------------------------------------------------------------------------------- 1 | # inttypes_h.m4 serial 10 2 | dnl Copyright (C) 1997-2004, 2006, 2008-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | dnl From Paul Eggert. 8 | 9 | # Define HAVE_INTTYPES_H_WITH_UINTMAX if exists, 10 | # doesn't clash with , and declares uintmax_t. 11 | 12 | AC_DEFUN([gl_AC_HEADER_INTTYPES_H], 13 | [ 14 | AC_CACHE_CHECK([for inttypes.h], [gl_cv_header_inttypes_h], 15 | [AC_COMPILE_IFELSE( 16 | [AC_LANG_PROGRAM( 17 | [[ 18 | #include 19 | #include 20 | ]], 21 | [[uintmax_t i = (uintmax_t) -1; return !i;]])], 22 | [gl_cv_header_inttypes_h=yes], 23 | [gl_cv_header_inttypes_h=no])]) 24 | if test $gl_cv_header_inttypes_h = yes; then 25 | AC_DEFINE_UNQUOTED([HAVE_INTTYPES_H_WITH_UINTMAX], [1], 26 | [Define if exists, doesn't clash with , 27 | and declares uintmax_t. ]) 28 | fi 29 | ]) 30 | -------------------------------------------------------------------------------- /m4/localcharset.m4: -------------------------------------------------------------------------------- 1 | # localcharset.m4 serial 7 2 | dnl Copyright (C) 2002, 2004, 2006, 2009-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN([gl_LOCALCHARSET], 8 | [ 9 | dnl Prerequisites of lib/localcharset.c. 10 | AC_REQUIRE([AM_LANGINFO_CODESET]) 11 | AC_REQUIRE([gl_FCNTL_O_FLAGS]) 12 | AC_CHECK_DECLS_ONCE([getc_unlocked]) 13 | 14 | dnl Prerequisites of the lib/Makefile.am snippet. 15 | AC_REQUIRE([AC_CANONICAL_HOST]) 16 | AC_REQUIRE([gl_GLIBC21]) 17 | ]) 18 | -------------------------------------------------------------------------------- /m4/localeconv.m4: -------------------------------------------------------------------------------- 1 | # localeconv.m4 serial 1 2 | dnl Copyright (C) 2012-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN([gl_FUNC_LOCALECONV], 8 | [ 9 | AC_REQUIRE([gl_LOCALE_H_DEFAULTS]) 10 | AC_REQUIRE([gl_LOCALE_H]) 11 | 12 | if test $REPLACE_STRUCT_LCONV = 1; then 13 | REPLACE_LOCALECONV=1 14 | fi 15 | ]) 16 | 17 | # Prerequisites of lib/localeconv.c. 18 | AC_DEFUN([gl_PREREQ_LOCALECONV], 19 | [ 20 | AC_CHECK_MEMBERS([struct lconv.decimal_point], [], [], 21 | [[#include ]]) 22 | ]) 23 | -------------------------------------------------------------------------------- /m4/mbtowc.m4: -------------------------------------------------------------------------------- 1 | # mbtowc.m4 serial 2 2 | dnl Copyright (C) 2011-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN([gl_FUNC_MBTOWC], 8 | [ 9 | AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) 10 | 11 | if false; then 12 | REPLACE_MBTOWC=1 13 | fi 14 | ]) 15 | 16 | # Prerequisites of lib/mbtowc.c. 17 | AC_DEFUN([gl_PREREQ_MBTOWC], [ 18 | : 19 | ]) 20 | -------------------------------------------------------------------------------- /m4/mempcpy.m4: -------------------------------------------------------------------------------- 1 | # mempcpy.m4 serial 11 2 | dnl Copyright (C) 2003-2004, 2006-2007, 2009-2013 Free Software Foundation, 3 | dnl Inc. 4 | dnl This file is free software; the Free Software Foundation 5 | dnl gives unlimited permission to copy and/or distribute it, 6 | dnl with or without modifications, as long as this notice is preserved. 7 | 8 | AC_DEFUN([gl_FUNC_MEMPCPY], 9 | [ 10 | dnl Persuade glibc to declare mempcpy(). 11 | AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) 12 | 13 | dnl The mempcpy() declaration in lib/string.in.h uses 'restrict'. 14 | AC_REQUIRE([AC_C_RESTRICT]) 15 | 16 | AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) 17 | AC_CHECK_FUNCS([mempcpy]) 18 | if test $ac_cv_func_mempcpy = no; then 19 | HAVE_MEMPCPY=0 20 | fi 21 | ]) 22 | 23 | # Prerequisites of lib/mempcpy.c. 24 | AC_DEFUN([gl_PREREQ_MEMPCPY], [ 25 | : 26 | ]) 27 | -------------------------------------------------------------------------------- /m4/msvc-inval.m4: -------------------------------------------------------------------------------- 1 | # msvc-inval.m4 serial 1 2 | dnl Copyright (C) 2011-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN([gl_MSVC_INVAL], 8 | [ 9 | AC_CHECK_FUNCS_ONCE([_set_invalid_parameter_handler]) 10 | if test $ac_cv_func__set_invalid_parameter_handler = yes; then 11 | HAVE_MSVC_INVALID_PARAMETER_HANDLER=1 12 | AC_DEFINE([HAVE_MSVC_INVALID_PARAMETER_HANDLER], [1], 13 | [Define to 1 on MSVC platforms that have the "invalid parameter handler" 14 | concept.]) 15 | else 16 | HAVE_MSVC_INVALID_PARAMETER_HANDLER=0 17 | fi 18 | AC_SUBST([HAVE_MSVC_INVALID_PARAMETER_HANDLER]) 19 | ]) 20 | -------------------------------------------------------------------------------- /m4/msvc-nothrow.m4: -------------------------------------------------------------------------------- 1 | # msvc-nothrow.m4 serial 1 2 | dnl Copyright (C) 2011-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN([gl_MSVC_NOTHROW], 8 | [ 9 | AC_REQUIRE([gl_MSVC_INVAL]) 10 | ]) 11 | -------------------------------------------------------------------------------- /m4/off_t.m4: -------------------------------------------------------------------------------- 1 | # off_t.m4 serial 1 2 | dnl Copyright (C) 2012-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | dnl Check whether to override the 'off_t' type. 8 | dnl Set WINDOWS_64_BIT_OFF_T. 9 | 10 | AC_DEFUN([gl_TYPE_OFF_T], 11 | [ 12 | m4_ifdef([gl_LARGEFILE], [ 13 | AC_REQUIRE([gl_LARGEFILE]) 14 | ], [ 15 | WINDOWS_64_BIT_OFF_T=0 16 | ]) 17 | AC_SUBST([WINDOWS_64_BIT_OFF_T]) 18 | ]) 19 | -------------------------------------------------------------------------------- /m4/rawmemchr.m4: -------------------------------------------------------------------------------- 1 | # rawmemchr.m4 serial 2 2 | dnl Copyright (C) 2003, 2007-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN([gl_FUNC_RAWMEMCHR], 8 | [ 9 | dnl Persuade glibc to declare rawmemchr(). 10 | AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) 11 | 12 | AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) 13 | AC_CHECK_FUNCS([rawmemchr]) 14 | if test $ac_cv_func_rawmemchr = no; then 15 | HAVE_RAWMEMCHR=0 16 | fi 17 | ]) 18 | 19 | # Prerequisites of lib/strchrnul.c. 20 | AC_DEFUN([gl_PREREQ_RAWMEMCHR], [:]) 21 | -------------------------------------------------------------------------------- /m4/ssize_t.m4: -------------------------------------------------------------------------------- 1 | # ssize_t.m4 serial 5 (gettext-0.18.2) 2 | dnl Copyright (C) 2001-2003, 2006, 2010-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | dnl From Bruno Haible. 8 | dnl Test whether ssize_t is defined. 9 | 10 | AC_DEFUN([gt_TYPE_SSIZE_T], 11 | [ 12 | AC_CACHE_CHECK([for ssize_t], [gt_cv_ssize_t], 13 | [AC_COMPILE_IFELSE( 14 | [AC_LANG_PROGRAM( 15 | [[#include ]], 16 | [[int x = sizeof (ssize_t *) + sizeof (ssize_t); 17 | return !x;]])], 18 | [gt_cv_ssize_t=yes], [gt_cv_ssize_t=no])]) 19 | if test $gt_cv_ssize_t = no; then 20 | AC_DEFINE([ssize_t], [int], 21 | [Define as a signed type of the same size as size_t.]) 22 | fi 23 | ]) 24 | -------------------------------------------------------------------------------- /m4/stdint_h.m4: -------------------------------------------------------------------------------- 1 | # stdint_h.m4 serial 9 2 | dnl Copyright (C) 1997-2004, 2006, 2008-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | dnl From Paul Eggert. 8 | 9 | # Define HAVE_STDINT_H_WITH_UINTMAX if exists, 10 | # doesn't clash with , and declares uintmax_t. 11 | 12 | AC_DEFUN([gl_AC_HEADER_STDINT_H], 13 | [ 14 | AC_CACHE_CHECK([for stdint.h], [gl_cv_header_stdint_h], 15 | [AC_COMPILE_IFELSE( 16 | [AC_LANG_PROGRAM( 17 | [[#include 18 | #include ]], 19 | [[uintmax_t i = (uintmax_t) -1; return !i;]])], 20 | [gl_cv_header_stdint_h=yes], 21 | [gl_cv_header_stdint_h=no])]) 22 | if test $gl_cv_header_stdint_h = yes; then 23 | AC_DEFINE_UNQUOTED([HAVE_STDINT_H_WITH_UINTMAX], [1], 24 | [Define if exists, doesn't clash with , 25 | and declares uintmax_t. ]) 26 | fi 27 | ]) 28 | -------------------------------------------------------------------------------- /m4/strnlen.m4: -------------------------------------------------------------------------------- 1 | # strnlen.m4 serial 13 2 | dnl Copyright (C) 2002-2003, 2005-2007, 2009-2013 Free Software Foundation, 3 | dnl Inc. 4 | dnl This file is free software; the Free Software Foundation 5 | dnl gives unlimited permission to copy and/or distribute it, 6 | dnl with or without modifications, as long as this notice is preserved. 7 | 8 | AC_DEFUN([gl_FUNC_STRNLEN], 9 | [ 10 | AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) 11 | 12 | dnl Persuade glibc to declare strnlen(). 13 | AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) 14 | 15 | AC_CHECK_DECLS_ONCE([strnlen]) 16 | if test $ac_cv_have_decl_strnlen = no; then 17 | HAVE_DECL_STRNLEN=0 18 | else 19 | m4_pushdef([AC_LIBOBJ], [:]) 20 | dnl Note: AC_FUNC_STRNLEN does AC_LIBOBJ([strnlen]). 21 | AC_FUNC_STRNLEN 22 | m4_popdef([AC_LIBOBJ]) 23 | if test $ac_cv_func_strnlen_working = no; then 24 | REPLACE_STRNLEN=1 25 | fi 26 | fi 27 | ]) 28 | 29 | # Prerequisites of lib/strnlen.c. 30 | AC_DEFUN([gl_PREREQ_STRNLEN], [:]) 31 | -------------------------------------------------------------------------------- /m4/sys_types_h.m4: -------------------------------------------------------------------------------- 1 | # sys_types_h.m4 serial 5 2 | dnl Copyright (C) 2011-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN_ONCE([gl_SYS_TYPES_H], 8 | [ 9 | AC_REQUIRE([gl_SYS_TYPES_H_DEFAULTS]) 10 | gl_NEXT_HEADERS([sys/types.h]) 11 | 12 | dnl Ensure the type pid_t gets defined. 13 | AC_REQUIRE([AC_TYPE_PID_T]) 14 | 15 | dnl Ensure the type mode_t gets defined. 16 | AC_REQUIRE([AC_TYPE_MODE_T]) 17 | 18 | dnl Whether to override the 'off_t' type. 19 | AC_REQUIRE([gl_TYPE_OFF_T]) 20 | ]) 21 | 22 | AC_DEFUN([gl_SYS_TYPES_H_DEFAULTS], 23 | [ 24 | ]) 25 | -------------------------------------------------------------------------------- /m4/wchar_t.m4: -------------------------------------------------------------------------------- 1 | # wchar_t.m4 serial 4 (gettext-0.18.2) 2 | dnl Copyright (C) 2002-2003, 2008-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | dnl From Bruno Haible. 8 | dnl Test whether has the 'wchar_t' type. 9 | dnl Prerequisite: AC_PROG_CC 10 | 11 | AC_DEFUN([gt_TYPE_WCHAR_T], 12 | [ 13 | AC_CACHE_CHECK([for wchar_t], [gt_cv_c_wchar_t], 14 | [AC_COMPILE_IFELSE( 15 | [AC_LANG_PROGRAM( 16 | [[#include 17 | wchar_t foo = (wchar_t)'\0';]], 18 | [[]])], 19 | [gt_cv_c_wchar_t=yes], 20 | [gt_cv_c_wchar_t=no])]) 21 | if test $gt_cv_c_wchar_t = yes; then 22 | AC_DEFINE([HAVE_WCHAR_T], [1], [Define if you have the 'wchar_t' type.]) 23 | fi 24 | ]) 25 | -------------------------------------------------------------------------------- /m4/wint_t.m4: -------------------------------------------------------------------------------- 1 | # wint_t.m4 serial 5 (gettext-0.18.2) 2 | dnl Copyright (C) 2003, 2007-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | dnl From Bruno Haible. 8 | dnl Test whether has the 'wint_t' type. 9 | dnl Prerequisite: AC_PROG_CC 10 | 11 | AC_DEFUN([gt_TYPE_WINT_T], 12 | [ 13 | AC_CACHE_CHECK([for wint_t], [gt_cv_c_wint_t], 14 | [AC_COMPILE_IFELSE( 15 | [AC_LANG_PROGRAM( 16 | [[ 17 | /* Tru64 with Desktop Toolkit C has a bug: must be included before 18 | . 19 | BSD/OS 4.0.1 has a bug: , and must be included 20 | before . */ 21 | #include 22 | #include 23 | #include 24 | #include 25 | wint_t foo = (wchar_t)'\0';]], 26 | [[]])], 27 | [gt_cv_c_wint_t=yes], 28 | [gt_cv_c_wint_t=no])]) 29 | if test $gt_cv_c_wint_t = yes; then 30 | AC_DEFINE([HAVE_WINT_T], [1], [Define if you have the 'wint_t' type.]) 31 | fi 32 | ]) 33 | -------------------------------------------------------------------------------- /m4/xsize.m4: -------------------------------------------------------------------------------- 1 | # xsize.m4 serial 5 2 | dnl Copyright (C) 2003-2004, 2008-2013 Free Software Foundation, Inc. 3 | dnl This file is free software; the Free Software Foundation 4 | dnl gives unlimited permission to copy and/or distribute it, 5 | dnl with or without modifications, as long as this notice is preserved. 6 | 7 | AC_DEFUN([gl_XSIZE], 8 | [ 9 | dnl Prerequisites of lib/xsize.h. 10 | AC_REQUIRE([gl_SIZE_MAX]) 11 | AC_CHECK_HEADERS([stdint.h]) 12 | ]) 13 | -------------------------------------------------------------------------------- /po/README: -------------------------------------------------------------------------------- 1 | 2 | If you checked out this source tree directly from GRUB Bazaar, you might 3 | be wondering where are the POT and PO files. Here are some instructions 4 | that will hopefully clarify the situation. 5 | 6 | - If you're a user or a distributor, simply fill the po directory by 7 | importing translations from the Translation Project: 8 | 9 | ./linguas.sh 10 | 11 | GRUB's build system will automatically detect those and include them 12 | in your install. 13 | 14 | - If you're a translator and want to add a new translation or improve an 15 | existing one, get in touch with the Translation Project 16 | (http://translationproject.org/). The GRUB project doesn't interact 17 | with translators directly (but we dearly appreciate your work!). 18 | 19 | - If you're a developer adding/removing/modifiing translatable strings, 20 | you can check that these turn into a sane POT file by using the 21 | `po/grub.pot' make rule. 22 | 23 | - If you're the maintainer of GNU GRUB preparing a new release, don't 24 | forget to include the latest PO files in your source tarball! 25 | -------------------------------------------------------------------------------- /po/Rules-swiss: -------------------------------------------------------------------------------- 1 | # Special Makefile rules for transforming German typography into Swiss one. 2 | 3 | DISTFILES.common.extra2 = swiss.sed Rules-swiss 4 | 5 | de_CH.po-create: de.po swiss.sed 6 | LC_ALL=C.UTF-8 $(MSGFILTER) -i $< -o $(srcdir)/de_CH.po sed -f $(srcdir)/swiss.sed 7 | 8 | -------------------------------------------------------------------------------- /po/boldquot.sed: -------------------------------------------------------------------------------- 1 | s/"\([^"]*\)"/“\1”/g 2 | s/`\([^`']*\)'/‘\1’/g 3 | s/ '\([^`']*\)' / ‘\1’ /g 4 | s/ '\([^`']*\)'$/ ‘\1’/g 5 | s/^'\([^`']*\)' /‘\1’ /g 6 | s/“”/""/g 7 | s/“/“/g 8 | s/”/”/g 9 | s/‘/‘/g 10 | s/’/’/g 11 | -------------------------------------------------------------------------------- /po/cyrillic.sed: -------------------------------------------------------------------------------- 1 | /^Project-Id-Version:/ b 2 | /^Report-Msgid-Bugs-To:/ b 3 | /^POT-Creation-Date:/ b 4 | /^PO-Revision-Date:/ b 5 | /^Last-Translator:/ b 6 | /^Language-Team:/ b 7 | /^Language:/ b 8 | /^MIME-Version:/ b 9 | /^Content-Type:/ b 10 | /^Content-Transfer-Encoding:/ b 11 | /^Plural-Forms:/ b 12 | 13 | y,abcdefghijklmnopqrstuvwxyz,абцдефгхийклмнопќрстувўѯѝз, 14 | y,ABCDEFGHIJKLMNOPQRSTUVWXYZ,АБЦДЕФГХИЙКЛМНОПЌРСТУВЎѮЍЗ, 15 | 16 | s,%\([0-9]*\)Ц,%\1C,g 17 | s,%\([0-9]*\)ц,%\1c,g 18 | s,%\([0-9]*\)д,%\1d,g 19 | s,%\([0-9]*\)лд,%\1ld,g 20 | s,%\([0-9]*\)ллд,%\1lld,g 21 | 22 | s,%\([0-9\.\*]*\)с,%\1s,g 23 | s,%\([0-9]*\)лу,%\1lu,g 24 | s,%\([0-9]*\)у,%\1u,g 25 | s,%\([0-9]*\)ллу,%\1llu,g 26 | s,%\([0-9]*\)ѯ,%\1x,g 27 | s,%\([0-9]*\)лѯ,%\1lx,g 28 | s,%\([0-9]*\)ллѯ,%\1llx,g 29 | -------------------------------------------------------------------------------- /po/en@piglatin.header: -------------------------------------------------------------------------------- 1 | # This catalog in addition to fixing quoting like en@quot translates the 2 | # messages into Pig Latin. Can be useful for testing that all strings are 3 | # marked even before any translation is available or without knowing any 4 | # specific language besides English. 5 | -------------------------------------------------------------------------------- /po/exclude.pot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/po/exclude.pot -------------------------------------------------------------------------------- /po/greek.sed: -------------------------------------------------------------------------------- 1 | /^Project-Id-Version:/ b 2 | /^Report-Msgid-Bugs-To:/ b 3 | /^POT-Creation-Date:/ b 4 | /^PO-Revision-Date:/ b 5 | /^Last-Translator:/ b 6 | /^Language-Team:/ b 7 | /^Language:/ b 8 | /^MIME-Version:/ b 9 | /^Content-Type:/ b 10 | /^Content-Transfer-Encoding:/ b 11 | /^Plural-Forms:/ b 12 | 13 | s,%\([0-9]*\)C,%\1#,g 14 | 15 | y,abcdefghijklmnopqrstuvwxyz,αϭϲδεφγχιϊκλμνοπϗρστυβωξϋζ, 16 | y,ABCDEFGHIJKLMNOPQRSTUVWXYZ,ΑϬϲΔΕΦΓΧΙΪΚΛΜΝΟΠϏΡΣΤΥΒΩΞΫΖ, 17 | 18 | s,%\([0-9]*\)#,%\1C,g 19 | s,%\([0-9]*\)ϲ,%\1c,g 20 | s,%\([0-9]*\)δ,%\1d,g 21 | s,%\([0-9]*\)λδ,%\1ld,g 22 | s,%\([0-9]*\)λλδ,%\1lld,g 23 | 24 | s,%\([0-9\.\*]*\)σ,%\1s,g 25 | s,%\([0-9]*\)λυ,%\1lu,g 26 | s,%\([0-9]*\)υ,%\1u,g 27 | s,%\([0-9]*\)λλυ,%\1llu,g 28 | s,%\([0-9]*\)ξ,%\1x,g 29 | s,%\([0-9]*\)λξ,%\1lx,g 30 | s,%\([0-9]*\)λλξ,%\1llx,g 31 | -------------------------------------------------------------------------------- /po/grub.d.sed: -------------------------------------------------------------------------------- 1 | /^#: util\/grub\.d\//a\ 2 | #, c-format 3 | -------------------------------------------------------------------------------- /po/insert-header.sin: -------------------------------------------------------------------------------- 1 | # Sed script that inserts the file called HEADER before the header entry. 2 | # 3 | # At each occurrence of a line starting with "msgid ", we execute the following 4 | # commands. At the first occurrence, insert the file. At the following 5 | # occurrences, do nothing. The distinction between the first and the following 6 | # occurrences is achieved by looking at the hold space. 7 | /^msgid /{ 8 | x 9 | # Test if the hold space is empty. 10 | s/m/m/ 11 | ta 12 | # Yes it was empty. First occurrence. Read the file. 13 | r HEADER 14 | # Output the file's contents by reading the next line. But don't lose the 15 | # current line while doing this. 16 | g 17 | N 18 | bb 19 | :a 20 | # The hold space was nonempty. Following occurrences. Do nothing. 21 | x 22 | :b 23 | } 24 | -------------------------------------------------------------------------------- /po/piglatin.sed: -------------------------------------------------------------------------------- 1 | /^Project-Id-Version:/ b 2 | /^Report-Msgid-Bugs-To:/ b 3 | /^POT-Creation-Date:/ b 4 | /^PO-Revision-Date:/ b 5 | /^Last-Translator:/ b 6 | /^Language-Team:/ b 7 | /^Language:/ b 8 | /^MIME-Version:/ b 9 | /^Content-Type:/ b 10 | /^Content-Transfer-Encoding:/ b 11 | /^Plural-Forms:/ b 12 | 13 | s/"\([^"]*\)"/“\1”/g 14 | s/`\([^`']*\)'/‘\1’/g 15 | s/ '\([^`']*\)' / ‘\1’ /g 16 | s/ '\([^`']*\)'$/ ‘\1’/g 17 | s/^'\([^`']*\)' /‘\1’ /g 18 | s/“”/""/g 19 | 20 | s,\(^\|[^a-zA-Z0-9%\\]\)\([aoeuiAOEUI]\)\([a-zA-Z]*\),\1\2\3way,g 21 | s,\(^\|[^a-zA-Z0-9%\\]\)\([bcdfghj-np-tvwxzBCDFGHJ-NP-TVWXZ][bcdfghj-np-tvwxzBCDFGHJ-NP-TVWXZ]*\)\([a-zA-Z]*\),\1\3\2ay,g 22 | -------------------------------------------------------------------------------- /po/quot.sed: -------------------------------------------------------------------------------- 1 | s/"\([^"]*\)"/“\1”/g 2 | s/`\([^`']*\)'/‘\1’/g 3 | s/ '\([^`']*\)' / ‘\1’ /g 4 | s/ '\([^`']*\)'$/ ‘\1’/g 5 | s/^'\([^`']*\)' /‘\1’ /g 6 | s/“”/""/g 7 | -------------------------------------------------------------------------------- /po/remove-potcdate.sin: -------------------------------------------------------------------------------- 1 | # Sed script that remove the POT-Creation-Date line in the header entry 2 | # from a POT file. 3 | # 4 | # The distinction between the first and the following occurrences of the 5 | # pattern is achieved by looking at the hold space. 6 | /^"POT-Creation-Date: .*"$/{ 7 | x 8 | # Test if the hold space is empty. 9 | s/P/P/ 10 | ta 11 | # Yes it was empty. First occurrence. Remove the line. 12 | g 13 | d 14 | bb 15 | :a 16 | # The hold space was nonempty. Following occurrences. Do nothing. 17 | x 18 | :b 19 | } 20 | -------------------------------------------------------------------------------- /po/swiss.sed: -------------------------------------------------------------------------------- 1 | s,ß,ss,g 2 | y,»«,«», 3 | -------------------------------------------------------------------------------- /tests/dfly-mbr-mbexample.dfly.img.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/tests/dfly-mbr-mbexample.dfly.img.gz -------------------------------------------------------------------------------- /tests/dfly-mbr-mbexample.mbr.img.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/tests/dfly-mbr-mbexample.mbr.img.gz -------------------------------------------------------------------------------- /tests/example_grub_script_test.in: -------------------------------------------------------------------------------- 1 | #! @builddir@/grub-shell-tester --modules=echo 2 | 3 | echo "hello world" 4 | -------------------------------------------------------------------------------- /tests/example_scripted_test.in: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | true 5 | -------------------------------------------------------------------------------- /tests/grub_cmd_date.in: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | set -e 3 | 4 | . "@builddir@/grub-core/modinfo.sh" 5 | 6 | # FIXME: OpenBIOS on sparc64 doesn't implement RTC 7 | if [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = sparc64-ieee1275 ]; then 8 | exit 0 9 | fi 10 | 11 | pdt="$(date -u +%s)" 12 | dt=`echo date | @builddir@/grub-shell` 13 | dtg="$(date -u -d "$dt" +%s)" 14 | ndt="$(date -u +%s)" 15 | 16 | if [ $pdt -gt $dtg ] || [ $dtg -gt $ndt ]; then 17 | echo "Date not in range: $pdt <= $dtg <= $ndt" 18 | exit 1 19 | fi 20 | 21 | pdt="$(date -u +%s)" 22 | dt=`echo 'insmod datehook; echo $YEAR-$MONTH-$DAY $HOUR:$MINUTE:$SECOND' | @builddir@/grub-shell` 23 | dtg="$(date -u -d "$dt" +%s)" 24 | ndt="$(date -u +%s)" 25 | 26 | if [ $pdt -gt $dtg ] || [ $dtg -gt $ndt ]; then 27 | echo "Date not in range: $pdt <= $dtg <= $ndt" 28 | exit 1 29 | fi 30 | -------------------------------------------------------------------------------- /tests/grub_cmd_echo.in: -------------------------------------------------------------------------------- 1 | #! @builddir@/grub-shell-tester 2 | # 3 | # Copyright (C) 2010 Free Software Foundation, Inc. 4 | # 5 | # GRUB is free software: you can redistribute it and/or modify 6 | # it under the terms of the GNU General Public License as published by 7 | # the Free Software Foundation, either version 3 of the License, or 8 | # (at your option) any later version. 9 | # 10 | # GRUB is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU General Public License 16 | # along with GRUB. If not, see . 17 | 18 | echo 19 | echo -n 20 | 21 | echo foo 22 | echo foo bar 23 | 24 | echo -n foo 25 | 26 | echo -e "foo\nbar" 27 | 28 | echo -n -e "foo\nbar" 29 | 30 | echo foo -n 31 | echo foo -n -e 32 | 33 | echo ------- 34 | 35 | if test -n "$grubshell"; then insmod regexp; fi 36 | 37 | echo '*' 38 | echo "*" 39 | 40 | foo="*" 41 | echo "$foo" 42 | -------------------------------------------------------------------------------- /tests/grub_cmd_set_date.in: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | set -e 3 | 4 | . "@builddir@/grub-core/modinfo.sh" 5 | 6 | case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in 7 | # FIXME: OpenBIOS on sparc64 doesn't implement RTC 8 | sparc64-ieee1275) 9 | exit 0;; 10 | # PLATFORM: ARC doesn't provide any way to set time 11 | *-arc) 12 | exit 0;; 13 | # PLATFORM: EMU doesn't provide any way to set time 14 | # Even if it did we'd need some kind of sandbox to avoid 15 | # modifying real system time. 16 | *-emu) 17 | exit 0;; 18 | esac 19 | 20 | out=$(cat <. 17 | 18 | echo a###b 19 | echo a# #b 20 | 21 | echo # 22 | echo \# 23 | 24 | echo '#' 25 | echo "#" 26 | 27 | echo '\#' 28 | echo "\#" 29 | -------------------------------------------------------------------------------- /tests/grub_script_dollar.in: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | set -e 3 | 4 | @builddir@/grub-script-check << EOF 5 | echo "\\\$" 6 | EOF 7 | -------------------------------------------------------------------------------- /tests/grub_script_echo_keywords.in: -------------------------------------------------------------------------------- 1 | #! @builddir@/grub-shell-tester 2 | 3 | echo if then else fi for do done 4 | -------------------------------------------------------------------------------- /tests/grub_script_escape_comma.in: -------------------------------------------------------------------------------- 1 | #! @builddir@/grub-shell-tester 2 | 3 | x=1\\,1 4 | echo $x 5 | y='$' 6 | echo $y 7 | z='\' 8 | echo $z 9 | t='\*' 10 | echo $t 11 | u='$' 12 | echo $u 13 | v='\?' 14 | echo $v 15 | 16 | 17 | echo \\ 18 | 19 | -------------------------------------------------------------------------------- /tests/grub_script_eval.in: -------------------------------------------------------------------------------- 1 | #! @builddir@/grub-shell-tester 2 | 3 | eval echo "Hello world" 4 | valname=tst 5 | eval $valname=hi 6 | echo $tst -------------------------------------------------------------------------------- /tests/grub_script_final_semicolon.in: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | set -e 3 | 4 | @builddir@/grub-script-check <. 17 | 18 | LC_ALL=C 19 | export LC_ALL 20 | 21 | if [ "z" "<" "â" ]; then echo unsigned; else echo signed; fi 22 | if [ "z" ">" "â" ]; then echo signed; else echo unsigned; fi 23 | -------------------------------------------------------------------------------- /tests/grub_script_test.in: -------------------------------------------------------------------------------- 1 | #! @builddir@/grub-shell-tester 2 | 3 | for device in 'hd0' 'fd0'; do 4 | # But search them if their search has been inforced 5 | set fd0search="no" 6 | if [ "$device" != "fd0" -a "$device" != "cd" \ 7 | -o \ 8 | "$device" = "fd0" -a "$fd0search" = "yes" ]\ 9 | ; then 10 | echo "Yes" 11 | else 12 | echo "No" 13 | fi 14 | 15 | done -------------------------------------------------------------------------------- /tests/grub_script_vars1.in: -------------------------------------------------------------------------------- 1 | #! @builddir@/grub-shell-tester 2 | 3 | # Run GRUB script in a Qemu instance 4 | # Copyright (C) 2010 Free Software Foundation, Inc. 5 | # 6 | # GRUB is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # GRUB is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with GRUB. If not, see . 18 | 19 | var=foo 20 | echo $var 21 | echo "$var" 22 | echo ${var} 23 | echo "${var}" 24 | 25 | echo $1 $2 $? 26 | 27 | foo=foo 28 | echo "" $foo 29 | 30 | echo $bar $foo 31 | 32 | bar="" 33 | echo $bar $foo 34 | 35 | -------------------------------------------------------------------------------- /tests/grub_script_while1.in: -------------------------------------------------------------------------------- 1 | #! @builddir@/grub-shell-tester 2 | 3 | echo one 4 | foo="" 5 | while test "$foo" != "1111"; do foo="${foo}1"; echo "$foo"; done 6 | 7 | echo two 8 | foo="" 9 | while test "$foo" != "aaaa" 10 | do 11 | foo="${foo}a" 12 | echo $foo 13 | done 14 | 15 | foo="" 16 | until test "$foo" = "1111"; do foo="${foo}1"; echo $foo; done 17 | foo="" 18 | until test "$foo" = "aaaa" 19 | do 20 | foo="${foo}a" 21 | echo $foo 22 | done 23 | 24 | # check "$?" in condition gets its value from while body commands 25 | foo="" 26 | false 27 | while test "$?" != "0" 28 | do 29 | echo $foo 30 | foo="${foo}1" 31 | test "$foo" = "111111" 32 | done 33 | -------------------------------------------------------------------------------- /tests/gzcompress_test.in: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | # Copyright (C) 2013 Free Software Foundation, Inc. 3 | # 4 | # GRUB is free software: you can redistribute it and/or modify 5 | # it under the terms of the GNU General Public License as published by 6 | # the Free Software Foundation, either version 3 of the License, or 7 | # (at your option) any later version. 8 | # 9 | # GRUB is distributed in the hope that it will be useful, 10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | # GNU General Public License for more details. 13 | # 14 | # You should have received a copy of the GNU General Public License 15 | # along with GRUB. If not, see . 16 | 17 | set -e 18 | grubshell=@builddir@/grub-shell 19 | 20 | . "@builddir@/grub-core/modinfo.sh" 21 | 22 | if [ "$(echo hello | "${grubshell}" --mkrescue-arg=--compress=gz)" != "Hello World" ]; then 23 | exit 1 24 | fi 25 | -------------------------------------------------------------------------------- /tests/help_test.in: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | set -e 3 | 4 | . "@builddir@/grub-core/modinfo.sh" 5 | 6 | template="Usage: help [PATTERN ...] 7 | Show a help message. 8 | 9 | -h, --help Display this help and exit. 10 | -u, --usage Display the usage of this command and exit. 11 | Hello World" 12 | outpu="$(echo 'help help; hello' | @builddir@/grub-shell)" 13 | 14 | if [ "$template" != "$outpu" ]; then 15 | exit 1 16 | fi 17 | -------------------------------------------------------------------------------- /tests/lzocompress_test.in: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | # Copyright (C) 2013 Free Software Foundation, Inc. 3 | # 4 | # GRUB is free software: you can redistribute it and/or modify 5 | # it under the terms of the GNU General Public License as published by 6 | # the Free Software Foundation, either version 3 of the License, or 7 | # (at your option) any later version. 8 | # 9 | # GRUB is distributed in the hope that it will be useful, 10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | # GNU General Public License for more details. 13 | # 14 | # You should have received a copy of the GNU General Public License 15 | # along with GRUB. If not, see . 16 | 17 | set -e 18 | grubshell=@builddir@/grub-shell 19 | 20 | . "@builddir@/grub-core/modinfo.sh" 21 | 22 | if [ "$(echo hello | "${grubshell}" --mkrescue-arg=--compress=lzo)" != "Hello World" ]; then 23 | exit 1 24 | fi 25 | -------------------------------------------------------------------------------- /tests/xzcompress_test.in: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | # Copyright (C) 2013 Free Software Foundation, Inc. 3 | # 4 | # GRUB is free software: you can redistribute it and/or modify 5 | # it under the terms of the GNU General Public License as published by 6 | # the Free Software Foundation, either version 3 of the License, or 7 | # (at your option) any later version. 8 | # 9 | # GRUB is distributed in the hope that it will be useful, 10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | # GNU General Public License for more details. 13 | # 14 | # You should have received a copy of the GNU General Public License 15 | # along with GRUB. If not, see . 16 | 17 | set -e 18 | grubshell=@builddir@/grub-shell 19 | 20 | . "@builddir@/grub-core/modinfo.sh" 21 | 22 | if [ "$(echo hello | "${grubshell}" --mkrescue-arg=--compress=xz)" != "Hello World" ]; then 23 | exit 1 24 | fi 25 | -------------------------------------------------------------------------------- /themes/starfield/blob_w.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/blob_w.png -------------------------------------------------------------------------------- /themes/starfield/boot_menu_c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/boot_menu_c.png -------------------------------------------------------------------------------- /themes/starfield/boot_menu_e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/boot_menu_e.png -------------------------------------------------------------------------------- /themes/starfield/boot_menu_n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/boot_menu_n.png -------------------------------------------------------------------------------- /themes/starfield/boot_menu_ne.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/boot_menu_ne.png -------------------------------------------------------------------------------- /themes/starfield/boot_menu_nw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/boot_menu_nw.png -------------------------------------------------------------------------------- /themes/starfield/boot_menu_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/boot_menu_s.png -------------------------------------------------------------------------------- /themes/starfield/boot_menu_se.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/boot_menu_se.png -------------------------------------------------------------------------------- /themes/starfield/boot_menu_sw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/boot_menu_sw.png -------------------------------------------------------------------------------- /themes/starfield/boot_menu_w.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/boot_menu_w.png -------------------------------------------------------------------------------- /themes/starfield/slider_c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/slider_c.png -------------------------------------------------------------------------------- /themes/starfield/slider_n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/slider_n.png -------------------------------------------------------------------------------- /themes/starfield/slider_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/slider_s.png -------------------------------------------------------------------------------- /themes/starfield/src/blob_nw.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/blob_nw.xcf -------------------------------------------------------------------------------- /themes/starfield/src/bootmenu/center.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/bootmenu/center.xcf -------------------------------------------------------------------------------- /themes/starfield/src/bootmenu/corner.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/bootmenu/corner.xcf -------------------------------------------------------------------------------- /themes/starfield/src/bootmenu/side.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/bootmenu/side.xcf -------------------------------------------------------------------------------- /themes/starfield/src/slider_c.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/slider_c.xcf -------------------------------------------------------------------------------- /themes/starfield/src/slider_n.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/slider_n.xcf -------------------------------------------------------------------------------- /themes/starfield/src/slider_s.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/slider_s.xcf -------------------------------------------------------------------------------- /themes/starfield/src/terminalbox/center.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/terminalbox/center.xcf -------------------------------------------------------------------------------- /themes/starfield/src/terminalbox/corner.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/terminalbox/corner.xcf -------------------------------------------------------------------------------- /themes/starfield/src/terminalbox/side.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/src/terminalbox/side.xcf -------------------------------------------------------------------------------- /themes/starfield/starfield.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/starfield.png -------------------------------------------------------------------------------- /themes/starfield/terminal_box_c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/terminal_box_c.png -------------------------------------------------------------------------------- /themes/starfield/terminal_box_e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/terminal_box_e.png -------------------------------------------------------------------------------- /themes/starfield/terminal_box_n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/terminal_box_n.png -------------------------------------------------------------------------------- /themes/starfield/terminal_box_ne.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/terminal_box_ne.png -------------------------------------------------------------------------------- /themes/starfield/terminal_box_nw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/terminal_box_nw.png -------------------------------------------------------------------------------- /themes/starfield/terminal_box_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/terminal_box_s.png -------------------------------------------------------------------------------- /themes/starfield/terminal_box_se.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/terminal_box_se.png -------------------------------------------------------------------------------- /themes/starfield/terminal_box_sw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/terminal_box_sw.png -------------------------------------------------------------------------------- /themes/starfield/terminal_box_w.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mokafive/grub/ae0c390bb2ff19c9b71691988ffc67f71d81aacd/themes/starfield/terminal_box_w.png -------------------------------------------------------------------------------- /util/bash-completion.d/Makefile.am: -------------------------------------------------------------------------------- 1 | 2 | bash_completion_source = grub-completion.bash.in 3 | bash_completion_script = grub 4 | 5 | EXTRA_DIST = $(bash_completion_source) 6 | 7 | CLEANFILES = $(bash_completion_script) config.log 8 | 9 | bashcompletiondir = $(sysconfdir)/bash_completion.d 10 | bashcompletion_DATA = $(bash_completion_script) 11 | 12 | $(bash_completion_script): $(bash_completion_source) $(top_builddir)/config.status 13 | $(top_builddir)/config.status --file=$@:$< 14 | -------------------------------------------------------------------------------- /util/grub.d/40_custom.in: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | exec tail -n +3 $0 3 | # This file provides an easy way to add custom menu entries. Simply type the 4 | # menu entries you want to add after this comment. Be careful not to change 5 | # the 'exec tail' line above. 6 | -------------------------------------------------------------------------------- /util/grub.d/41_custom.in: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cat <. 17 | 18 | if [ "x$1" = "x" ]; then 19 | echo "Filename required". 20 | fi 21 | 22 | ioreg -lw0 -p IODeviceTree -n efi -r -x |grep device-properties | sed 's/.*.*//;' | xxd -r -p > $1 23 | -------------------------------------------------------------------------------- /util/import_gcrypth.sed: -------------------------------------------------------------------------------- 1 | /^#@INSERT_SYS_SELECT_H@/ d 2 | /^@FALLBACK_SOCKLEN_T@/ d 3 | /^# *include / d 4 | /^# *include / d 5 | /^# *include / d 6 | /^# *include / d 7 | /^# *include / d 8 | /^# *include / d 9 | /^# *include / d 10 | /^# *include / s,#include ,#include , 11 | /^typedef gpg_error_t gcry_error_t;/ d 12 | /^typedef gpg_err_code_t gcry_err_code_t;/ d 13 | /^typedef struct gcry_mpi \*gcry_mpi_t;/ d 14 | s,_gcry_mpi_invm,gcry_mpi_invm,g 15 | p --------------------------------------------------------------------------------