grub/grub-core/Makefile.core.def

2521 lines
49 KiB
Modula-2
Raw Normal View History

2010-05-06 06:04:04 +00:00
AutoGen definitions Makefile.tpl;
transform_data = {
installdir = noinst;
2010-09-19 13:24:45 +00:00
name = gensyminfo.sh;
common = gensyminfo.sh.in;
};
transform_data = {
installdir = noinst;
2010-09-19 13:24:45 +00:00
name = genmod.sh;
common = genmod.sh.in;
};
transform_data = {
installdir = noinst;
name = modinfo.sh;
common = modinfo.sh.in;
};
transform_data = {
installdir = platform;
name = gmodule.pl;
common = gmodule.pl.in;
};
transform_data = {
installdir = platform;
name = gdb_grub;
common = gdb_grub.in;
};
transform_data = {
installdir = platform;
name = grub.chrp;
common = boot/powerpc/grub.chrp.in;
enable = powerpc_ieee1275;
};
transform_data = {
installdir = platform;
name = bootinfo.txt;
common = boot/powerpc/bootinfo.txt.in;
enable = powerpc_ieee1275;
};
2010-05-06 06:04:04 +00:00
kernel = {
name = kernel;
2010-07-13 18:28:30 +00:00
nostrip = emu;
2010-07-13 18:05:24 +00:00
emu_ldflags = '-Wl,-r,-d';
2010-08-31 19:47:26 +00:00
i386_efi_ldflags = '-Wl,-r,-d';
i386_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
2010-08-31 19:47:26 +00:00
x86_64_efi_ldflags = '-Wl,-r,-d';
x86_64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
2010-08-31 19:47:26 +00:00
ia64_efi_cflags = '-fno-builtin -fpic -minline-int-divide-max-throughput';
ia64_efi_ldflags = '-Wl,-r,-d';
ia64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
2010-06-07 11:53:54 +00:00
2013-04-07 00:41:07 +00:00
arm_efi_ldflags = '-Wl,-r,-d';
arm_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
2013-11-16 19:52:55 +00:00
arm64_efi_ldflags = '-Wl,-r,-d';
arm64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame';
2013-11-16 19:52:55 +00:00
riscv32_efi_ldflags = '-Wl,-r,-d';
riscv32_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame';
riscv64_efi_ldflags = '-Wl,-r,-d';
riscv64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame';
2010-06-07 11:53:54 +00:00
i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000';
2010-06-07 11:53:54 +00:00
i386_qemu_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_qemu_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000';
i386_coreboot_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_coreboot_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000';
i386_multiboot_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_multiboot_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000';
i386_ieee1275_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_ieee1275_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x10000';
i386_xen_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_xen_ldflags = '$(TARGET_IMG_BASE_LDOPT),0';
x86_64_xen_ldflags = '$(TARGET_IMG_LDFLAGS)';
x86_64_xen_ldflags = '$(TARGET_IMG_BASE_LDOPT),0';
i386_xen_pvh_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_xen_pvh_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x100000';
2010-06-07 11:53:54 +00:00
mips_loongson_ldflags = '-Wl,-Ttext,0x80200000';
powerpc_ieee1275_ldflags = '-Wl,-Ttext,0x200000';
sparc64_ieee1275_ldflags = '-Wl,-Ttext,0x4400';
2013-04-25 20:42:35 +00:00
mips_arc_ldflags = '-Wl,-Ttext,$(TARGET_LINK_ADDR)';
2011-05-17 12:02:18 +00:00
mips_qemu_mips_ldflags = '-Wl,-Ttext,0x80200000';
2010-05-06 06:04:04 +00:00
mips_arc_cppflags = '-DGRUB_DECOMPRESSOR_LINK_ADDR=$(TARGET_DECOMPRESSOR_LINK_ADDR)';
2010-05-06 06:04:04 +00:00
i386_qemu_cppflags = '-DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR)';
2010-05-06 07:25:47 +00:00
emu_cflags = '$(CFLAGS_GNULIB)';
emu_cppflags = '$(CPPFLAGS_GNULIB)';
arm_uboot_ldflags = '-Wl,-r,-d';
2013-04-07 00:41:07 +00:00
arm_uboot_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
2017-05-08 18:53:28 +00:00
arm_coreboot_ldflags = '-Wl,-r,-d';
arm_coreboot_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
2010-05-06 06:04:04 +00:00
i386_pc_startup = kern/i386/pc/startup.S;
i386_efi_startup = kern/i386/efi/startup.S;
x86_64_efi_startup = kern/x86_64/efi/startup.S;
i386_xen_startup = kern/i386/xen/startup.S;
x86_64_xen_startup = kern/x86_64/xen/startup.S;
i386_xen_pvh_startup = kern/i386/xen/startup_pvh.S;
i386_qemu_startup = kern/i386/qemu/startup.S;
i386_ieee1275_startup = kern/i386/ieee1275/startup.S;
i386_coreboot_startup = kern/i386/coreboot/startup.S;
i386_multiboot_startup = kern/i386/coreboot/startup.S;
mips_startup = kern/mips/startup.S;
sparc64_ieee1275_startup = kern/sparc64/ieee1275/crt0.S;
powerpc_ieee1275_startup = kern/powerpc/ieee1275/startup.S;
arm_uboot_startup = kern/arm/startup.S;
2017-05-08 18:53:28 +00:00
arm_coreboot_startup = kern/arm/startup.S;
2013-04-07 00:41:07 +00:00
arm_efi_startup = kern/arm/efi/startup.S;
2013-11-16 19:52:55 +00:00
arm64_efi_startup = kern/arm64/efi/startup.S;
riscv32_efi_startup = kern/riscv/efi/startup.S;
riscv64_efi_startup = kern/riscv/efi/startup.S;
common = kern/command.c;
common = kern/corecmd.c;
common = kern/device.c;
common = kern/disk.c;
common = kern/dl.c;
common = kern/env.c;
common = kern/err.c;
common = kern/file.c;
common = kern/fs.c;
common = kern/list.c;
common = kern/main.c;
common = kern/misc.c;
common = kern/parser.c;
common = kern/partition.c;
common = kern/rescue_parser.c;
common = kern/rescue_reader.c;
common = kern/term.c;
noemu = kern/compiler-rt.c;
noemu = kern/mm.c;
noemu = kern/time.c;
noemu = kern/generic/millisleep.c;
noemu_nodist = symlist.c;
2011-05-13 14:36:05 +00:00
mips = kern/generic/rtc_get_time_ms.c;
ieee1275 = disk/ieee1275/ofdisk.c;
ieee1275 = kern/ieee1275/cmain.c;
ieee1275 = kern/ieee1275/ieee1275.c;
ieee1275 = kern/ieee1275/mmap.c;
ieee1275 = kern/ieee1275/openfw.c;
ieee1275 = term/ieee1275/console.c;
2011-07-02 12:09:36 +00:00
ieee1275 = kern/ieee1275/init.c;
2013-04-07 00:41:07 +00:00
uboot = disk/uboot/ubootdisk.c;
uboot = kern/uboot/uboot.c;
uboot = kern/uboot/init.c;
uboot = kern/uboot/hw.c;
uboot = term/uboot/console.c;
arm_uboot = kern/arm/uboot/init.c;
arm_uboot = kern/arm/uboot/uboot.S;
2013-04-07 00:41:07 +00:00
2017-05-08 18:53:28 +00:00
arm_coreboot = kern/arm/coreboot/init.c;
arm_coreboot = kern/arm/coreboot/timer.c;
arm_coreboot = kern/arm/coreboot/coreboot.S;
arm_coreboot = lib/fdt.c;
arm_coreboot = bus/fdt.c;
arm_coreboot = term/ps2.c;
arm_coreboot = term/arm/pl050.c;
2017-05-09 07:02:15 +00:00
arm_coreboot = term/arm/cros.c;
arm_coreboot = term/arm/cros_ec.c;
2017-05-09 06:42:14 +00:00
arm_coreboot = bus/spi/rk3288_spi.c;
arm_coreboot = commands/keylayouts.c;
arm_coreboot = kern/arm/coreboot/dma.c;
2017-05-08 18:53:28 +00:00
terminfoinkernel = term/terminfo.c;
terminfoinkernel = term/tparm.c;
terminfoinkernel = commands/extcmd.c;
terminfoinkernel = lib/arg.c;
softdiv = lib/division.c;
i386 = kern/i386/dl.c;
i386_xen = kern/i386/dl.c;
i386_xen_pvh = kern/i386/dl.c;
i386_coreboot = kern/i386/coreboot/init.c;
i386_multiboot = kern/i386/coreboot/init.c;
i386_qemu = kern/i386/qemu/init.c;
i386_coreboot_multiboot_qemu = term/i386/pc/vga_text.c;
2017-05-08 18:53:28 +00:00
coreboot = video/coreboot/cbfb.c;
2010-08-31 19:47:26 +00:00
efi = disk/efi/efidisk.c;
efi = kern/efi/efi.c;
efi = kern/efi/init.c;
efi = kern/efi/mm.c;
efi = term/efi/console.c;
efi = kern/acpi.c;
efi = kern/efi/acpi.c;
i386_coreboot = kern/i386/pc/acpi.c;
i386_multiboot = kern/i386/pc/acpi.c;
i386_coreboot = kern/acpi.c;
i386_multiboot = kern/acpi.c;
x86 = kern/i386/tsc.c;
x86 = kern/i386/tsc_pit.c;
i386_efi = kern/i386/efi/tsc.c;
x86_64_efi = kern/i386/efi/tsc.c;
i386_efi = kern/i386/tsc_pmtimer.c;
i386_coreboot = kern/i386/tsc_pmtimer.c;
x86_64_efi = kern/i386/tsc_pmtimer.c;
2010-08-31 19:47:26 +00:00
i386_efi = kern/i386/efi/init.c;
i386_efi = bus/pci.c;
x86_64 = kern/x86_64/dl.c;
x86_64_xen = kern/x86_64/dl.c;
x86_64_efi = kern/x86_64/efi/callwrap.S;
2010-08-31 19:47:26 +00:00
x86_64_efi = kern/i386/efi/init.c;
x86_64_efi = bus/pci.c;
2010-08-31 19:47:26 +00:00
xen = kern/i386/tsc.c;
xen = kern/i386/xen/tsc.c;
x86_64_xen = kern/x86_64/xen/hypercall.S;
i386_xen = kern/i386/xen/hypercall.S;
xen = kern/xen/init.c;
xen = term/xen/console.c;
xen = disk/xen/xendisk.c;
xen = commands/boot.c;
i386_xen_pvh = commands/boot.c;
i386_xen_pvh = disk/xen/xendisk.c;
i386_xen_pvh = kern/i386/tsc.c;
i386_xen_pvh = kern/i386/xen/tsc.c;
i386_xen_pvh = kern/i386/xen/pvh.c;
i386_xen_pvh = kern/xen/init.c;
i386_xen_pvh = term/xen/console.c;
2010-08-31 19:47:26 +00:00
ia64_efi = kern/ia64/efi/startup.S;
ia64_efi = kern/ia64/efi/init.c;
2011-01-03 01:28:14 +00:00
ia64_efi = kern/ia64/dl.c;
ia64_efi = kern/ia64/dl_helper.c;
ia64_efi = kern/ia64/cache.c;
2013-04-07 00:41:07 +00:00
arm_efi = kern/arm/efi/init.c;
arm_efi = kern/efi/fdt.c;
2013-04-07 00:41:07 +00:00
2016-02-12 11:43:02 +00:00
arm64_efi = kern/arm64/efi/init.c;
arm64_efi = kern/efi/fdt.c;
2013-11-16 19:52:55 +00:00
riscv32_efi = kern/riscv/efi/init.c;
riscv32_efi = kern/efi/fdt.c;
riscv64_efi = kern/riscv/efi/init.c;
riscv64_efi = kern/efi/fdt.c;
2010-05-06 06:04:04 +00:00
i386_pc = kern/i386/pc/init.c;
i386_pc = kern/i386/pc/mmap.c;
i386_pc = term/i386/pc/console.c;
i386_qemu = bus/pci.c;
i386_qemu = kern/vga_init.c;
i386_qemu = kern/i386/qemu/mmap.c;
2017-05-08 18:53:28 +00:00
coreboot = kern/coreboot/mmap.c;
i386_coreboot = kern/i386/coreboot/cbtable.c;
2017-05-08 18:53:28 +00:00
coreboot = kern/coreboot/cbtable.c;
arm_coreboot = kern/arm/coreboot/cbtable.c;
2010-05-10 08:20:43 +00:00
i386_multiboot = kern/i386/multiboot_mmap.c;
2010-05-06 06:04:04 +00:00
mips = kern/mips/cache.S;
mips = kern/mips/dl.c;
mips = kern/mips/init.c;
2011-05-13 14:36:05 +00:00
2011-05-17 12:02:18 +00:00
mips_qemu_mips = kern/mips/qemu_mips/init.c;
mips_qemu_mips = term/ns8250.c;
mips_qemu_mips = term/serial.c;
mips_qemu_mips = term/at_keyboard.c;
mips_qemu_mips = term/ps2.c;
mips_qemu_mips = commands/boot.c;
mips_qemu_mips = commands/keylayouts.c;
mips_qemu_mips = term/i386/pc/vga_text.c;
mips_qemu_mips = kern/vga_init.c;
2011-05-17 12:02:18 +00:00
2011-05-13 14:36:05 +00:00
mips_arc = kern/mips/arc/init.c;
mips_arc = term/arc/console.c;
mips_arc = disk/arc/arcdisk.c;
mips_loongson = term/ns8250.c;
mips_loongson = bus/bonito.c;
mips_loongson = bus/cs5536.c;
mips_loongson = bus/pci.c;
mips_loongson = kern/mips/loongson/init.c;
mips_loongson = term/at_keyboard.c;
mips_loongson = term/ps2.c;
mips_loongson = commands/boot.c;
mips_loongson = term/serial.c;
mips_loongson = video/sm712.c;
mips_loongson = video/sis315pro.c;
mips_loongson = video/radeon_fuloong2e.c;
2013-12-17 21:51:13 +00:00
mips_loongson = video/radeon_yeeloong3a.c;
extra_dist = video/sm712_init.c;
extra_dist = video/sis315_init.c;
mips_loongson = commands/keylayouts.c;
2010-05-06 06:04:04 +00:00
powerpc_ieee1275 = kern/powerpc/cache.S;
powerpc_ieee1275 = kern/powerpc/dl.c;
powerpc_ieee1275 = kern/powerpc/compiler-rt.S;
sparc64_ieee1275 = kern/sparc64/cache.S;
sparc64_ieee1275 = kern/sparc64/dl.c;
2010-05-06 06:04:04 +00:00
sparc64_ieee1275 = kern/sparc64/ieee1275/ieee1275.c;
ieee1275: obdisk driver Add a new disk driver called obdisk for IEEE1275 platforms. Currently the only platform using this disk driver is SPARC, however other IEEE1275 platforms could start using it if they so choose. While the functionality within the current IEEE1275 ofdisk driver may be suitable for PPC and x86, it presented too many problems on SPARC hardware. Within the old ofdisk, there is not a way to determine the true canonical name for the disk. Within Open Boot, the same disk can have multiple names but all reference the same disk. For example the same disk can be referenced by its SAS WWN, using this form: /pci@302/pci@2/pci@0/pci@17/LSI,sas@0/disk@w5000cca02f037d6d,0 It can also be referenced by its PHY identifier using this form: /pci@302/pci@2/pci@0/pci@17/LSI,sas@0/disk@p0 It can also be referenced by its Target identifier using this form: /pci@302/pci@2/pci@0/pci@17/LSI,sas@0/disk@0 Also, when the LUN=0, it is legal to omit the ,0 from the device name. So with the disk above, before taking into account the device aliases, there are 6 ways to reference the same disk. Then it is possible to have 0 .. n device aliases all representing the same disk. Within this new driver the true canonical name is determined using the the IEEE1275 encode-unit and decode-unit commands when address_cells == 4. This will determine the true single canonical name for the device so multiple ihandles are not opened for the same device. This is what frequently happens with the old ofdisk driver. With some devices when they are opened multiple times it causes the entire system to hang. Another problem solved with this driver is devices that do not have a device alias can be booted and used within GRUB. Within the old ofdisk, this was not possible, unless it was the original boot device. All devices behind a SAS or SCSI parent can be found. Within the old ofdisk, finding these disks relied on there being an alias defined. The alias requirement is not necessary with this new driver. It can also find devices behind a parent after they have been hot-plugged. This is something that is not possible with the old ofdisk driver. The old ofdisk driver also incorrectly assumes that the device pointing to by a device alias is in its true canonical form. This assumption is never made with this new driver. Another issue solved with this driver is that it properly caches the ihandle for all open devices. The old ofdisk tries to do this by caching the last opened ihandle. However this does not work properly because the layer above does not use a consistent device name for the same disk when calling into the driver. This is because the upper layer uses the bootpath value returned within /chosen, other times it uses the device alias, and other times it uses the value within grub.cfg. It does not have a way to figure out that these devices are the same disk. This is not a problem with this new driver. Due to the way GRUB repeatedly opens and closes the same disk. Caching the ihandle is important on SPARC. Without caching, some SAS devices can take 15 - 20 minutes to get to the GRUB menu. This ihandle caching is not possible without correctly having the canonical disk name. When available, this driver also tries to use the deblocker #blocks and a way of determining the disk size. Finally and probably most importantly, this new driver is also capable of seeing all partitions on a GPT disk. With the old driver, the GPT partition table can not be read and only the first partition on the disk can be seen. Signed-off-by: Eric Snowberg <eric.snowberg@oracle.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
2019-03-05 01:27:39 +00:00
sparc64_ieee1275 = disk/ieee1275/obdisk.c;
2010-05-06 06:04:04 +00:00
2013-04-07 00:41:07 +00:00
arm = kern/arm/dl.c;
2013-05-11 08:42:11 +00:00
arm = kern/arm/dl_helper.c;
arm = kern/arm/cache_armv6.S;
arm = kern/arm/cache_armv7.S;
extra_dist = kern/arm/cache.S;
arm = kern/arm/cache.c;
arm = kern/arm/compiler-rt.S;
2013-04-07 00:41:07 +00:00
2013-11-16 19:52:55 +00:00
arm64 = kern/arm64/cache.c;
arm64 = kern/arm64/cache_flush.S;
arm64 = kern/arm64/dl.c;
arm64 = kern/arm64/dl_helper.c;
riscv32 = kern/riscv/cache.c;
riscv32 = kern/riscv/cache_flush.S;
riscv32 = kern/riscv/dl.c;
riscv64 = kern/riscv/cache.c;
riscv64 = kern/riscv/cache_flush.S;
riscv64 = kern/riscv/dl.c;
emu = disk/host.c;
2011-01-02 23:30:26 +00:00
emu = kern/emu/cache_s.S;
2010-05-06 06:04:04 +00:00
emu = kern/emu/hostdisk.c;
emu = osdep/unix/hostdisk.c;
emu = osdep/exec.c;
extra_dist = osdep/unix/exec.c;
emu = osdep/devmapper/hostdisk.c;
emu = osdep/hostdisk.c;
2010-05-06 06:04:04 +00:00
emu = kern/emu/hostfs.c;
emu = kern/emu/main.c;
emu = kern/emu/argp_common.c;
emu = kern/emu/misc.c;
emu = kern/emu/mm.c;
emu = kern/emu/time.c;
2011-01-01 14:53:31 +00:00
emu = kern/emu/cache.c;
emu = osdep/emuconsole.c;
extra_dist = osdep/unix/emuconsole.c;
extra_dist = osdep/windows/emuconsole.c;
emu = osdep/dl.c;
extra_dist = osdep/unix/dl.c;
extra_dist = osdep/windows/dl.c;
emu = osdep/sleep.c;
emu = osdep/init.c;
emu = osdep/emunet.c;
extra_dist = osdep/linux/emunet.c;
extra_dist = osdep/basic/emunet.c;
emu = osdep/cputime.c;
extra_dist = osdep/unix/cputime.c;
extra_dist = osdep/windows/cputime.c;
2010-06-03 10:00:15 +00:00
videoinkernel = term/gfxterm.c;
videoinkernel = font/font.c;
videoinkernel = font/font_cmd.c;
videoinkernel = io/bufio.c;
videoinkernel = video/fb/fbblit.c;
videoinkernel = video/fb/fbfill.c;
videoinkernel = video/fb/fbutil.c;
videoinkernel = video/fb/video_fb.c;
videoinkernel = video/video.c;
extra_dist = kern/i386/int.S;
2010-06-03 10:00:15 +00:00
extra_dist = kern/i386/realmode.S;
extra_dist = boot/i386/pc/lzma_decode.S;
extra_dist = kern/mips/cache_flush.S;
2010-05-06 06:04:04 +00:00
};
program = {
name = grub-emu;
mansection = 1;
emu = kern/emu/full.c;
emu_nodist = grub_emu_init.c;
2010-05-06 06:04:04 +00:00
ldadd = 'kernel.exec$(EXEEXT)';
2010-05-06 06:04:04 +00:00
ldadd = '$(MODULE_FILES)';
ldadd = 'lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)';
2010-05-06 06:04:04 +00:00
2010-07-13 18:05:24 +00:00
enable = emu;
2010-05-06 06:04:04 +00:00
};
program = {
name = grub-emu-lite;
emu = kern/emu/lite.c;
emu_nodist = symlist.c;
2010-05-06 06:04:04 +00:00
ldadd = 'kernel.exec$(EXEEXT)';
ldadd = 'lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)';
2010-05-06 06:04:04 +00:00
2010-07-13 18:05:24 +00:00
enable = emu;
2010-05-06 06:04:04 +00:00
};
image = {
name = boot;
i386_pc = boot/i386/pc/boot.S;
i386_qemu = boot/i386/qemu/boot.S;
sparc64_ieee1275 = boot/sparc64/ieee1275/boot.S;
2010-06-07 11:53:54 +00:00
i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00';
i386_qemu_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_qemu_ldflags = '$(TARGET_IMG_BASE_LDOPT),$(GRUB_BOOT_MACHINE_LINK_ADDR)';
2010-05-06 06:04:04 +00:00
i386_qemu_ccasflags = '-DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR)';
/* The entry point for a.out binaries on sparc64 starts
at 0x4000. Since we are writing the 32 bytes long a.out
header in the assembly code ourselves, we need to tell
the linker to adjust the start of the text segment to
0x4000 - 0x20 = 0x3fe0.
*/
sparc64_ieee1275_ldflags = ' -Wl,-Ttext=0x3fe0';
sparc64_ieee1275_objcopyflags = '-O binary';
2010-07-13 18:05:24 +00:00
objcopyflags = '-O binary';
enable = i386_pc;
enable = i386_qemu;
enable = sparc64_ieee1275;
2010-05-06 06:04:04 +00:00
};
image = {
name = boot_hybrid;
i386_pc = boot/i386/pc/boot.S;
cppflags = '-DHYBRID_BOOT=1';
i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00';
objcopyflags = '-O binary';
enable = i386_pc;
};
2010-05-06 06:04:04 +00:00
image = {
name = cdboot;
2013-04-14 15:10:55 +00:00
2010-06-07 11:53:54 +00:00
i386_pc = boot/i386/pc/cdboot.S;
i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00';
2013-04-14 15:10:55 +00:00
sparc64_ieee1275 = boot/sparc64/ieee1275/boot.S;
/* See comment for sparc64_ieee1275_ldflags above. */
sparc64_ieee1275_ldflags = ' -Wl,-Ttext=0x3fe0';
sparc64_ieee1275_objcopyflags = '-O binary';
2013-04-14 15:10:55 +00:00
sparc64_ieee1275_cppflags = '-DCDBOOT=1';
2010-07-13 18:05:24 +00:00
objcopyflags = '-O binary';
2013-04-14 15:10:55 +00:00
enable = sparc64_ieee1275;
2010-07-13 18:05:24 +00:00
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
image = {
name = pxeboot;
2010-06-07 11:53:54 +00:00
i386_pc = boot/i386/pc/pxeboot.S;
2010-05-06 06:04:04 +00:00
2010-06-07 11:53:54 +00:00
i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00';
2010-07-13 18:05:24 +00:00
objcopyflags = '-O binary';
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
image = {
name = diskboot;
i386_pc = boot/i386/pc/diskboot.S;
2010-06-07 11:53:54 +00:00
i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x8000';
2010-05-06 06:04:04 +00:00
sparc64_ieee1275 = boot/sparc64/ieee1275/diskboot.S;
sparc64_ieee1275_ldflags = '-Wl,-Ttext=0x4200';
2010-07-13 18:05:24 +00:00
objcopyflags = '-O binary';
enable = i386_pc;
enable = sparc64_ieee1275;
2010-05-06 06:04:04 +00:00
};
image = {
name = lnxboot;
2010-06-07 11:53:54 +00:00
i386_pc = boot/i386/pc/lnxboot.S;
2010-05-06 06:04:04 +00:00
2010-06-07 11:53:54 +00:00
i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x6000';
2010-07-13 18:05:24 +00:00
objcopyflags = '-O binary';
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
2010-09-21 08:14:08 +00:00
image = {
name = xz_decompress;
2010-09-21 08:14:08 +00:00
mips = boot/mips/startup_raw.S;
common = boot/decompressor/minilib.c;
common = boot/decompressor/xz.c;
2010-09-21 09:22:52 +00:00
common = lib/xzembed/xz_dec_bcj.c;
common = lib/xzembed/xz_dec_lzma2.c;
common = lib/xzembed/xz_dec_stream.c;
common = kern/compiler-rt.c;
2010-09-21 08:14:08 +00:00
SGI ARCS port. * Makefile.util.def (libgrubmods.a): Add dvh.c. * conf/Makefile.common (CCASFLAGS_PLATFORM): Add -mips3 on all mips platforms. * configure.ac: New target mips-arc. * gentpl.py: Likewise. * grub-core/Makefile.am: Likewise. * grub-core/Makefile.core.def: Likewise. (xz_decompress): Remove -D GRUB_MACHINE_LINK_ADDR. (none_decompress): Likewise. (lsdev): New module. (datetime): Use lib/arc/datetime.c on ARC. (part_dvh): New module. * grub-core/commands/arc/lsdev.c: New file. * grub-core/disk/arc/arcdisk.c: Likewise. * grub-core/kern/mips/arc/init.c: Likewise. * grub-core/kern/mips/cache_flush.S: Don't flush non 4-byte aligned addresses. * grub-core/kern/mips/dl.c (grub_arch_dl_check_header): Fix bigendian support. (grub_arch_dl_relocate_symbols): Likewise. * grub-core/kern/mips/loongson/init.c (grub_get_rtc): Moved from here... * grub-core/kern/mips/init.c (grub_get_rtc): ... here. * grub-core/kern/mips/startup.S (grub_arch_cpuclock): Have on all platforms. * grub-core/lib/arc/datetime.c: New file. * grub-core/loader/mips/linux.c: Always include time.h. Don't include pci.h on non-loongson. (envp_off) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove. (grub_linux_boot): Set unused registers to 0. (grub_cmd_linux) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove envp. * grub-core/mmap/mips/loongson/uppermem.c: Moved from here ... * grub-core/mmap/mips/uppermem.c: ...here. * grub-core/partmap/dvh.c: New file. * grub-core/term/arc/console.c: Likewise. * grub-core/term/terminfo.c (ANSI_C0_STR): New const. (grub_terminfo_set_current): Add terminal "arc". (grub_terminfo_readkey): Support ARC sequences. * include/grub/arc/arc.h: New file. * include/grub/arc/console.h: Likewise. * include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_ARCDISK_ID. * include/grub/mips/arc/kernel.h: New file. * include/grub/mips/arc/memory.h: Likewise. * include/grub/mips/arc/time.h: Likewise. * include/grub/mips/loongson/kernel.h (grub_halt): Moved from here ... * include/grub/mips/kernel.h (grub_halt): ... here. * include/grub/mips/loongson.h (GRUB_CPU_REGISTER_WRAP): Moved from here... * include/grub/mips/mips.h (GRUB_CPU_REGISTER_WRAP): ... here. (GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): Moved from here ... * include/grub/mips/mips.h (GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): .. here * include/grub/mips/loongson/kernel.h (grub_reboot): Removed redundant proto. * include/grub/mips/loongson/memory.h (GRUB_ARCH_LOWMEMVSTART): Moved from here ... * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMVSTART): ... here. (GRUB_ARCH_LOWMEMPSTART): Moved from here ... * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMPSTART): ... here. (GRUB_ARCH_LOWMEMMAXSIZE): Moved from here ... * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMMAXSIZE): ... here. (GRUB_ARCH_HIGHMEMPSTART): Moved from here ... * include/grub/mips/memory.h (GRUB_ARCH_HIGHMEMPSTART): ... here. (grub_phys_addr_t): Moved from here ... * include/grub/mips/memory.h (grub_phys_addr_t): ... here. (grub_vtop): Moved from here ... * include/grub/mips/memory.h (grub_vtop): ... here. (grub_map_memory): Moved from here ... * include/grub/mips/memory.h (grub_map_memory): ... here. (grub_unmap_memory): Moved from here ... * include/grub/mips/memory.h (grub_unmap_memory): ... here. (grub_machine_mmap_iterate): Moved from here ... * include/grub/mips/memory.h (grub_machine_mmap_iterate): ... here. (grub_mmap_get_lower): Moved from here ... * include/grub/mips/memory.h (grub_mmap_get_lower): ... here. (grub_mmap_get_upper): Moved from here ... * include/grub/mips/memory.h (grub_mmap_get_upper): ... here. * include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from here ... * include/grub/mips/time.h (grub_arch_cpuclock): ... here. * include/grub/mips/loongson/time.h (grub_get_rtc): Moved from here ... * include/grub/mips/time.h (grub_get_rtc): ... here. * include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from here ... * include/grub/mips/time.h (grub_arch_cpuclock): ... here. * include/grub/mips/loongson/time.h (grub_cpu_idle): Moved from here ... * include/grub/mips/time.h (grub_cpu_idle): ... here. * include/grub/offsets.h (GRUB_KERNEL_MIPS_ARC_LINK_ADDR): New definition. (GRUB_KERNEL_MIPS_ARC_LINK_ALIGN): Likewise. (GRUB_KERNEL_MIPS_ARC_COMPRESSED_SIZE): Likewise. (GRUB_KERNEL_MIPS_ARC_UNCOMPRESSED_SIZE): Likewise. (GRUB_KERNEL_MIPS_ARC_TOTAL_MODULE_SIZE): Likewise. (GRUB_KERNEL_MIPS_ARC_PREFIX): Likewise. (GRUB_KERNEL_MIPS_ARC_PREFIX_END): Likewise. (GRUB_KERNEL_MIPS_ARC_MOD_ALIGN): Likewise. (GRUB_MACHINE_LINK_ADDR): Likewise. * include/grub/terminfo.h (GRUB_TERMINFO_READKEY_MAX_LEN): Increased to 6. * util/grub-install.in: Run dvhtool on ARC. * util/grub-mkimage.c (image_targets): Add mips-arc.
2011-05-17 07:17:38 +00:00
cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -DGRUB_EMBED_DECOMPRESSOR=1';
2010-09-21 08:14:08 +00:00
objcopyflags = '-O binary';
mips_ldflags = '-Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR)';
cflags = '-Wno-unreachable-code';
2010-09-21 08:14:08 +00:00
enable = mips;
};
image = {
name = none_decompress;
mips = boot/mips/startup_raw.S;
common = boot/decompressor/none.c;
SGI ARCS port. * Makefile.util.def (libgrubmods.a): Add dvh.c. * conf/Makefile.common (CCASFLAGS_PLATFORM): Add -mips3 on all mips platforms. * configure.ac: New target mips-arc. * gentpl.py: Likewise. * grub-core/Makefile.am: Likewise. * grub-core/Makefile.core.def: Likewise. (xz_decompress): Remove -D GRUB_MACHINE_LINK_ADDR. (none_decompress): Likewise. (lsdev): New module. (datetime): Use lib/arc/datetime.c on ARC. (part_dvh): New module. * grub-core/commands/arc/lsdev.c: New file. * grub-core/disk/arc/arcdisk.c: Likewise. * grub-core/kern/mips/arc/init.c: Likewise. * grub-core/kern/mips/cache_flush.S: Don't flush non 4-byte aligned addresses. * grub-core/kern/mips/dl.c (grub_arch_dl_check_header): Fix bigendian support. (grub_arch_dl_relocate_symbols): Likewise. * grub-core/kern/mips/loongson/init.c (grub_get_rtc): Moved from here... * grub-core/kern/mips/init.c (grub_get_rtc): ... here. * grub-core/kern/mips/startup.S (grub_arch_cpuclock): Have on all platforms. * grub-core/lib/arc/datetime.c: New file. * grub-core/loader/mips/linux.c: Always include time.h. Don't include pci.h on non-loongson. (envp_off) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove. (grub_linux_boot): Set unused registers to 0. (grub_cmd_linux) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove envp. * grub-core/mmap/mips/loongson/uppermem.c: Moved from here ... * grub-core/mmap/mips/uppermem.c: ...here. * grub-core/partmap/dvh.c: New file. * grub-core/term/arc/console.c: Likewise. * grub-core/term/terminfo.c (ANSI_C0_STR): New const. (grub_terminfo_set_current): Add terminal "arc". (grub_terminfo_readkey): Support ARC sequences. * include/grub/arc/arc.h: New file. * include/grub/arc/console.h: Likewise. * include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_ARCDISK_ID. * include/grub/mips/arc/kernel.h: New file. * include/grub/mips/arc/memory.h: Likewise. * include/grub/mips/arc/time.h: Likewise. * include/grub/mips/loongson/kernel.h (grub_halt): Moved from here ... * include/grub/mips/kernel.h (grub_halt): ... here. * include/grub/mips/loongson.h (GRUB_CPU_REGISTER_WRAP): Moved from here... * include/grub/mips/mips.h (GRUB_CPU_REGISTER_WRAP): ... here. (GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): Moved from here ... * include/grub/mips/mips.h (GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): .. here * include/grub/mips/loongson/kernel.h (grub_reboot): Removed redundant proto. * include/grub/mips/loongson/memory.h (GRUB_ARCH_LOWMEMVSTART): Moved from here ... * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMVSTART): ... here. (GRUB_ARCH_LOWMEMPSTART): Moved from here ... * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMPSTART): ... here. (GRUB_ARCH_LOWMEMMAXSIZE): Moved from here ... * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMMAXSIZE): ... here. (GRUB_ARCH_HIGHMEMPSTART): Moved from here ... * include/grub/mips/memory.h (GRUB_ARCH_HIGHMEMPSTART): ... here. (grub_phys_addr_t): Moved from here ... * include/grub/mips/memory.h (grub_phys_addr_t): ... here. (grub_vtop): Moved from here ... * include/grub/mips/memory.h (grub_vtop): ... here. (grub_map_memory): Moved from here ... * include/grub/mips/memory.h (grub_map_memory): ... here. (grub_unmap_memory): Moved from here ... * include/grub/mips/memory.h (grub_unmap_memory): ... here. (grub_machine_mmap_iterate): Moved from here ... * include/grub/mips/memory.h (grub_machine_mmap_iterate): ... here. (grub_mmap_get_lower): Moved from here ... * include/grub/mips/memory.h (grub_mmap_get_lower): ... here. (grub_mmap_get_upper): Moved from here ... * include/grub/mips/memory.h (grub_mmap_get_upper): ... here. * include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from here ... * include/grub/mips/time.h (grub_arch_cpuclock): ... here. * include/grub/mips/loongson/time.h (grub_get_rtc): Moved from here ... * include/grub/mips/time.h (grub_get_rtc): ... here. * include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from here ... * include/grub/mips/time.h (grub_arch_cpuclock): ... here. * include/grub/mips/loongson/time.h (grub_cpu_idle): Moved from here ... * include/grub/mips/time.h (grub_cpu_idle): ... here. * include/grub/offsets.h (GRUB_KERNEL_MIPS_ARC_LINK_ADDR): New definition. (GRUB_KERNEL_MIPS_ARC_LINK_ALIGN): Likewise. (GRUB_KERNEL_MIPS_ARC_COMPRESSED_SIZE): Likewise. (GRUB_KERNEL_MIPS_ARC_UNCOMPRESSED_SIZE): Likewise. (GRUB_KERNEL_MIPS_ARC_TOTAL_MODULE_SIZE): Likewise. (GRUB_KERNEL_MIPS_ARC_PREFIX): Likewise. (GRUB_KERNEL_MIPS_ARC_PREFIX_END): Likewise. (GRUB_KERNEL_MIPS_ARC_MOD_ALIGN): Likewise. (GRUB_MACHINE_LINK_ADDR): Likewise. * include/grub/terminfo.h (GRUB_TERMINFO_READKEY_MAX_LEN): Increased to 6. * util/grub-install.in: Run dvhtool on ARC. * util/grub-mkimage.c (image_targets): Add mips-arc.
2011-05-17 07:17:38 +00:00
cppflags = '-DGRUB_EMBED_DECOMPRESSOR=1';
objcopyflags = '-O binary';
mips_ldflags = '-Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR)';
enable = mips;
};
image = {
name = lzma_decompress;
i386_pc = boot/i386/pc/startup_raw.S;
2013-06-07 16:23:08 +00:00
i386_pc_nodist = rs_decoder.h;
objcopyflags = '-O binary';
ldflags = '$(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x8200';
enable = i386_pc;
};
2010-07-12 19:13:28 +00:00
image = {
name = fwstart;
mips_loongson = boot/mips/loongson/fwstart.S;
2010-07-13 18:05:24 +00:00
objcopyflags = '-O binary';
ldflags = '-Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic';
enable = mips_loongson;
2010-07-12 19:13:28 +00:00
};
image = {
name = fwstart_fuloong2f;
mips_loongson = boot/mips/loongson/fuloong2f.S;
2010-07-13 18:05:24 +00:00
objcopyflags = '-O binary';
ldflags = '-Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic';
enable = mips_loongson;
2010-07-12 19:13:28 +00:00
};
module = {
name = disk;
common = lib/disk.c;
extra_dist = kern/disk_common.c;
};
2010-06-07 15:58:37 +00:00
module = {
name = trig;
common_nodist = trigtables.c;
2010-06-07 15:58:37 +00:00
extra_dist = gentrigtables.c;
};
2010-06-08 04:06:44 +00:00
module = {
name = cs5536;
2010-08-23 07:53:56 +00:00
x86 = bus/cs5536.c;
enable = x86;
2010-06-08 04:06:44 +00:00
};
2010-07-12 19:13:28 +00:00
module = {
name = lsspd;
mips_loongson = commands/mips/loongson/lsspd.c;
enable = mips_loongson;
2010-07-12 19:13:28 +00:00
};
2010-05-06 06:04:04 +00:00
module = {
name = usb;
common = bus/usb/usb.c;
common = bus/usb/usbtrans.c;
common = bus/usb/usbhub.c;
enable = usb;
};
2010-08-22 15:30:22 +00:00
module = {
name = usbserial_common;
common = bus/usb/serial/common.c;
enable = usb;
2010-08-22 15:30:22 +00:00
};
module = {
name = usbserial_pl2303;
common = bus/usb/serial/pl2303.c;
enable = usb;
2010-08-22 15:30:22 +00:00
};
module = {
name = usbserial_ftdi;
common = bus/usb/serial/ftdi.c;
enable = usb;
2010-08-22 15:30:22 +00:00
};
module = {
name = usbserial_usbdebug;
common = bus/usb/serial/usbdebug_late.c;
enable = usb;
};
2010-05-06 06:04:04 +00:00
module = {
name = uhci;
common = bus/usb/uhci.c;
enable = pci;
2010-05-06 06:04:04 +00:00
};
module = {
name = ohci;
common = bus/usb/ohci.c;
enable = pci;
2010-05-06 06:04:04 +00:00
};
2011-10-01 18:18:47 +00:00
module = {
name = ehci;
common = bus/usb/ehci.c;
2017-05-08 20:14:28 +00:00
arm_coreboot = bus/usb/ehci-fdt.c;
pci = bus/usb/ehci-pci.c;
2011-10-01 18:18:47 +00:00
enable = pci;
2017-05-08 20:14:28 +00:00
enable = arm_coreboot;
2011-10-01 18:18:47 +00:00
};
2010-05-06 06:04:04 +00:00
module = {
name = pci;
common = bus/pci.c;
i386_ieee1275 = bus/i386/ieee1275/pci.c;
2010-07-14 20:32:01 +00:00
2010-07-13 18:05:24 +00:00
enable = i386_pc;
enable = i386_ieee1275;
enable = i386_coreboot;
2010-08-28 22:46:36 +00:00
enable = i386_multiboot;
};
2013-04-28 13:31:33 +00:00
module = {
name = nativedisk;
common = commands/nativedisk.c;
enable = x86;
enable = mips_loongson;
enable = mips_qemu_mips;
2013-04-28 13:31:33 +00:00
};
module = {
name = emupci;
common = bus/emu/pci.c;
common = commands/lspci.c;
enable = emu;
condition = COND_GRUB_EMU_PCI;
2010-05-06 06:04:04 +00:00
};
2011-05-13 14:36:05 +00:00
module = {
name = lsdev;
common = commands/arc/lsdev.c;
enable = mips_arc;
};
module = {
name = lsxen;
common = commands/xen/lsxen.c;
enable = xen;
};
2010-08-19 11:24:00 +00:00
module = {
name = cmostest;
common = commands/i386/cmostest.c;
enable = cmos;
2010-08-19 11:24:00 +00:00
};
2013-02-24 18:44:17 +00:00
module = {
name = cmosdump;
common = commands/i386/cmosdump.c;
enable = cmos;
};
2010-05-06 06:04:04 +00:00
module = {
name = iorw;
common = commands/iorw.c;
2010-08-23 07:53:56 +00:00
enable = x86;
2010-05-06 06:04:04 +00:00
};
module = {
name = cbtable;
common = kern/i386/coreboot/cbtable.c;
common = kern/coreboot/cbtable.c;
enable = i386_pc;
enable = i386_efi;
enable = i386_qemu;
enable = i386_multiboot;
enable = i386_ieee1275;
enable = x86_64_efi;
};
module = {
name = cbtime;
common = commands/i386/coreboot/cb_timestamps.c;
enable = x86;
};
module = {
name = cbls;
common = commands/i386/coreboot/cbls.c;
enable = x86;
};
module = {
name = cbmemc;
common = term/i386/coreboot/cbmemc.c;
enable = x86;
};
2010-05-06 06:04:04 +00:00
module = {
name = regexp;
common = commands/regexp.c;
2010-08-26 06:41:57 +00:00
common = commands/wildcard.c;
common = lib/gnulib/regex.c;
2010-05-06 06:04:04 +00:00
cflags = '$(CFLAGS_POSIX) $(CFLAGS_GNULIB)';
cppflags = '$(CPPFLAGS_POSIX) $(CPPFLAGS_GNULIB)';
};
module = {
name = acpi;
common = commands/acpi.c;
i386_pc = kern/acpi.c;
i386_pc = kern/i386/pc/acpi.c;
2010-07-13 18:05:24 +00:00
2010-08-31 19:47:26 +00:00
enable = efi;
2010-07-13 18:05:24 +00:00
enable = i386_pc;
enable = i386_coreboot;
enable = i386_multiboot;
2010-05-06 06:04:04 +00:00
};
module = {
name = lsacpi;
common = commands/lsacpi.c;
enable = efi;
enable = i386_pc;
enable = i386_coreboot;
enable = i386_multiboot;
};
module = {
name = lsefisystab;
common = commands/efi/lsefisystab.c;
enable = efi;
};
module = {
name = lssal;
common = commands/efi/lssal.c;
enable = efi;
};
module = {
name = lsefimmap;
common = commands/efi/lsefimmap.c;
enable = efi;
};
module = {
name = lsefi;
common = commands/efi/lsefi.c;
enable = efi;
};
module = {
name = efifwsetup;
efi = commands/efi/efifwsetup.c;
enable = efi;
};
2010-05-06 06:04:04 +00:00
module = {
name = blocklist;
common = commands/blocklist.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = boot;
common = commands/boot.c;
2010-05-06 06:04:04 +00:00
i386_pc = lib/i386/pc/biosnum.c;
enable = x86;
enable = emu;
enable = sparc64_ieee1275;
enable = powerpc_ieee1275;
enable = mips_arc;
enable = ia64_efi;
2013-07-17 17:03:11 +00:00
enable = arm_efi;
2013-11-16 19:52:55 +00:00
enable = arm64_efi;
2013-07-17 17:03:11 +00:00
enable = arm_uboot;
2017-05-08 18:53:28 +00:00
enable = arm_coreboot;
enable = riscv32_efi;
enable = riscv64_efi;
2010-05-06 06:04:04 +00:00
};
module = {
name = cat;
common = commands/cat.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = cmp;
common = commands/cmp.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = configfile;
common = commands/configfile.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = cpuid;
common = commands/i386/cpuid.c;
2010-07-13 18:05:24 +00:00
enable = x86;
enable = i386_xen_pvh;
enable = i386_xen;
enable = x86_64_xen;
2010-05-06 06:04:04 +00:00
};
module = {
name = date;
common = commands/date.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = drivemap;
i386_pc = commands/i386/pc/drivemap.c;
i386_pc = commands/i386/pc/drivemap_int13h.S;
2010-07-13 18:05:24 +00:00
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
module = {
name = echo;
common = commands/echo.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = eval;
common = commands/eval.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = extcmd;
common = commands/extcmd.c;
common = lib/arg.c;
enable = terminfomodule;
2010-05-06 06:04:04 +00:00
};
module = {
name = fixvideo;
2010-08-31 19:47:26 +00:00
common = commands/efi/fixvideo.c;
enable = i386_efi;
enable = x86_64_efi;
2010-05-06 06:04:04 +00:00
};
module = {
name = gptsync;
common = commands/gptsync.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = halt;
nopc = commands/halt.c;
2010-05-06 06:04:04 +00:00
i386_pc = commands/i386/pc/halt.c;
i386_pc = commands/acpihalt.c;
i386_coreboot = commands/acpihalt.c;
i386_multiboot = commands/acpihalt.c;
2011-01-03 01:28:14 +00:00
i386_efi = commands/acpihalt.c;
x86_64_efi = commands/acpihalt.c;
2010-08-25 21:39:42 +00:00
i386_multiboot = lib/i386/halt.c;
i386_coreboot = lib/i386/halt.c;
i386_qemu = lib/i386/halt.c;
xen = lib/xen/halt.c;
i386_xen_pvh = lib/xen/halt.c;
2010-08-31 19:47:26 +00:00
efi = lib/efi/halt.c;
2010-08-25 21:39:42 +00:00
ieee1275 = lib/ieee1275/halt.c;
emu = lib/emu/halt.c;
uboot = lib/dummy/halt.c;
2017-05-08 18:53:28 +00:00
arm_coreboot = lib/dummy/halt.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = reboot;
i386 = lib/i386/reboot.c;
i386 = lib/i386/reboot_trampoline.S;
powerpc_ieee1275 = lib/ieee1275/reboot.c;
sparc64_ieee1275 = lib/ieee1275/reboot.c;
mips_arc = lib/mips/arc/reboot.c;
mips_loongson = lib/mips/loongson/reboot.c;
mips_qemu_mips = lib/mips/qemu_mips/reboot.c;
xen = lib/xen/reboot.c;
i386_xen_pvh = lib/xen/reboot.c;
2013-04-07 00:41:07 +00:00
uboot = lib/uboot/reboot.c;
2017-05-08 18:53:28 +00:00
arm_coreboot = lib/dummy/reboot.c;
common = commands/reboot.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = hashsum;
common = commands/hashsum.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = pgp;
common = commands/pgp.c;
cflags = '$(CFLAGS_POSIX)';
cppflags = '-I$(srcdir)/lib/posix_wrap';
};
module = {
name = verifiers;
common = commands/verifiers.c;
};
module = {
name = shim_lock;
common = commands/efi/shim_lock.c;
enable = x86_64_efi;
};
2010-05-06 06:04:04 +00:00
module = {
name = hdparm;
common = commands/hdparm.c;
enable = pci;
enable = mips_qemu_mips;
2010-05-06 06:04:04 +00:00
};
module = {
name = help;
common = commands/help.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = hexdump;
common = commands/hexdump.c;
common = lib/hexdump.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = keystatus;
common = commands/keystatus.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = loadbios;
2010-08-31 19:47:26 +00:00
common = commands/efi/loadbios.c;
enable = i386_efi;
enable = x86_64_efi;
2010-05-06 06:04:04 +00:00
};
module = {
name = loadenv;
common = commands/loadenv.c;
common = lib/envblk.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = ls;
common = commands/ls.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = lsmmap;
common = commands/lsmmap.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = lspci;
common = commands/lspci.c;
2010-05-06 06:04:04 +00:00
enable = pci;
2010-05-06 06:04:04 +00:00
};
module = {
name = memrw;
common = commands/memrw.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = minicmd;
common = commands/minicmd.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = parttool;
common = commands/parttool.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = password;
common = commands/password.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = password_pbkdf2;
common = commands/password_pbkdf2.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = play;
2010-08-23 07:53:56 +00:00
x86 = commands/i386/pc/play.c;
enable = x86;
2010-05-06 06:04:04 +00:00
};
module = {
name = spkmodem;
x86 = term/spkmodem.c;
enable = x86;
};
module = {
name = morse;
x86 = term/morse.c;
enable = x86;
};
2010-05-06 06:04:04 +00:00
module = {
name = probe;
common = commands/probe.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = read;
common = commands/read.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = search;
common = commands/search_wrap.c;
2010-06-03 10:00:15 +00:00
extra_dist = commands/search.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = search_fs_file;
common = commands/search_file.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = search_fs_uuid;
common = commands/search_uuid.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = search_label;
common = commands/search_label.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = setpci;
common = commands/setpci.c;
enable = pci;
2010-05-06 06:04:04 +00:00
};
2013-01-16 19:44:11 +00:00
module = {
name = pcidump;
common = commands/pcidump.c;
enable = pci;
};
2010-05-06 06:04:04 +00:00
module = {
name = sleep;
common = commands/sleep.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = smbios;
common = commands/smbios.c;
efi = commands/efi/smbios.c;
i386_pc = commands/i386/pc/smbios.c;
i386_coreboot = commands/i386/pc/smbios.c;
i386_multiboot = commands/i386/pc/smbios.c;
enable = efi;
enable = i386_pc;
enable = i386_coreboot;
enable = i386_multiboot;
};
2010-05-06 06:04:04 +00:00
module = {
name = suspend;
ieee1275 = commands/ieee1275/suspend.c;
2010-07-13 18:05:24 +00:00
enable = i386_ieee1275;
enable = powerpc_ieee1275;
2010-05-06 06:04:04 +00:00
};
module = {
name = escc;
ieee1275 = term/ieee1275/escc.c;
enable = powerpc_ieee1275;
};
2010-05-06 06:04:04 +00:00
module = {
name = terminal;
common = commands/terminal.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = test;
common = commands/test.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = true;
common = commands/true.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = usbtest;
common = commands/usbtest.c;
enable = usb;
2010-05-06 06:04:04 +00:00
};
module = {
2010-09-03 19:19:22 +00:00
name = videoinfo;
common = commands/videoinfo.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = videotest;
common = commands/videotest.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = xnu_uuid;
common = commands/xnu_uuid.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = dm_nv;
common = disk/dmraid_nvidia.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = loopback;
common = disk/loopback.c;
2010-05-06 06:04:04 +00:00
};
2011-04-23 16:00:42 +00:00
module = {
name = cryptodisk;
common = disk/cryptodisk.c;
};
module = {
name = luks;
common = disk/luks.c;
common = disk/AFSplitter.c;
};
2011-04-23 22:00:29 +00:00
module = {
name = geli;
common = disk/geli.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = lvm;
common = disk/lvm.c;
2010-05-06 06:04:04 +00:00
};
Merge common RAID and LVM logic to an abstract diskfilter. Add LDM support using the same framework. * Makefile.util.def (libgrubkern): Add grub-core/disk/ldm.c, grub-core/disk/diskfilter.c and grub-core/partmap/gpt.c. (libgrubmods): Remove grub-core/disk/raid.c and grub-core/partmap/gpt.c. * grub-core/Makefile.core.def (ldm): New module. (raid): Renamed to diskfilter. All users updated. * grub-core/disk/raid.c: Moved to ... * grub-core/disk/diskfilter.c: ... here. * grub-core/disk/diskfilter.c: Rename grub_raid_ to grub_diskfilter_. (lv_num): New var. (find_array): Renamed to ... (find_lv): ... this. Support multi-LV. Skip nameless LVs (grub_is_array_readable): Renamed to ... (grub_is_lv_readable): ... this. Support multinode hierarchy. (insert_array): New argument id. (is_node_readable): New function. (scan_device): Rename to ... (scan_disk): .. this. Restrict to one disk. (scan_devices): New function. (grub_diskfilter_iterate): Support multi-LV. Skip invisible and nameless LVs. (grub_diskfilter_memberlist): Support multi-LV. (grub_diskfilter_read_node): New function. (grub_raid_read): Most of logic moved to ... (read_segment): ... here (read_lv): New function. (grub_diskfilter_get_vg_by_uuid): New function. (grub_diskfilter_make_raid): Likewise. * grub-core/disk/ldm.c: New file. * grub-core/disk/lvm.c (vg_list): Removed. (lv_count): Likewise. (scan_depth): Likewise. (is_lv_readable): Likewise. (grub_lvm_getvalue): Advance pointer past the number. (find_lv): Removed. (do_lvm_scan): Refactored into ... (grub_lvm_detect): ... this. Support raid. (grub_lvm_iterate): Removed. (grub_lvm_memberlist): Likewise. (grub_lvm_open): Likewise. (grub_lvm_close): Likewise. (read_lv): Likewise. (read_node): Likewise. (is_node_readable): Likewise. (is_lv_readable): Likewise. (grub_lvm_read): Likewise. (grub_lvm_write): Likewise. (grub_lvm_dev): Use diskfilter (GRUB_MOD_INIT): Likewise. (GRUB_MOD_FINI): Likewise. * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Use new interface. * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Likewise. * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise. * grub-core/disk/raid5_recover.c (grub_raid5_recover): Use grub_diskfilter_read_node. Fix a bug with xor. * grub-core/disk/raid6_recover.c (grub_raid6_recover): Use grub_diskfilter_read_node. Support GRUB_RAID_LAYOUT_MUL_FROM_POS. * grub-core/kern/disk.c (grub_disk_dev_list): Make global. (grub_disk_dev_iterate): Move from here... * include/grub/disk.h (grub_disk_dev_iterate): ... to here. Inlined. * grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start): Make global. (grub_hostdisk_find_partition_start): Likewise. (grub_hostdisk_os_dev_to_grub_drive): New function. (grub_util_biosdisk_get_osdev): Check that disk is biosdisk. * grub-core/kern/emu/hostdisk.c (make_device_name): Move to ... * util/getroot.c (make_device_name): ... here. * grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info): Move to ... * util/getroot.c (grub_util_get_dm_node_linear_info): ...here. * grub-core/kern/emu/hostdisk.c (convert_system_partition_to_system_disk): Move to ... * util/getroot.c (convert_system_partition_to_system_disk): ...here. * grub-core/kern/emu/hostdisk.c (device_is_wholedisk): Move to ... * util/getroot.c (device_is_wholedisk): ... here. * grub-core/kern/emu/hostdisk.c (find_system_device): Move to ... * util/getroot.c (find_system_device): ... here. * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_present): Move to ... * util/getroot.c (grub_util_biosdisk_is_present): ...here. * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Move to ... * util/getroot.c (grub_util_biosdisk_get_grub_dev): ... here. Handle LDM. * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Move to ... * util/getroot.c (grub_util_biosdisk_is_floppy): ... here. * grub-core/partmap/gpt.c (grub_gpt_partition_map_iterate): Made global. * include/grub/disk.h (grub_disk_dev_id): Replaced RAID and LVM with DISKFILTER. * include/grub/raid.h: Renamed to ... * include/grub/diskfilter.h: ... this. * include/grub/diskfilter.h: Rename grub_raid_* to grub_diskfilter_* (GRUB_RAID_LAYOUT_*): Make into array. (GRUB_RAID_LAYOUT_MUL_FROM_POS): New value. (grub_diskfilter_vg): New struct. (grub_diskfilter_pv_id): Likewise. (grub_raid_member): Removed. (grub_raid_array): Likewise. (grub_diskfilter_pv): New struct. (grub_diskfilter_lv): Likewise. (grub_diskfilter_segment): Likewise. (grub_diskfilter_node): Likewise. (grub_diskfilter_get_vg_by_uuid): New proto. (grub_raid_register): Inline. (grub_diskfilter_unregister): Likewise. (grub_diskfilter_make_raid): New proto. (grub_diskfilter_vg_register): Likewise. (grub_diskfilter_read_node): Likewise. (grub_diskfilter_get_pv_from_disk) [GRUB_UTIL]: Likewise. * include/grub/emu/hostdisk.h (grub_util_get_ldm): New proto. (grub_util_is_ldm): Likewise. (grub_util_ldm_embed) [GRUB_UTIL]: Likewise. (grub_hostdisk_find_partition_start): Likewise. (grub_hostdisk_os_dev_to_grub_drive): Likewise. * include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_LDM): New definition. (grub_gpt_partition_map_iterate): New proto. * include/grub/lvm.h (grub_lvm_vg): Removed. (grub_lvm_pv): Likewise. (grub_lvm_lv): Likewise. (grub_lvm_segment): Likewise. (grub_lvm_node): Likewise. * util/getroot.c [...] * util/grub-probe.c (probe_raid_level): Handle diskfilter. (probe_abstraction): Likewise. * util/grub-setup.c (setup): Remove must_embed. Support LDM. (main): Remove dead logic.
2012-01-29 13:28:01 +00:00
module = {
name = ldm;
common = disk/ldm.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = mdraid09;
common = disk/mdraid_linux.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = mdraid09_be;
common = disk/mdraid_linux_be.c;
};
module = {
name = mdraid1x;
common = disk/mdraid1x_linux.c;
};
2010-05-06 06:04:04 +00:00
module = {
Merge common RAID and LVM logic to an abstract diskfilter. Add LDM support using the same framework. * Makefile.util.def (libgrubkern): Add grub-core/disk/ldm.c, grub-core/disk/diskfilter.c and grub-core/partmap/gpt.c. (libgrubmods): Remove grub-core/disk/raid.c and grub-core/partmap/gpt.c. * grub-core/Makefile.core.def (ldm): New module. (raid): Renamed to diskfilter. All users updated. * grub-core/disk/raid.c: Moved to ... * grub-core/disk/diskfilter.c: ... here. * grub-core/disk/diskfilter.c: Rename grub_raid_ to grub_diskfilter_. (lv_num): New var. (find_array): Renamed to ... (find_lv): ... this. Support multi-LV. Skip nameless LVs (grub_is_array_readable): Renamed to ... (grub_is_lv_readable): ... this. Support multinode hierarchy. (insert_array): New argument id. (is_node_readable): New function. (scan_device): Rename to ... (scan_disk): .. this. Restrict to one disk. (scan_devices): New function. (grub_diskfilter_iterate): Support multi-LV. Skip invisible and nameless LVs. (grub_diskfilter_memberlist): Support multi-LV. (grub_diskfilter_read_node): New function. (grub_raid_read): Most of logic moved to ... (read_segment): ... here (read_lv): New function. (grub_diskfilter_get_vg_by_uuid): New function. (grub_diskfilter_make_raid): Likewise. * grub-core/disk/ldm.c: New file. * grub-core/disk/lvm.c (vg_list): Removed. (lv_count): Likewise. (scan_depth): Likewise. (is_lv_readable): Likewise. (grub_lvm_getvalue): Advance pointer past the number. (find_lv): Removed. (do_lvm_scan): Refactored into ... (grub_lvm_detect): ... this. Support raid. (grub_lvm_iterate): Removed. (grub_lvm_memberlist): Likewise. (grub_lvm_open): Likewise. (grub_lvm_close): Likewise. (read_lv): Likewise. (read_node): Likewise. (is_node_readable): Likewise. (is_lv_readable): Likewise. (grub_lvm_read): Likewise. (grub_lvm_write): Likewise. (grub_lvm_dev): Use diskfilter (GRUB_MOD_INIT): Likewise. (GRUB_MOD_FINI): Likewise. * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Use new interface. * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Likewise. * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise. * grub-core/disk/raid5_recover.c (grub_raid5_recover): Use grub_diskfilter_read_node. Fix a bug with xor. * grub-core/disk/raid6_recover.c (grub_raid6_recover): Use grub_diskfilter_read_node. Support GRUB_RAID_LAYOUT_MUL_FROM_POS. * grub-core/kern/disk.c (grub_disk_dev_list): Make global. (grub_disk_dev_iterate): Move from here... * include/grub/disk.h (grub_disk_dev_iterate): ... to here. Inlined. * grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start): Make global. (grub_hostdisk_find_partition_start): Likewise. (grub_hostdisk_os_dev_to_grub_drive): New function. (grub_util_biosdisk_get_osdev): Check that disk is biosdisk. * grub-core/kern/emu/hostdisk.c (make_device_name): Move to ... * util/getroot.c (make_device_name): ... here. * grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info): Move to ... * util/getroot.c (grub_util_get_dm_node_linear_info): ...here. * grub-core/kern/emu/hostdisk.c (convert_system_partition_to_system_disk): Move to ... * util/getroot.c (convert_system_partition_to_system_disk): ...here. * grub-core/kern/emu/hostdisk.c (device_is_wholedisk): Move to ... * util/getroot.c (device_is_wholedisk): ... here. * grub-core/kern/emu/hostdisk.c (find_system_device): Move to ... * util/getroot.c (find_system_device): ... here. * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_present): Move to ... * util/getroot.c (grub_util_biosdisk_is_present): ...here. * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Move to ... * util/getroot.c (grub_util_biosdisk_get_grub_dev): ... here. Handle LDM. * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Move to ... * util/getroot.c (grub_util_biosdisk_is_floppy): ... here. * grub-core/partmap/gpt.c (grub_gpt_partition_map_iterate): Made global. * include/grub/disk.h (grub_disk_dev_id): Replaced RAID and LVM with DISKFILTER. * include/grub/raid.h: Renamed to ... * include/grub/diskfilter.h: ... this. * include/grub/diskfilter.h: Rename grub_raid_* to grub_diskfilter_* (GRUB_RAID_LAYOUT_*): Make into array. (GRUB_RAID_LAYOUT_MUL_FROM_POS): New value. (grub_diskfilter_vg): New struct. (grub_diskfilter_pv_id): Likewise. (grub_raid_member): Removed. (grub_raid_array): Likewise. (grub_diskfilter_pv): New struct. (grub_diskfilter_lv): Likewise. (grub_diskfilter_segment): Likewise. (grub_diskfilter_node): Likewise. (grub_diskfilter_get_vg_by_uuid): New proto. (grub_raid_register): Inline. (grub_diskfilter_unregister): Likewise. (grub_diskfilter_make_raid): New proto. (grub_diskfilter_vg_register): Likewise. (grub_diskfilter_read_node): Likewise. (grub_diskfilter_get_pv_from_disk) [GRUB_UTIL]: Likewise. * include/grub/emu/hostdisk.h (grub_util_get_ldm): New proto. (grub_util_is_ldm): Likewise. (grub_util_ldm_embed) [GRUB_UTIL]: Likewise. (grub_hostdisk_find_partition_start): Likewise. (grub_hostdisk_os_dev_to_grub_drive): Likewise. * include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_LDM): New definition. (grub_gpt_partition_map_iterate): New proto. * include/grub/lvm.h (grub_lvm_vg): Removed. (grub_lvm_pv): Likewise. (grub_lvm_lv): Likewise. (grub_lvm_segment): Likewise. (grub_lvm_node): Likewise. * util/getroot.c [...] * util/grub-probe.c (probe_raid_level): Handle diskfilter. (probe_abstraction): Likewise. * util/grub-setup.c (setup): Remove must_embed. Support LDM. (main): Remove dead logic.
2012-01-29 13:28:01 +00:00
name = diskfilter;
common = disk/diskfilter.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = raid5rec;
common = disk/raid5_recover.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = raid6rec;
common = disk/raid6_recover.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = scsi;
common = disk/scsi.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = memdisk;
common = disk/memdisk.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = ata;
common = disk/ata.c;
enable = pci;
2011-05-17 12:35:55 +00:00
enable = mips_qemu_mips;
2010-05-06 06:04:04 +00:00
};
module = {
2010-12-24 15:16:01 +00:00
name = ahci;
common = disk/ahci.c;
enable = pci;
2010-05-06 06:04:04 +00:00
};
2010-12-24 15:16:01 +00:00
module = {
name = pata;
common = disk/pata.c;
enable = pci;
2011-05-17 12:35:55 +00:00
enable = mips_qemu_mips;
2010-05-06 06:04:04 +00:00
};
module = {
name = biosdisk;
i386_pc = disk/i386/pc/biosdisk.c;
2010-07-13 18:05:24 +00:00
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
module = {
name = usbms;
common = disk/usbms.c;
enable = usb;
2010-05-06 06:04:04 +00:00
};
module = {
name = nand;
ieee1275 = disk/ieee1275/nand.c;
2010-07-13 18:05:24 +00:00
enable = i386_ieee1275;
2010-05-06 06:04:04 +00:00
};
module = {
name = efiemu;
common = efiemu/main.c;
common = efiemu/i386/loadcore32.c;
common = efiemu/i386/loadcore64.c;
2010-05-06 06:04:04 +00:00
i386_pc = efiemu/i386/pc/cfgtables.c;
2010-08-25 20:34:15 +00:00
i386_coreboot = efiemu/i386/pc/cfgtables.c;
i386_multiboot = efiemu/i386/pc/cfgtables.c;
i386_ieee1275 = efiemu/i386/nocfgtables.c;
2010-08-28 22:53:09 +00:00
i386_qemu = efiemu/i386/nocfgtables.c;
common = efiemu/mm.c;
common = efiemu/loadcore_common.c;
common = efiemu/symbols.c;
common = efiemu/loadcore32.c;
common = efiemu/loadcore64.c;
common = efiemu/prepare32.c;
common = efiemu/prepare64.c;
common = efiemu/pnvram.c;
common = efiemu/i386/coredetect.c;
2010-06-03 06:22:33 +00:00
extra_dist = efiemu/prepare.c;
extra_dist = efiemu/loadcore.c;
extra_dist = efiemu/runtime/efiemu.S;
extra_dist = efiemu/runtime/efiemu.c;
2010-07-13 18:05:24 +00:00
enable = i386_pc;
2010-08-25 20:34:15 +00:00
enable = i386_coreboot;
enable = i386_ieee1275;
enable = i386_multiboot;
2010-08-28 22:53:09 +00:00
enable = i386_qemu;
2010-05-06 06:04:04 +00:00
};
module = {
name = font;
common = font/font.c;
common = font/font_cmd.c;
enable = videomodules;
2010-05-06 06:04:04 +00:00
};
module = {
name = procfs;
common = fs/proc.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = affs;
common = fs/affs.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = afs;
common = fs/afs.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = bfs;
common = fs/bfs.c;
2010-05-06 06:04:04 +00:00
};
zstd: Import upstream zstd-1.3.6 - Import zstd-1.3.6 from upstream - Add zstd's module.c file - Add the zstd module to Makefile.core.def Import zstd-1.3.6 from upstream [1]. Only the files need for decompression are imported. I used the latest zstd release, which includes patches [2] to build cleanly in GRUB. I included the script used to import zstd-1.3.6 below at the bottom of the commit message. Upstream zstd commit hash: 4fa456d7f12f8b27bd3b2f5dfd4f46898cb31c24 Upstream zstd commit name: Merge pull request #1354 from facebook/dev Zstd requires some posix headers, which it gets from posix_wrap. This can be checked by inspecting the .Po files generated by automake, which contain the header dependencies. After building run the command `cat grub-core/lib/zstd/.deps-core/*.Po` to see the dependencies [3]. The only OS dependencies are: - stddef.h, which is already a dependency in posix_wrap, and used for size_t by lzo and xz. - stdarg.h, which comes from the grub/misc.h header, and we don't use in zstd. All the types like uint64_t are typedefed to grub_uint64_t under the hood. The only exception is size_t, which comes from stddef.h. This is already the case for lzo and xz. I don't think there are any cross-compilation concerns, because cross-compilers provide their own system headers (and it would already be broken). [1] https://github.com/facebook/zstd/releases/tag/v1.3.6 [2] https://github.com/facebook/zstd/pull/1344 [3] https://gist.github.com/terrelln/7a16b92f5a1b3aecf980f944b4a966c4 ``` curl -L -O https://github.com/facebook/zstd/releases/download/v1.3.6/zstd-1.3.6.tar.gz curl -L -O https://github.com/facebook/zstd/releases/download/v1.3.6/zstd-1.3.6.tar.gz.sha256 sha256sum --check zstd-1.3.6.tar.gz.sha256 tar xzf zstd-1.3.6.tar.gz SRC_LIB="zstd-1.3.6/lib" DST_LIB="grub-core/lib/zstd" rm -rf $DST_LIB mkdir -p $DST_LIB cp $SRC_LIB/zstd.h $DST_LIB/ cp $SRC_LIB/common/*.[hc] $DST_LIB/ cp $SRC_LIB/decompress/*.[hc] $DST_LIB/ rm $DST_LIB/{pool.[hc],threading.[hc]} rm -rf zstd-1.3.6* echo SUCCESS! ``` Signed-off-by: Nick Terrell <terrelln@fb.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
2018-11-19 19:20:07 +00:00
module = {
name = zstd;
common = lib/zstd/debug.c;
common = lib/zstd/entropy_common.c;
common = lib/zstd/error_private.c;
common = lib/zstd/fse_decompress.c;
common = lib/zstd/huf_decompress.c;
common = lib/zstd/module.c;
common = lib/zstd/xxhash.c;
common = lib/zstd/zstd_common.c;
common = lib/zstd/zstd_decompress.c;
cflags = '$(CFLAGS_POSIX) -Wno-undef';
cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/zstd';
};
2010-05-06 06:04:04 +00:00
module = {
name = btrfs;
common = fs/btrfs.c;
2010-12-01 00:22:55 +00:00
common = lib/crc.c;
cflags = '$(CFLAGS_POSIX) -Wno-undef';
cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -I$(srcdir)/lib/zstd -DMINILZO_HAVE_CONFIG_H';
2010-05-06 06:04:04 +00:00
};
module = {
name = archelp;
common = fs/archelp.c;
};
module = {
name = cbfs;
common = fs/cbfs.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = cpio;
common = fs/cpio.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = cpio_be;
common = fs/cpio_be.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = newc;
common = fs/newc.c;
};
module = {
name = odc;
common = fs/odc.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = ext2;
common = fs/ext2.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = fat;
common = fs/fat.c;
2010-05-06 06:04:04 +00:00
};
2011-04-11 16:13:00 +00:00
module = {
name = exfat;
common = fs/exfat.c;
};
module = {
name = f2fs;
common = fs/f2fs.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = fshelp;
common = fs/fshelp.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = hfs;
common = fs/hfs.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = hfsplus;
common = fs/hfsplus.c;
2010-05-06 06:04:04 +00:00
};
2013-05-07 13:46:17 +00:00
module = {
name = hfspluscomp;
common = fs/hfspluscomp.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = iso9660;
common = fs/iso9660.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = jfs;
common = fs/jfs.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = minix;
common = fs/minix.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = minix2;
common = fs/minix2.c;
};
2011-04-11 06:16:13 +00:00
module = {
name = minix3;
common = fs/minix3.c;
};
module = {
name = minix_be;
common = fs/minix_be.c;
};
module = {
name = minix2_be;
common = fs/minix2_be.c;
};
module = {
name = minix3_be;
common = fs/minix3_be.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = nilfs2;
common = fs/nilfs2.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = ntfs;
common = fs/ntfs.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = ntfscomp;
common = fs/ntfscomp.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = reiserfs;
common = fs/reiserfs.c;
2010-05-06 06:04:04 +00:00
};
2010-12-15 18:49:35 +00:00
module = {
name = romfs;
common = fs/romfs.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = sfs;
common = fs/sfs.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = squash4;
common = fs/squash4.c;
cflags = '$(CFLAGS_POSIX) -Wno-undef';
cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H';
};
2010-05-06 06:04:04 +00:00
module = {
name = tar;
common = fs/tar.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = udf;
common = fs/udf.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = ufs1;
common = fs/ufs.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = ufs1_be;
common = fs/ufs_be.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = ufs2;
common = fs/ufs2.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = xfs;
common = fs/xfs.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = zfs;
common = fs/zfs/zfs.c;
common = fs/zfs/zfs_lzjb.c;
common = fs/zfs/zfs_lz4.c;
common = fs/zfs/zfs_sha256.c;
common = fs/zfs/zfs_fletcher.c;
};
2011-11-06 14:18:25 +00:00
module = {
name = zfscrypt;
common = fs/zfs/zfscrypt.c;
};
module = {
name = zfsinfo;
common = fs/zfs/zfsinfo.c;
};
module = {
name = macbless;
common = commands/macbless.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = pxe;
2011-06-26 02:19:12 +00:00
i386_pc = net/drivers/i386/pc/pxe.c;
2010-07-13 18:05:24 +00:00
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
module = {
name = gettext;
common = gettext/gettext.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = gfxmenu;
common = gfxmenu/gfxmenu.c;
common = gfxmenu/view.c;
common = gfxmenu/font.c;
common = gfxmenu/icon_manager.c;
common = gfxmenu/theme_loader.c;
common = gfxmenu/widget-box.c;
common = gfxmenu/gui_canvas.c;
common = gfxmenu/gui_circular_progress.c;
common = gfxmenu/gui_box.c;
common = gfxmenu/gui_label.c;
common = gfxmenu/gui_list.c;
common = gfxmenu/gui_image.c;
common = gfxmenu/gui_progress_bar.c;
common = gfxmenu/gui_util.c;
common = gfxmenu/gui_string_util.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = hello;
common = hello/hello.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = gzio;
common = io/gzio.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = offsetio;
common = io/offset.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = bufio;
common = io/bufio.c;
enable = videomodules;
2010-05-06 06:04:04 +00:00
};
module = {
name = elf;
common = kern/elf.c;
extra_dist = kern/elfXX.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = crypto;
common = lib/crypto.c;
2010-06-03 10:00:15 +00:00
extra_dist = lib/libgcrypt-grub/cipher/crypto.lst;
2010-05-06 06:04:04 +00:00
};
module = {
name = pbkdf2;
common = lib/pbkdf2.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = relocator;
common = lib/relocator.c;
x86 = lib/i386/relocator16.S;
x86 = lib/i386/relocator32.S;
x86 = lib/i386/relocator64.S;
i386_xen_pvh = lib/i386/relocator16.S;
i386_xen_pvh = lib/i386/relocator32.S;
i386_xen_pvh = lib/i386/relocator64.S;
i386 = lib/i386/relocator_asm.S;
i386_xen_pvh = lib/i386/relocator_asm.S;
x86_64 = lib/x86_64/relocator_asm.S;
i386_xen = lib/i386/relocator_asm.S;
x86_64_xen = lib/x86_64/relocator_asm.S;
2010-05-06 06:04:04 +00:00
x86 = lib/i386/relocator.c;
x86 = lib/i386/relocator_common_c.c;
i386_xen_pvh = lib/i386/relocator.c;
i386_xen_pvh = lib/i386/relocator_common_c.c;
ieee1275 = lib/ieee1275/relocator.c;
2010-08-31 19:47:26 +00:00
efi = lib/efi/relocator.c;
mips = lib/mips/relocator_asm.S;
mips = lib/mips/relocator.c;
powerpc = lib/powerpc/relocator_asm.S;
powerpc = lib/powerpc/relocator.c;
xen = lib/xen/relocator.c;
i386_xen = lib/i386/xen/relocator.S;
x86_64_xen = lib/x86_64/xen/relocator.S;
xen = lib/i386/relocator_common_c.c;
x86_64_efi = lib/x86_64/efi/relocator.c;
extra_dist = lib/i386/relocator_common.S;
extra_dist = kern/powerpc/cache_flush.S;
2010-07-13 18:05:24 +00:00
enable = mips;
enable = powerpc;
2010-07-13 18:05:24 +00:00
enable = x86;
enable = i386_xen_pvh;
enable = xen;
2010-05-06 06:04:04 +00:00
};
module = {
name = datetime;
cmos = lib/cmos_datetime.c;
2010-08-31 19:47:26 +00:00
efi = lib/efi/datetime.c;
uboot = lib/dummy/datetime.c;
2017-05-08 18:53:28 +00:00
arm_coreboot = lib/dummy/datetime.c;
2010-05-06 06:04:04 +00:00
sparc64_ieee1275 = lib/ieee1275/datetime.c;
powerpc_ieee1275 = lib/ieee1275/datetime.c;
sparc64_ieee1275 = lib/ieee1275/cmos.c;
powerpc_ieee1275 = lib/ieee1275/cmos.c;
xen = lib/xen/datetime.c;
i386_xen_pvh = lib/xen/datetime.c;
2011-05-13 14:36:05 +00:00
mips_arc = lib/arc/datetime.c;
enable = noemu;
2010-05-06 06:04:04 +00:00
};
module = {
name = setjmp;
common = lib/setjmp.S;
2010-08-18 06:27:51 +00:00
extra_dist = lib/i386/setjmp.S;
extra_dist = lib/mips/setjmp.S;
extra_dist = lib/x86_64/setjmp.S;
extra_dist = lib/sparc64/setjmp.S;
extra_dist = lib/powerpc/setjmp.S;
extra_dist = lib/ia64/setjmp.S;
extra_dist = lib/ia64/longjmp.S;
2013-04-07 00:41:07 +00:00
extra_dist = lib/arm/setjmp.S;
extra_dist = lib/arm64/setjmp.S;
extra_dist = lib/riscv/setjmp.S;
2010-05-06 06:04:04 +00:00
};
module = {
name = aout;
common = loader/aout.c;
enable = x86;
2010-05-06 06:04:04 +00:00
};
module = {
name = bsd;
x86 = loader/i386/bsd.c;
x86 = loader/i386/bsd32.c;
x86 = loader/i386/bsd64.c;
2010-06-03 10:00:15 +00:00
extra_dist = loader/i386/bsdXX.c;
extra_dist = loader/i386/bsd_pagetable.c;
enable = x86;
2010-05-06 06:04:04 +00:00
};
2010-12-19 15:10:26 +00:00
module = {
name = plan9;
i386_pc = loader/i386/pc/plan9.c;
enable = i386_pc;
};
2010-05-06 06:04:04 +00:00
module = {
name = linux16;
common = loader/i386/pc/linux.c;
enable = x86;
2010-05-06 06:04:04 +00:00
};
module = {
name = ntldr;
i386_pc = loader/i386/pc/ntldr.c;
enable = i386_pc;
};
2013-12-17 13:45:46 +00:00
module = {
name = truecrypt;
i386_pc = loader/i386/pc/truecrypt.c;
enable = i386_pc;
};
2010-12-25 23:38:20 +00:00
module = {
name = freedos;
i386_pc = loader/i386/pc/freedos.c;
enable = i386_pc;
};
module = {
name = pxechain;
i386_pc = loader/i386/pc/pxechainloader.c;
enable = i386_pc;
};
2010-05-06 06:04:04 +00:00
module = {
name = multiboot2;
cppflags = "-DGRUB_USE_MULTIBOOT2";
common = loader/multiboot.c;
common = loader/multiboot_mbi2.c;
2010-07-13 18:05:24 +00:00
enable = x86;
enable = i386_xen_pvh;
2010-07-13 18:05:24 +00:00
enable = mips;
2010-05-06 06:04:04 +00:00
};
module = {
name = multiboot;
common = loader/multiboot.c;
x86 = loader/i386/multiboot_mbi.c;
i386_xen_pvh = loader/i386/multiboot_mbi.c;
2010-06-03 06:22:33 +00:00
extra_dist = loader/multiboot_elfxx.c;
2010-07-13 18:05:24 +00:00
enable = x86;
enable = i386_xen_pvh;
2010-05-06 06:04:04 +00:00
};
module = {
name = xen_boot;
arm64 = loader/arm64/xen_boot.c;
enable = arm64;
};
2010-05-06 06:04:04 +00:00
module = {
name = linux;
x86 = loader/i386/linux.c;
i386_xen_pvh = loader/i386/linux.c;
xen = loader/i386/xen.c;
i386_pc = lib/i386/pc/vesa_modes_table.c;
i386_xen_pvh = lib/i386/pc/vesa_modes_table.c;
2010-05-06 06:04:04 +00:00
mips = loader/mips/linux.c;
powerpc_ieee1275 = loader/powerpc/ieee1275/linux.c;
sparc64_ieee1275 = loader/sparc64/ieee1275/linux.c;
2010-08-31 19:47:26 +00:00
ia64_efi = loader/ia64/efi/linux.c;
arm_coreboot = loader/arm/linux.c;
arm_efi = loader/arm64/linux.c;
arm_uboot = loader/arm/linux.c;
arm64 = loader/arm64/linux.c;
riscv32 = loader/riscv/linux.c;
riscv64 = loader/riscv/linux.c;
common = loader/linux.c;
2017-08-14 14:23:52 +00:00
common = lib/cmdline.c;
enable = noemu;
2010-05-06 06:04:04 +00:00
};
module = {
name = fdt;
efi = loader/efi/fdt.c;
common = lib/fdt.c;
enable = fdt;
};
2010-05-06 06:04:04 +00:00
module = {
name = xnu;
x86 = loader/xnu_resume.c;
x86 = loader/i386/xnu.c;
x86 = loader/xnu.c;
2010-06-03 06:22:33 +00:00
/* Code is pretty generic but relies on RNG which
is available only on few platforms. It's not a
big deal as xnu needs ACPI anyway and we have
RNG on all platforms with ACPI.
*/
enable = i386_multiboot;
enable = i386_coreboot;
enable = i386_pc;
enable = i386_efi;
enable = x86_64_efi;
};
2016-02-12 11:39:38 +00:00
module = {
name = random;
x86 = lib/i386/random.c;
common = lib/random.c;
i386_multiboot = kern/i386/tsc_pmtimer.c;
i386_coreboot = kern/i386/tsc_pmtimer.c;
i386_pc = kern/i386/tsc_pmtimer.c;
enable = i386_multiboot;
enable = i386_coreboot;
enable = i386_pc;
enable = i386_efi;
enable = x86_64_efi;
2010-05-06 06:04:04 +00:00
};
module = {
name = macho;
common = loader/macho.c;
common = loader/macho32.c;
common = loader/macho64.c;
common = loader/lzss.c;
extra_dist = loader/machoXX.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = appleldr;
2010-08-31 19:47:26 +00:00
common = loader/efi/appleloader.c;
enable = i386_efi;
enable = x86_64_efi;
2010-05-06 06:04:04 +00:00
};
module = {
name = chain;
2010-08-31 19:47:26 +00:00
efi = loader/efi/chainloader.c;
2010-05-06 06:04:04 +00:00
i386_pc = loader/i386/pc/chainloader.c;
i386_coreboot = loader/i386/coreboot/chainloader.c;
i386_coreboot = lib/LzmaDec.c;
2010-07-13 18:05:24 +00:00
enable = i386_pc;
enable = i386_coreboot;
2010-08-31 19:47:26 +00:00
enable = efi;
2010-05-06 06:04:04 +00:00
};
module = {
name = mmap;
common = mmap/mmap.c;
x86 = mmap/i386/uppermem.c;
x86 = mmap/i386/mmap.c;
i386_xen_pvh = mmap/i386/uppermem.c;
i386_xen_pvh = mmap/i386/mmap.c;
2010-05-06 06:04:04 +00:00
i386_pc = mmap/i386/pc/mmap.c;
i386_pc = mmap/i386/pc/mmap_helper.S;
2010-08-31 19:47:26 +00:00
efi = mmap/efi/mmap.c;
2010-05-06 06:04:04 +00:00
2011-05-13 14:36:05 +00:00
mips = mmap/mips/uppermem.c;
2010-07-13 18:05:24 +00:00
enable = x86;
enable = i386_xen_pvh;
2011-01-03 01:28:14 +00:00
enable = ia64_efi;
2013-04-07 00:41:07 +00:00
enable = arm_efi;
2013-11-16 19:52:55 +00:00
enable = arm64_efi;
enable = riscv32_efi;
enable = riscv64_efi;
enable = mips;
2010-05-06 06:04:04 +00:00
};
module = {
name = normal;
common = normal/main.c;
common = normal/cmdline.c;
common = normal/dyncmd.c;
common = normal/auth.c;
common = normal/autofs.c;
common = normal/color.c;
common = normal/completion.c;
common = normal/datetime.c;
common = normal/menu.c;
common = normal/menu_entry.c;
common = normal/menu_text.c;
common = normal/misc.c;
common = normal/crypto.c;
common = normal/term.c;
common = normal/context.c;
common = normal/charset.c;
2013-12-18 04:28:05 +00:00
common = lib/getline.c;
common = script/main.c;
common = script/script.c;
common = script/execute.c;
common = script/function.c;
common = script/lexer.c;
common = script/argv.c;
2010-09-03 15:38:12 +00:00
common = commands/menuentry.c;
common = unidata.c;
common_nodist = grub_script.tab.c;
common_nodist = grub_script.yy.c;
common_nodist = grub_script.tab.h;
common_nodist = grub_script.yy.h;
2010-07-12 19:13:28 +00:00
extra_dist = script/yylex.l;
extra_dist = script/parser.y;
Increase warning level. * conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -Wno-old-style-definition. * configure.ac (HOST_CFLAGS): Add bunch of -W arguments. (TARGET_CFLAGS): Likewise. (HOST_CFLAGS): Add -Werror unless --disable-werror is activated. * grub-core/Makefile.core.def (decompressor_xz): Add -Wno-unreachable-code. (normal): Add -Wno-redundant-decls. (xzio): Add -Wno-unreachable-code. (lzopio): Add -Wno-redundant-decls -Wno-error. * grub-core/commands/acpi.c: Add exception to -Wcast-align. * grub-core/commands/lsacpi.c: Add exception to -Wcast-align. * grub-core/gensymlist.sh: Add exception to -Wmissing-format-attribute. * grub-core/kern/dl.c: Add exception to -Wcast-align. * grub-core/kern/efi/efi.c (grub_efi_modules_addr): Likewise. * grub-core/kern/i386/coreboot/init.c: Add exception to -Wsuggest-attribute=noreturn. * grub-core/kern/ia64/dl.c: Add exception to -Wcast-align. * grub-core/kern/ia64/dl_helper.c: Likewise. * grub-core/kern/mips/dl.c: Likewise. * grub-core/kern/sparc64/dl.c: Likewise. * grub-core/lib/LzmaEnc.c: Add exception to -Wshadow. * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy): Likewise. (memcmp): Likewise. * grub-core/lib/pbkdf2.c: Add exception to -Wunreachable-code. * grub-core/loader/ia64/efi/linux.c: Add exception to -Wcast-align. * grub-core/loader/mips/linux.c: Likewise. * grub-core/loader/multiboot_elfxx.c: Likewise. * grub-core/script/parser.y: Add exception to -Wunreachable-code. * grub-core/video/sm712.c: Add exception to -Wcast-align. * util/import_gcry.py: Add -Wno-cast-align to modules checked by hand. * grub-core/font/font.c (grub_font_loader_init): Add explicit cast and fixme. * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Likewise. * grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_init): Fix prototype.
2012-02-10 15:48:48 +00:00
cflags = '$(CFLAGS_POSIX) -Wno-redundant-decls';
2010-07-12 19:13:28 +00:00
cppflags = '$(CPPFLAGS_POSIX)';
2010-05-06 06:04:04 +00:00
};
module = {
name = part_acorn;
common = partmap/acorn.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = part_amiga;
common = partmap/amiga.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = part_apple;
common = partmap/apple.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = part_gpt;
common = partmap/gpt.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = part_msdos;
common = partmap/msdos.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = part_sun;
common = partmap/sun.c;
2010-05-06 06:04:04 +00:00
};
2010-12-20 00:18:21 +00:00
module = {
name = part_plan;
common = partmap/plan.c;
};
2011-11-13 11:48:39 +00:00
2011-05-13 14:36:05 +00:00
module = {
name = part_dvh;
common = partmap/dvh.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = part_bsd;
common = partmap/bsdlabel.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = part_sunpc;
common = partmap/sunpc.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = part_dfly;
common = partmap/dfly.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = msdospart;
common = parttool/msdospart.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = at_keyboard;
common = term/at_keyboard.c;
common = term/ps2.c;
2010-07-13 18:05:24 +00:00
enable = x86;
2010-05-06 06:04:04 +00:00
};
module = {
name = gfxterm;
common = term/gfxterm.c;
enable = videomodules;
2010-05-06 06:04:04 +00:00
};
module = {
name = gfxterm_background;
common = term/gfxterm_background.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = serial;
common = term/serial.c;
2010-08-22 15:30:22 +00:00
x86 = term/ns8250.c;
ieee1275 = term/ieee1275/serial.c;
2013-04-25 20:40:03 +00:00
mips_arc = term/arc/serial.c;
efi = term/efi/serial.c;
2010-08-22 15:30:22 +00:00
enable = terminfomodule;
enable = ieee1275;
2013-04-25 20:40:03 +00:00
enable = mips_arc;
2010-08-22 15:30:22 +00:00
};
module = {
name = sendkey;
i386_pc = commands/i386/pc/sendkey.c;
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
module = {
name = terminfo;
common = term/terminfo.c;
common = term/tparm.c;
enable = terminfomodule;
2010-05-06 06:04:04 +00:00
};
module = {
name = usb_keyboard;
common = term/usb_keyboard.c;
enable = usb;
2010-05-06 06:04:04 +00:00
};
module = {
name = vga;
common = video/i386/pc/vga.c;
2010-07-13 18:05:24 +00:00
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
module = {
name = vga_text;
common = term/i386/pc/vga_text.c;
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
module = {
name = mda_text;
common = term/i386/pc/mda_text.c;
enable = i386_pc;
enable = i386_coreboot_multiboot_qemu;
};
2010-07-12 19:13:28 +00:00
module = {
name = video_cirrus;
2010-08-23 07:53:56 +00:00
x86 = video/cirrus.c;
enable = x86;
2010-07-12 19:13:28 +00:00
};
module = {
name = video_bochs;
2010-08-23 07:53:56 +00:00
x86 = video/bochs.c;
enable = x86;
2010-07-12 19:13:28 +00:00
};
2010-05-06 06:04:04 +00:00
module = {
name = functional_test;
common = tests/lib/functional_test.c;
common = tests/lib/test.c;
common = tests/checksums.h;
common = tests/video_checksum.c;
common = tests/fake_input.c;
common = video/capture.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = exfctest;
common = tests/example_functional_test.c;
2010-05-06 06:04:04 +00:00
};
2017-05-03 10:58:15 +00:00
module = {
name = strtoull_test;
common = tests/strtoull_test.c;
};
module = {
name = setjmp_test;
common = tests/setjmp_test.c;
};
module = {
name = signature_test;
common = tests/signature_test.c;
common = tests/signatures.h;
};
module = {
name = sleep_test;
common = tests/sleep_test.c;
};
module = {
name = xnu_uuid_test;
common = tests/xnu_uuid_test.c;
};
module = {
name = pbkdf2_test;
common = tests/pbkdf2_test.c;
};
module = {
name = legacy_password_test;
common = tests/legacy_password_test.c;
enable = i386_pc;
enable = i386_xen_pvh;
enable = i386_efi;
enable = x86_64_efi;
enable = emu;
enable = xen;
};
module = {
name = div;
common = lib/division.c;
enable = no_softdiv;
};
module = {
name = div_test;
common = tests/div_test.c;
};
module = {
name = mul_test;
common = tests/mul_test.c;
};
module = {
name = shift_test;
common = tests/shift_test.c;
};
module = {
name = cmp_test;
common = tests/cmp_test.c;
};
module = {
name = ctz_test;
common = tests/ctz_test.c;
};
module = {
name = bswap_test;
common = tests/bswap_test.c;
};
module = {
name = videotest_checksum;
common = tests/videotest_checksum.c;
};
module = {
name = gfxterm_menu;
common = tests/gfxterm_menu.c;
};
2013-05-08 09:49:25 +00:00
module = {
name = cmdline_cat_test;
common = tests/cmdline_cat_test.c;
};
2010-05-06 06:04:04 +00:00
module = {
name = bitmap;
common = video/bitmap.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = bitmap_scale;
common = video/bitmap_scale.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = efi_gop;
2010-08-31 19:47:26 +00:00
efi = video/efi_gop.c;
enable = efi;
2010-05-06 06:04:04 +00:00
};
module = {
name = efi_uga;
2010-08-31 19:47:26 +00:00
efi = video/efi_uga.c;
2011-01-03 01:28:14 +00:00
enable = i386_efi;
enable = x86_64_efi;
2010-05-06 06:04:04 +00:00
};
module = {
name = jpeg;
common = video/readers/jpeg.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = png;
common = video/readers/png.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = tga;
common = video/readers/tga.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = vbe;
common = video/i386/pc/vbe.c;
2010-07-13 18:05:24 +00:00
enable = i386_pc;
2010-05-06 06:04:04 +00:00
};
module = {
name = video_fb;
common = video/fb/video_fb.c;
common = video/fb/fbblit.c;
common = video/fb/fbfill.c;
common = video/fb/fbutil.c;
enable = videomodules;
2010-05-06 06:04:04 +00:00
};
module = {
name = video;
common = video/video.c;
enable = videomodules;
2010-05-06 06:04:04 +00:00
};
module = {
name = video_colors;
common = video/colors.c;
2010-05-06 06:04:04 +00:00
};
module = {
name = ieee1275_fb;
ieee1275 = video/ieee1275.c;
enable = powerpc_ieee1275;
};
2010-05-06 06:04:04 +00:00
module = {
name = sdl;
emu = video/emu/sdl.c;
2010-07-13 18:05:24 +00:00
enable = emu;
condition = COND_GRUB_EMU_SDL;
2010-05-06 06:04:04 +00:00
};
module = {
name = datehook;
common = hook/datehook.c;
2010-05-06 06:04:04 +00:00
};
2010-08-27 17:05:06 +00:00
2010-09-01 21:28:02 +00:00
module = {
name = net;
common = net/net.c;
2011-10-14 17:21:59 +00:00
common = net/dns.c;
2011-07-06 11:52:35 +00:00
common = net/bootp.c;
common = net/ip.c;
common = net/udp.c;
2011-07-10 06:46:48 +00:00
common = net/tcp.c;
2011-07-08 12:41:52 +00:00
common = net/icmp.c;
2011-10-12 08:20:55 +00:00
common = net/icmp6.c;
common = net/ethernet.c;
common = net/arp.c;
common = net/netbuff.c;
};
module = {
name = tftp;
common = net/tftp.c;
};
2011-07-23 01:49:02 +00:00
module = {
name = http;
common = net/http.c;
};
module = {
name = ofnet;
2011-06-26 20:42:04 +00:00
common = net/drivers/ieee1275/ofnet.c;
enable = ieee1275;
};
2010-09-22 15:14:43 +00:00
2013-04-12 14:55:38 +00:00
module = {
name = ubootnet;
common = net/drivers/uboot/ubootnet.c;
enable = uboot;
};
2011-06-26 20:42:04 +00:00
module = {
name = efinet;
common = net/drivers/efi/efinet.c;
enable = efi;
};
2010-09-22 15:14:43 +00:00
module = {
name = emunet;
emu = net/drivers/emu/emunet.c;
2011-05-12 16:20:43 +00:00
enable = emu;
2010-09-22 15:14:43 +00:00
};
2010-09-22 18:13:00 +00:00
2010-08-27 17:05:06 +00:00
module = {
name = legacycfg;
common = commands/legacycfg.c;
common = lib/legacy_parse.c;
emu = lib/i386/pc/vesa_modes_table.c;
i386_efi = lib/i386/pc/vesa_modes_table.c;
x86_64_efi = lib/i386/pc/vesa_modes_table.c;
xen = lib/i386/pc/vesa_modes_table.c;
2010-08-27 17:05:06 +00:00
enable = i386_pc;
enable = i386_xen_pvh;
enable = i386_efi;
enable = x86_64_efi;
2010-09-12 11:58:18 +00:00
enable = emu;
enable = xen;
2010-09-11 20:39:55 +00:00
};
2010-09-05 18:44:42 +00:00
2013-12-18 04:28:05 +00:00
module = {
name = syslinuxcfg;
common = lib/syslinux_parse.c;
common = commands/syslinuxcfg.c;
};
2010-08-26 04:00:11 +00:00
module = {
name = test_blockarg;
common = tests/test_blockarg.c;
2010-08-26 06:02:35 +00:00
};
module = {
name = xzio;
common = io/xzio.c;
common = lib/xzembed/xz_dec_bcj.c;
common = lib/xzembed/xz_dec_lzma2.c;
common = lib/xzembed/xz_dec_stream.c;
cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed';
Increase warning level. * conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -Wno-old-style-definition. * configure.ac (HOST_CFLAGS): Add bunch of -W arguments. (TARGET_CFLAGS): Likewise. (HOST_CFLAGS): Add -Werror unless --disable-werror is activated. * grub-core/Makefile.core.def (decompressor_xz): Add -Wno-unreachable-code. (normal): Add -Wno-redundant-decls. (xzio): Add -Wno-unreachable-code. (lzopio): Add -Wno-redundant-decls -Wno-error. * grub-core/commands/acpi.c: Add exception to -Wcast-align. * grub-core/commands/lsacpi.c: Add exception to -Wcast-align. * grub-core/gensymlist.sh: Add exception to -Wmissing-format-attribute. * grub-core/kern/dl.c: Add exception to -Wcast-align. * grub-core/kern/efi/efi.c (grub_efi_modules_addr): Likewise. * grub-core/kern/i386/coreboot/init.c: Add exception to -Wsuggest-attribute=noreturn. * grub-core/kern/ia64/dl.c: Add exception to -Wcast-align. * grub-core/kern/ia64/dl_helper.c: Likewise. * grub-core/kern/mips/dl.c: Likewise. * grub-core/kern/sparc64/dl.c: Likewise. * grub-core/lib/LzmaEnc.c: Add exception to -Wshadow. * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy): Likewise. (memcmp): Likewise. * grub-core/lib/pbkdf2.c: Add exception to -Wunreachable-code. * grub-core/loader/ia64/efi/linux.c: Add exception to -Wcast-align. * grub-core/loader/mips/linux.c: Likewise. * grub-core/loader/multiboot_elfxx.c: Likewise. * grub-core/script/parser.y: Add exception to -Wunreachable-code. * grub-core/video/sm712.c: Add exception to -Wcast-align. * util/import_gcry.py: Add -Wno-cast-align to modules checked by hand. * grub-core/font/font.c (grub_font_loader_init): Add explicit cast and fixme. * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Likewise. * grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_init): Fix prototype.
2012-02-10 15:48:48 +00:00
cflags='-Wno-unreachable-code';
};
module = {
name = lzopio;
common = io/lzopio.c;
common = lib/minilzo/minilzo.c;
Increase warning level. * conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -Wno-old-style-definition. * configure.ac (HOST_CFLAGS): Add bunch of -W arguments. (TARGET_CFLAGS): Likewise. (HOST_CFLAGS): Add -Werror unless --disable-werror is activated. * grub-core/Makefile.core.def (decompressor_xz): Add -Wno-unreachable-code. (normal): Add -Wno-redundant-decls. (xzio): Add -Wno-unreachable-code. (lzopio): Add -Wno-redundant-decls -Wno-error. * grub-core/commands/acpi.c: Add exception to -Wcast-align. * grub-core/commands/lsacpi.c: Add exception to -Wcast-align. * grub-core/gensymlist.sh: Add exception to -Wmissing-format-attribute. * grub-core/kern/dl.c: Add exception to -Wcast-align. * grub-core/kern/efi/efi.c (grub_efi_modules_addr): Likewise. * grub-core/kern/i386/coreboot/init.c: Add exception to -Wsuggest-attribute=noreturn. * grub-core/kern/ia64/dl.c: Add exception to -Wcast-align. * grub-core/kern/ia64/dl_helper.c: Likewise. * grub-core/kern/mips/dl.c: Likewise. * grub-core/kern/sparc64/dl.c: Likewise. * grub-core/lib/LzmaEnc.c: Add exception to -Wshadow. * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy): Likewise. (memcmp): Likewise. * grub-core/lib/pbkdf2.c: Add exception to -Wunreachable-code. * grub-core/loader/ia64/efi/linux.c: Add exception to -Wcast-align. * grub-core/loader/mips/linux.c: Likewise. * grub-core/loader/multiboot_elfxx.c: Likewise. * grub-core/script/parser.y: Add exception to -Wunreachable-code. * grub-core/video/sm712.c: Add exception to -Wcast-align. * util/import_gcry.py: Add -Wno-cast-align to modules checked by hand. * grub-core/font/font.c (grub_font_loader_init): Add explicit cast and fixme. * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Likewise. * grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_init): Fix prototype.
2012-02-10 15:48:48 +00:00
cflags = '$(CFLAGS_POSIX) -Wno-undef -Wno-redundant-decls -Wno-error';
cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H';
};
module = {
name = testload;
common = commands/testload.c;
};
2010-09-15 09:42:18 +00:00
2011-11-14 09:49:13 +00:00
module = {
name = backtrace;
2012-02-26 18:10:52 +00:00
x86 = lib/i386/backtrace.c;
i386_xen_pvh = lib/i386/backtrace.c;
i386_xen = lib/i386/backtrace.c;
x86_64_xen = lib/i386/backtrace.c;
2012-02-26 18:10:52 +00:00
common = lib/backtrace.c;
2011-11-14 13:27:52 +00:00
enable = x86;
enable = i386_xen_pvh;
enable = i386_xen;
enable = x86_64_xen;
2011-11-14 09:50:24 +00:00
};
2010-09-15 09:42:18 +00:00
module = {
name = lsapm;
common = commands/i386/pc/lsapm.c;
enable = i386_pc;
};
2010-08-31 12:03:29 +00:00
module = {
name = keylayouts;
common = commands/keylayouts.c;
enable = x86;
2010-08-31 12:03:29 +00:00
};
2011-07-08 02:07:15 +00:00
module = {
name = priority_queue;
common = lib/priority_queue.c;
};
module = {
name = time;
common = commands/time.c;
};
2011-08-13 13:00:48 +00:00
module = {
name = cacheinfo;
common = commands/cacheinfo.c;
condition = COND_ENABLE_CACHE_STATS;
};
module = {
name = boottime;
common = commands/boottime.c;
condition = COND_ENABLE_BOOT_TIME_STATS;
};
module = {
name = adler32;
common = lib/adler32.c;
};
module = {
name = crc64;
common = lib/crc64.c;
};
module = {
name = mpi;
common = lib/libgcrypt-grub/mpi/mpiutil.c;
common = lib/libgcrypt-grub/mpi/mpi-bit.c;
common = lib/libgcrypt-grub/mpi/mpi-add.c;
common = lib/libgcrypt-grub/mpi/mpi-mul.c;
common = lib/libgcrypt-grub/mpi/mpi-mod.c;
common = lib/libgcrypt-grub/mpi/mpi-gcd.c;
common = lib/libgcrypt-grub/mpi/mpi-div.c;
common = lib/libgcrypt-grub/mpi/mpi-cmp.c;
common = lib/libgcrypt-grub/mpi/mpi-inv.c;
common = lib/libgcrypt-grub/mpi/mpi-pow.c;
common = lib/libgcrypt-grub/mpi/mpi-mpow.c;
common = lib/libgcrypt-grub/mpi/mpih-lshift.c;
common = lib/libgcrypt-grub/mpi/mpih-mul.c;
common = lib/libgcrypt-grub/mpi/mpih-mul1.c;
common = lib/libgcrypt-grub/mpi/mpih-mul2.c;
common = lib/libgcrypt-grub/mpi/mpih-mul3.c;
common = lib/libgcrypt-grub/mpi/mpih-add1.c;
common = lib/libgcrypt-grub/mpi/mpih-sub1.c;
common = lib/libgcrypt-grub/mpi/mpih-div.c;
common = lib/libgcrypt-grub/mpi/mpicoder.c;
common = lib/libgcrypt-grub/mpi/mpih-rshift.c;
common = lib/libgcrypt-grub/mpi/mpi-inline.c;
common = lib/libgcrypt_wrap/mem.c;
cflags = '$(CFLAGS_GCRY) -Wno-redundant-decls -Wno-sign-compare';
cppflags = '$(CPPFLAGS_GCRY)';
};
module = {
name = all_video;
common = lib/fake_module.c;
};
module = {
name = gdb;
common = gdb/cstub.c;
common = gdb/gdb.c;
i386 = gdb/i386/idt.c;
i386 = gdb/i386/machdep.S;
i386 = gdb/i386/signal.c;
enable = i386;
};
module = {
name = testspeed;
common = commands/testspeed.c;
};
module = {
name = tpm;
common = commands/tpm.c;
efi = commands/efi/tpm.c;
enable = x86_64_efi;
};
module = {
name = tr;
common = commands/tr.c;
};
module = {
name = progress;
common = lib/progress.c;
};
module = {
name = file;
common = commands/file.c;
common = commands/file32.c;
common = commands/file64.c;
extra_dist = commands/fileXX.c;
common = loader/i386/xen_file.c;
common = loader/i386/xen_file32.c;
common = loader/i386/xen_file64.c;
extra_dist = loader/i386/xen_fileXX.c;
};
module = {
name = rdmsr;
common = commands/i386/rdmsr.c;
enable = x86;
};
module = {
name = wrmsr;
common = commands/i386/wrmsr.c;
enable = x86;
};