]> git.proxmox.com Git - grub2.git/blame - grub-core/Makefile.core.def
net/netbuff: Block overly large netbuff allocs
[grub2.git] / grub-core / Makefile.core.def
CommitLineData
8c411768
BC
1AutoGen definitions Makefile.tpl;
2
368ecfc3 3transform_data = {
3572f2b6 4 installdir = noinst;
b524259b
BC
5 name = gensyminfo.sh;
6 common = gensyminfo.sh.in;
7};
8
368ecfc3 9transform_data = {
3572f2b6 10 installdir = noinst;
b524259b
BC
11 name = genmod.sh;
12 common = genmod.sh.in;
13};
14
368ecfc3 15transform_data = {
6ad6223e
VS
16 installdir = noinst;
17 name = modinfo.sh;
18 common = modinfo.sh.in;
19};
20
368ecfc3 21transform_data = {
80a71213 22 installdir = platform;
2536cf64
LK
23 name = gmodule.pl;
24 common = gmodule.pl.in;
25};
26
368ecfc3 27transform_data = {
80a71213 28 installdir = platform;
2536cf64
LK
29 name = gdb_grub;
30 common = gdb_grub.in;
31};
32
368ecfc3 33transform_data = {
a79b8a15
VS
34 installdir = platform;
35 name = grub.chrp;
36 common = boot/powerpc/grub.chrp.in;
daaa64bd
VS
37 enable = powerpc_ieee1275;
38};
39
368ecfc3 40transform_data = {
daaa64bd
VS
41 installdir = platform;
42 name = bootinfo.txt;
43 common = boot/powerpc/bootinfo.txt.in;
44 enable = powerpc_ieee1275;
a79b8a15
VS
45};
46
8c411768
BC
47kernel = {
48 name = kernel;
49
c1c6e4c0
BC
50 nostrip = emu;
51
911bd640 52 emu_ldflags = '-Wl,-r,-d';
6585de4c 53 i386_efi_ldflags = '-Wl,-r,-d';
0f021838 54 i386_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
6585de4c 55 x86_64_efi_ldflags = '-Wl,-r,-d';
0f021838 56 x86_64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
6585de4c
VS
57
58 ia64_efi_cflags = '-fno-builtin -fpic -minline-int-divide-max-throughput';
bea33583 59 ia64_efi_ldflags = '-Wl,-r,-d';
0f021838 60 ia64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
2d465fb0 61
389b31cd
LL
62 arm_efi_ldflags = '-Wl,-r,-d';
63 arm_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
64
15a463d7 65 arm64_efi_ldflags = '-Wl,-r,-d';
668add25 66 arm64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame';
15a463d7 67
f1957dc8
AG
68 riscv32_efi_ldflags = '-Wl,-r,-d';
69 riscv32_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame';
70
71 riscv64_efi_ldflags = '-Wl,-r,-d';
72 riscv64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame';
73
2d465fb0 74 i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
60240b8b 75 i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000';
2d465fb0 76 i386_qemu_ldflags = '$(TARGET_IMG_LDFLAGS)';
ec763ed0 77 i386_qemu_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000';
60b967be 78 i386_coreboot_ldflags = '$(TARGET_IMG_LDFLAGS)';
ec763ed0 79 i386_coreboot_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000';
60b967be 80 i386_multiboot_ldflags = '$(TARGET_IMG_LDFLAGS)';
ec763ed0 81 i386_multiboot_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000';
60b967be
VS
82 i386_ieee1275_ldflags = '$(TARGET_IMG_LDFLAGS)';
83 i386_ieee1275_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x10000';
84 i386_xen_ldflags = '$(TARGET_IMG_LDFLAGS)';
85 i386_xen_ldflags = '$(TARGET_IMG_BASE_LDOPT),0';
86 x86_64_xen_ldflags = '$(TARGET_IMG_LDFLAGS)';
87 x86_64_xen_ldflags = '$(TARGET_IMG_BASE_LDOPT),0';
9c062ad4
JG
88 i386_xen_pvh_ldflags = '$(TARGET_IMG_LDFLAGS)';
89 i386_xen_pvh_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x100000';
2d465fb0 90
54da1feb 91 mips_loongson_ldflags = '-Wl,-Ttext,0x80200000';
fb53b340
VS
92 powerpc_ieee1275_ldflags = '-Wl,-Ttext,0x200000';
93 sparc64_ieee1275_ldflags = '-Wl,-Ttext,0x4400';
7f63a64f 94 mips_arc_ldflags = '-Wl,-Ttext,$(TARGET_LINK_ADDR)';
3666d5f6 95 mips_qemu_mips_ldflags = '-Wl,-Ttext,0x80200000';
8c411768 96
17f9fd29 97 mips_arc_cppflags = '-DGRUB_DECOMPRESSOR_LINK_ADDR=$(TARGET_DECOMPRESSOR_LINK_ADDR)';
8c411768 98 i386_qemu_cppflags = '-DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR)';
16321bf9
BC
99 emu_cflags = '$(CFLAGS_GNULIB)';
100 emu_cppflags = '$(CPPFLAGS_GNULIB)';
86ef66d9 101 arm_uboot_ldflags = '-Wl,-r,-d';
389b31cd 102 arm_uboot_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
24e37a88
VS
103 arm_coreboot_ldflags = '-Wl,-r,-d';
104 arm_coreboot_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version';
8c411768 105
8427685f
BC
106 i386_pc_startup = kern/i386/pc/startup.S;
107 i386_efi_startup = kern/i386/efi/startup.S;
108 x86_64_efi_startup = kern/x86_64/efi/startup.S;
9612ebc0
VS
109 i386_xen_startup = kern/i386/xen/startup.S;
110 x86_64_xen_startup = kern/x86_64/xen/startup.S;
9c062ad4 111 i386_xen_pvh_startup = kern/i386/xen/startup_pvh.S;
8427685f
BC
112 i386_qemu_startup = kern/i386/qemu/startup.S;
113 i386_ieee1275_startup = kern/i386/ieee1275/startup.S;
eefe8abd
VS
114 i386_coreboot_startup = kern/i386/coreboot/startup.S;
115 i386_multiboot_startup = kern/i386/coreboot/startup.S;
f440c33f 116 mips_startup = kern/mips/startup.S;
8427685f
BC
117 sparc64_ieee1275_startup = kern/sparc64/ieee1275/crt0.S;
118 powerpc_ieee1275_startup = kern/powerpc/ieee1275/startup.S;
d08c9685 119 arm_uboot_startup = kern/arm/startup.S;
24e37a88 120 arm_coreboot_startup = kern/arm/startup.S;
389b31cd 121 arm_efi_startup = kern/arm/efi/startup.S;
15a463d7 122 arm64_efi_startup = kern/arm64/efi/startup.S;
f1957dc8
AG
123 riscv32_efi_startup = kern/riscv/efi/startup.S;
124 riscv64_efi_startup = kern/riscv/efi/startup.S;
8427685f 125
030fb6c4 126 common = kern/buffer.c;
8427685f
BC
127 common = kern/command.c;
128 common = kern/corecmd.c;
129 common = kern/device.c;
130 common = kern/disk.c;
131 common = kern/dl.c;
132 common = kern/env.c;
133 common = kern/err.c;
134 common = kern/file.c;
135 common = kern/fs.c;
136 common = kern/list.c;
137 common = kern/main.c;
138 common = kern/misc.c;
139 common = kern/parser.c;
140 common = kern/partition.c;
141 common = kern/rescue_parser.c;
142 common = kern/rescue_reader.c;
143 common = kern/term.c;
4a6abe50 144 nopc = kern/verifiers.c;
8427685f 145
064360e6 146 noemu = kern/compiler-rt.c;
8427685f
BC
147 noemu = kern/mm.c;
148 noemu = kern/time.c;
149 noemu = kern/generic/millisleep.c;
150
151 noemu_nodist = symlist.c;
152
8906c3dd 153 mips = kern/generic/rtc_get_time_ms.c;
8427685f
BC
154
155 ieee1275 = disk/ieee1275/ofdisk.c;
156 ieee1275 = kern/ieee1275/cmain.c;
157 ieee1275 = kern/ieee1275/ieee1275.c;
158 ieee1275 = kern/ieee1275/mmap.c;
159 ieee1275 = kern/ieee1275/openfw.c;
ca8c0baf 160 ieee1275 = term/ieee1275/console.c;
574618a2 161 ieee1275 = kern/ieee1275/init.c;
8427685f 162
389b31cd
LL
163 uboot = disk/uboot/ubootdisk.c;
164 uboot = kern/uboot/uboot.c;
165 uboot = kern/uboot/init.c;
166 uboot = kern/uboot/hw.c;
167 uboot = term/uboot/console.c;
d08c9685
VS
168 arm_uboot = kern/arm/uboot/init.c;
169 arm_uboot = kern/arm/uboot/uboot.S;
389b31cd 170
24e37a88
VS
171 arm_coreboot = kern/arm/coreboot/init.c;
172 arm_coreboot = kern/arm/coreboot/timer.c;
173 arm_coreboot = kern/arm/coreboot/coreboot.S;
fcbb723d
VS
174 arm_coreboot = lib/fdt.c;
175 arm_coreboot = bus/fdt.c;
848bed9d
VS
176 arm_coreboot = term/ps2.c;
177 arm_coreboot = term/arm/pl050.c;
c6eaa982
VS
178 arm_coreboot = term/arm/cros.c;
179 arm_coreboot = term/arm/cros_ec.c;
b0b1b81a 180 arm_coreboot = bus/spi/rk3288_spi.c;
848bed9d 181 arm_coreboot = commands/keylayouts.c;
265292f2 182 arm_coreboot = kern/arm/coreboot/dma.c;
24e37a88 183
ee74fa48
VS
184 terminfoinkernel = term/terminfo.c;
185 terminfoinkernel = term/tparm.c;
186 terminfoinkernel = commands/extcmd.c;
187 terminfoinkernel = lib/arg.c;
8427685f 188
f034fab6
VS
189 softdiv = lib/division.c;
190
8427685f 191 i386 = kern/i386/dl.c;
9612ebc0 192 i386_xen = kern/i386/dl.c;
9c062ad4 193 i386_xen_pvh = kern/i386/dl.c;
8427685f 194
96f33fed
VS
195 i386_coreboot = kern/i386/coreboot/init.c;
196 i386_multiboot = kern/i386/coreboot/init.c;
197 i386_qemu = kern/i386/qemu/init.c;
8427685f 198 i386_coreboot_multiboot_qemu = term/i386/pc/vga_text.c;
24e37a88 199 coreboot = video/coreboot/cbfb.c;
8427685f 200
6585de4c
VS
201 efi = disk/efi/efidisk.c;
202 efi = kern/efi/efi.c;
203 efi = kern/efi/init.c;
204 efi = kern/efi/mm.c;
205 efi = term/efi/console.c;
d43a5ee6
VS
206 efi = kern/acpi.c;
207 efi = kern/efi/acpi.c;
d7e54b2e 208 efi = kern/efi/sb.c;
578c9529 209 efi = kern/lockdown.c;
d43a5ee6
VS
210 i386_coreboot = kern/i386/pc/acpi.c;
211 i386_multiboot = kern/i386/pc/acpi.c;
212 i386_coreboot = kern/acpi.c;
213 i386_multiboot = kern/acpi.c;
8427685f 214
f75835bd 215 x86 = kern/i386/tsc.c;
d43a5ee6
VS
216 x86 = kern/i386/tsc_pit.c;
217 i386_efi = kern/i386/efi/tsc.c;
218 x86_64_efi = kern/i386/efi/tsc.c;
219 i386_efi = kern/i386/tsc_pmtimer.c;
220 i386_coreboot = kern/i386/tsc_pmtimer.c;
221 x86_64_efi = kern/i386/tsc_pmtimer.c;
f75835bd 222
6585de4c 223 i386_efi = kern/i386/efi/init.c;
9d34bb85 224 i386_efi = bus/pci.c;
8427685f 225
9612ebc0
VS
226 x86_64 = kern/x86_64/dl.c;
227 x86_64_xen = kern/x86_64/dl.c;
8427685f 228 x86_64_efi = kern/x86_64/efi/callwrap.S;
6585de4c 229 x86_64_efi = kern/i386/efi/init.c;
9d34bb85 230 x86_64_efi = bus/pci.c;
6585de4c 231
9612ebc0 232 xen = kern/i386/tsc.c;
d43a5ee6 233 xen = kern/i386/xen/tsc.c;
9612ebc0
VS
234 x86_64_xen = kern/x86_64/xen/hypercall.S;
235 i386_xen = kern/i386/xen/hypercall.S;
236 xen = kern/xen/init.c;
237 xen = term/xen/console.c;
238 xen = disk/xen/xendisk.c;
239 xen = commands/boot.c;
240
9c062ad4
JG
241 i386_xen_pvh = commands/boot.c;
242 i386_xen_pvh = disk/xen/xendisk.c;
243 i386_xen_pvh = kern/i386/tsc.c;
244 i386_xen_pvh = kern/i386/xen/tsc.c;
245 i386_xen_pvh = kern/i386/xen/pvh.c;
246 i386_xen_pvh = kern/xen/init.c;
247 i386_xen_pvh = term/xen/console.c;
248
6585de4c 249 ia64_efi = kern/ia64/efi/startup.S;
6585de4c 250 ia64_efi = kern/ia64/efi/init.c;
c18271ed 251 ia64_efi = kern/ia64/dl.c;
5452733f 252 ia64_efi = kern/ia64/dl_helper.c;
78b2b0a1 253 ia64_efi = kern/ia64/cache.c;
8427685f 254
389b31cd 255 arm_efi = kern/arm/efi/init.c;
0d234577 256 arm_efi = kern/efi/fdt.c;
389b31cd 257
4598cafa 258 arm64_efi = kern/arm64/efi/init.c;
0d234577 259 arm64_efi = kern/efi/fdt.c;
15a463d7 260
f1957dc8
AG
261 riscv32_efi = kern/riscv/efi/init.c;
262 riscv32_efi = kern/efi/fdt.c;
263
264 riscv64_efi = kern/riscv/efi/init.c;
265 riscv64_efi = kern/efi/fdt.c;
266
8c411768
BC
267 i386_pc = kern/i386/pc/init.c;
268 i386_pc = kern/i386/pc/mmap.c;
8c411768 269 i386_pc = term/i386/pc/console.c;
8427685f
BC
270
271 i386_qemu = bus/pci.c;
93c06ff9 272 i386_qemu = kern/vga_init.c;
8427685f 273 i386_qemu = kern/i386/qemu/mmap.c;
8427685f 274
24e37a88 275 coreboot = kern/coreboot/mmap.c;
e6930a45 276 i386_coreboot = kern/i386/coreboot/cbtable.c;
24e37a88
VS
277 coreboot = kern/coreboot/cbtable.c;
278 arm_coreboot = kern/arm/coreboot/cbtable.c;
8427685f 279
062cdbc1 280 i386_multiboot = kern/i386/multiboot_mmap.c;
8c411768 281
f440c33f
VS
282 mips = kern/mips/cache.S;
283 mips = kern/mips/dl.c;
284 mips = kern/mips/init.c;
8906c3dd 285
3666d5f6
VS
286 mips_qemu_mips = kern/mips/qemu_mips/init.c;
287 mips_qemu_mips = term/ns8250.c;
288 mips_qemu_mips = term/serial.c;
d7345994 289 mips_qemu_mips = term/at_keyboard.c;
216950a4 290 mips_qemu_mips = term/ps2.c;
fc4c4fdd 291 mips_qemu_mips = commands/boot.c;
d7345994 292 mips_qemu_mips = commands/keylayouts.c;
93c06ff9 293 mips_qemu_mips = term/i386/pc/vga_text.c;
93c06ff9 294 mips_qemu_mips = kern/vga_init.c;
3666d5f6 295
8906c3dd
VS
296 mips_arc = kern/mips/arc/init.c;
297 mips_arc = term/arc/console.c;
298 mips_arc = disk/arc/arcdisk.c;
299
54da1feb
VS
300 mips_loongson = term/ns8250.c;
301 mips_loongson = bus/bonito.c;
302 mips_loongson = bus/cs5536.c;
303 mips_loongson = bus/pci.c;
54da1feb
VS
304 mips_loongson = kern/mips/loongson/init.c;
305 mips_loongson = term/at_keyboard.c;
216950a4 306 mips_loongson = term/ps2.c;
fc4c4fdd 307 mips_loongson = commands/boot.c;
54da1feb
VS
308 mips_loongson = term/serial.c;
309 mips_loongson = video/sm712.c;
310 mips_loongson = video/sis315pro.c;
d94497ea 311 mips_loongson = video/radeon_fuloong2e.c;
184c61dd 312 mips_loongson = video/radeon_yeeloong3a.c;
6556eba9 313 extra_dist = video/sm712_init.c;
2702b4e4 314 extra_dist = video/sis315_init.c;
54da1feb 315 mips_loongson = commands/keylayouts.c;
8c411768 316
8c411768 317 powerpc_ieee1275 = kern/powerpc/cache.S;
8427685f 318 powerpc_ieee1275 = kern/powerpc/dl.c;
064360e6 319 powerpc_ieee1275 = kern/powerpc/compiler-rt.S;
8427685f
BC
320
321 sparc64_ieee1275 = kern/sparc64/cache.S;
322 sparc64_ieee1275 = kern/sparc64/dl.c;
8c411768 323 sparc64_ieee1275 = kern/sparc64/ieee1275/ieee1275.c;
3434ddec 324 sparc64_ieee1275 = disk/ieee1275/obdisk.c;
8c411768 325
389b31cd 326 arm = kern/arm/dl.c;
854f383c 327 arm = kern/arm/dl_helper.c;
390df92f
VS
328 arm = kern/arm/cache_armv6.S;
329 arm = kern/arm/cache_armv7.S;
ed8c0887 330 extra_dist = kern/arm/cache.S;
390df92f 331 arm = kern/arm/cache.c;
064360e6 332 arm = kern/arm/compiler-rt.S;
389b31cd 333
15a463d7
LL
334 arm64 = kern/arm64/cache.c;
335 arm64 = kern/arm64/cache_flush.S;
336 arm64 = kern/arm64/dl.c;
337 arm64 = kern/arm64/dl_helper.c;
338
f1957dc8
AG
339 riscv32 = kern/riscv/cache.c;
340 riscv32 = kern/riscv/cache_flush.S;
341 riscv32 = kern/riscv/dl.c;
342
343 riscv64 = kern/riscv/cache.c;
344 riscv64 = kern/riscv/cache_flush.S;
345 riscv64 = kern/riscv/dl.c;
346
8427685f 347 emu = disk/host.c;
0a2b2cdc 348 emu = kern/emu/cache_s.S;
8c411768 349 emu = kern/emu/hostdisk.c;
620b52bf 350 emu = osdep/unix/hostdisk.c;
40346de6
VS
351 emu = osdep/exec.c;
352 extra_dist = osdep/unix/exec.c;
620b52bf
VS
353 emu = osdep/devmapper/hostdisk.c;
354 emu = osdep/hostdisk.c;
8c411768 355 emu = kern/emu/hostfs.c;
8427685f 356 emu = kern/emu/main.c;
6a656b0e 357 emu = kern/emu/argp_common.c;
8427685f
BC
358 emu = kern/emu/misc.c;
359 emu = kern/emu/mm.c;
360 emu = kern/emu/time.c;
6f49d0aa 361 emu = kern/emu/cache.c;
69ca5876
VS
362 emu = osdep/emuconsole.c;
363 extra_dist = osdep/unix/emuconsole.c;
364 extra_dist = osdep/windows/emuconsole.c;
a19293cb
VS
365 emu = osdep/dl.c;
366 extra_dist = osdep/unix/dl.c;
367 extra_dist = osdep/windows/dl.c;
620b52bf 368 emu = osdep/sleep.c;
21d85db1 369 emu = osdep/init.c;
70671037
VS
370 emu = osdep/emunet.c;
371 extra_dist = osdep/linux/emunet.c;
372 extra_dist = osdep/basic/emunet.c;
7e45abce
VS
373 emu = osdep/cputime.c;
374 extra_dist = osdep/unix/cputime.c;
375 extra_dist = osdep/windows/cputime.c;
610c1efd 376
eefe8abd 377 videoinkernel = term/gfxterm.c;
eefe8abd
VS
378 videoinkernel = font/font.c;
379 videoinkernel = font/font_cmd.c;
380 videoinkernel = io/bufio.c;
eefe8abd
VS
381 videoinkernel = video/fb/fbblit.c;
382 videoinkernel = video/fb/fbfill.c;
383 videoinkernel = video/fb/fbutil.c;
384 videoinkernel = video/fb/video_fb.c;
385 videoinkernel = video/video.c;
386
fc5efcc0 387 extra_dist = kern/i386/int.S;
610c1efd 388 extra_dist = kern/i386/realmode.S;
2702b4e4 389 extra_dist = boot/i386/pc/lzma_decode.S;
d768d159 390 extra_dist = kern/mips/cache_flush.S;
8c411768
BC
391};
392
393program = {
394 name = grub-emu;
395 mansection = 1;
396
8427685f
BC
397 emu = kern/emu/full.c;
398 emu_nodist = grub_emu_init.c;
8c411768 399
b24ca7cd 400 ldadd = 'kernel.exec$(EXEEXT)';
8c411768 401 ldadd = '$(MODULE_FILES)';
35b90906 402 ldadd = 'lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)';
8c411768 403
911bd640 404 enable = emu;
8c411768
BC
405};
406
407program = {
408 name = grub-emu-lite;
409
8427685f 410 emu = kern/emu/lite.c;
8427685f 411 emu_nodist = symlist.c;
8c411768 412
b24ca7cd 413 ldadd = 'kernel.exec$(EXEEXT)';
35b90906 414 ldadd = 'lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)';
8c411768 415
911bd640 416 enable = emu;
8c411768
BC
417};
418
8c411768
BC
419image = {
420 name = boot;
421 i386_pc = boot/i386/pc/boot.S;
8c411768 422 i386_qemu = boot/i386/qemu/boot.S;
8427685f 423 sparc64_ieee1275 = boot/sparc64/ieee1275/boot.S;
2d465fb0
BC
424
425 i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
426 i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00';
427
428 i386_qemu_ldflags = '$(TARGET_IMG_LDFLAGS)';
429 i386_qemu_ldflags = '$(TARGET_IMG_BASE_LDOPT),$(GRUB_BOOT_MACHINE_LINK_ADDR)';
8c411768
BC
430 i386_qemu_ccasflags = '-DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR)';
431
5635e799
JPAG
432 /* The entry point for a.out binaries on sparc64 starts
433 at 0x4000. Since we are writing the 32 bytes long a.out
434 header in the assembly code ourselves, we need to tell
435 the linker to adjust the start of the text segment to
436 0x4000 - 0x20 = 0x3fe0.
437 */
438 sparc64_ieee1275_ldflags = ' -Wl,-Ttext=0x3fe0';
439 sparc64_ieee1275_objcopyflags = '-O binary';
911bd640
BC
440
441 objcopyflags = '-O binary';
442 enable = i386_pc;
443 enable = i386_qemu;
444 enable = sparc64_ieee1275;
8c411768
BC
445};
446
b49fe879
VS
447image = {
448 name = boot_hybrid;
449 i386_pc = boot/i386/pc/boot.S;
450
451 cppflags = '-DHYBRID_BOOT=1';
452
453 i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
454 i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00';
455
456 objcopyflags = '-O binary';
457 enable = i386_pc;
458};
459
8c411768
BC
460image = {
461 name = cdboot;
8ca86b3a 462
2d465fb0
BC
463 i386_pc = boot/i386/pc/cdboot.S;
464 i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
465 i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00';
8ca86b3a
VS
466
467 sparc64_ieee1275 = boot/sparc64/ieee1275/boot.S;
5635e799
JPAG
468
469 /* See comment for sparc64_ieee1275_ldflags above. */
470 sparc64_ieee1275_ldflags = ' -Wl,-Ttext=0x3fe0';
471 sparc64_ieee1275_objcopyflags = '-O binary';
8ca86b3a
VS
472 sparc64_ieee1275_cppflags = '-DCDBOOT=1';
473
911bd640 474 objcopyflags = '-O binary';
8ca86b3a
VS
475
476 enable = sparc64_ieee1275;
911bd640 477 enable = i386_pc;
8c411768
BC
478};
479
480image = {
481 name = pxeboot;
2d465fb0 482 i386_pc = boot/i386/pc/pxeboot.S;
8c411768 483
2d465fb0
BC
484 i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
485 i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00';
911bd640
BC
486
487 objcopyflags = '-O binary';
488 enable = i386_pc;
8c411768
BC
489};
490
491image = {
492 name = diskboot;
493 i386_pc = boot/i386/pc/diskboot.S;
2d465fb0
BC
494
495 i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
496 i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x8000';
8c411768
BC
497
498 sparc64_ieee1275 = boot/sparc64/ieee1275/diskboot.S;
499 sparc64_ieee1275_ldflags = '-Wl,-Ttext=0x4200';
911bd640
BC
500
501 objcopyflags = '-O binary';
502
503 enable = i386_pc;
504 enable = sparc64_ieee1275;
8c411768
BC
505};
506
507image = {
508 name = lnxboot;
2d465fb0 509 i386_pc = boot/i386/pc/lnxboot.S;
8c411768 510
2d465fb0
BC
511 i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)';
512 i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x6000';
911bd640
BC
513
514 objcopyflags = '-O binary';
515 enable = i386_pc;
8c411768
BC
516};
517
c5b4cd37 518image = {
758194b0 519 name = xz_decompress;
c5b4cd37 520 mips = boot/mips/startup_raw.S;
758194b0
VS
521 common = boot/decompressor/minilib.c;
522 common = boot/decompressor/xz.c;
f8926c32
VS
523 common = lib/xzembed/xz_dec_bcj.c;
524 common = lib/xzembed/xz_dec_lzma2.c;
525 common = lib/xzembed/xz_dec_stream.c;
064360e6 526 common = kern/compiler-rt.c;
c5b4cd37 527
400b9371 528 cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -DGRUB_EMBED_DECOMPRESSOR=1';
c5b4cd37
VS
529
530 objcopyflags = '-O binary';
064360e6
VS
531 mips_ldflags = '-Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR)';
532 cflags = '-Wno-unreachable-code';
c5b4cd37
VS
533 enable = mips;
534};
535
758194b0
VS
536image = {
537 name = none_decompress;
538 mips = boot/mips/startup_raw.S;
539 common = boot/decompressor/none.c;
540
400b9371 541 cppflags = '-DGRUB_EMBED_DECOMPRESSOR=1';
758194b0
VS
542
543 objcopyflags = '-O binary';
064360e6 544 mips_ldflags = '-Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR)';
758194b0
VS
545 enable = mips;
546};
547
60240b8b
VS
548image = {
549 name = lzma_decompress;
550 i386_pc = boot/i386/pc/startup_raw.S;
cc284112 551 i386_pc_nodist = rs_decoder.h;
60240b8b
VS
552
553 objcopyflags = '-O binary';
c4c48c54 554 ldflags = '$(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x8200';
60240b8b
VS
555 enable = i386_pc;
556};
557
297f0c2b
BC
558image = {
559 name = fwstart;
54da1feb 560 mips_loongson = boot/mips/loongson/fwstart.S;
911bd640 561 objcopyflags = '-O binary';
064360e6 562 ldflags = '-Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic';
54da1feb 563 enable = mips_loongson;
297f0c2b
BC
564};
565
a9fa2a22 566image = {
14a2562c
VS
567 name = fwstart_fuloong2f;
568 mips_loongson = boot/mips/loongson/fuloong2f.S;
911bd640 569 objcopyflags = '-O binary';
064360e6 570 ldflags = '-Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic';
54da1feb 571 enable = mips_loongson;
297f0c2b
BC
572};
573
442b86de
VS
574module = {
575 name = disk;
576 common = lib/disk.c;
e11cb726 577 extra_dist = kern/disk_common.c;
442b86de
VS
578};
579
e235a228
BC
580module = {
581 name = trig;
8427685f 582 common_nodist = trigtables.c;
e235a228 583 extra_dist = gentrigtables.c;
e235a228
BC
584};
585
baea1766
BC
586module = {
587 name = cs5536;
f7711f5e
BC
588 x86 = bus/cs5536.c;
589 enable = x86;
baea1766
BC
590};
591
297f0c2b
BC
592module = {
593 name = lsspd;
54da1feb
VS
594 mips_loongson = commands/mips/loongson/lsspd.c;
595 enable = mips_loongson;
297f0c2b
BC
596};
597
8c411768
BC
598module = {
599 name = usb;
8427685f 600 common = bus/usb/usb.c;
fe942b7d
VS
601 common = bus/usb/usbtrans.c;
602 common = bus/usb/usbhub.c;
eefe8abd 603 enable = usb;
fe942b7d
VS
604};
605
d84666e6
BC
606module = {
607 name = usbserial_common;
608 common = bus/usb/serial/common.c;
eefe8abd 609 enable = usb;
d84666e6
BC
610};
611
612module = {
613 name = usbserial_pl2303;
614 common = bus/usb/serial/pl2303.c;
eefe8abd 615 enable = usb;
d84666e6
BC
616};
617
618module = {
619 name = usbserial_ftdi;
620 common = bus/usb/serial/ftdi.c;
eefe8abd 621 enable = usb;
d84666e6
BC
622};
623
66a93674
VS
624module = {
625 name = usbserial_usbdebug;
626 common = bus/usb/serial/usbdebug_late.c;
627 enable = usb;
628};
629
8c411768
BC
630module = {
631 name = uhci;
8427685f 632 common = bus/usb/uhci.c;
f7bf6c31 633 enable = pci;
8c411768
BC
634};
635
636module = {
637 name = ohci;
8427685f 638 common = bus/usb/ohci.c;
eefe8abd 639 enable = pci;
8c411768
BC
640};
641
2f82ea94
AN
642module = {
643 name = ehci;
644 common = bus/usb/ehci.c;
d11ced1e 645 arm_coreboot = bus/usb/ehci-fdt.c;
058df7b5 646 pci = bus/usb/ehci-pci.c;
2f82ea94 647 enable = pci;
d11ced1e 648 enable = arm_coreboot;
2f82ea94
AN
649};
650
8c411768
BC
651module = {
652 name = pci;
fe942b7d 653 common = bus/pci.c;
6f1bc8bc 654 i386_ieee1275 = bus/i386/ieee1275/pci.c;
d9b78bce 655
911bd640 656 enable = i386_pc;
911bd640
BC
657 enable = i386_ieee1275;
658 enable = i386_coreboot;
f0b05761 659 enable = i386_multiboot;
fe942b7d
VS
660};
661
7cd0df84
VS
662module = {
663 name = nativedisk;
664 common = commands/nativedisk.c;
ef9d8cd5
VS
665
666 enable = x86;
667 enable = mips_loongson;
668 enable = mips_qemu_mips;
7cd0df84
VS
669};
670
fe942b7d
VS
671module = {
672 name = emupci;
673 common = bus/emu/pci.c;
674 common = commands/lspci.c;
675
e7d09ac4 676 enable = emu;
fe942b7d 677 condition = COND_GRUB_EMU_PCI;
8c411768
BC
678};
679
8906c3dd
VS
680module = {
681 name = lsdev;
682 common = commands/arc/lsdev.c;
683
684 enable = mips_arc;
685};
686
9612ebc0
VS
687module = {
688 name = lsxen;
689 common = commands/xen/lsxen.c;
9612ebc0
VS
690
691 enable = xen;
692};
693
16c7cb32
BC
694module = {
695 name = cmostest;
eefe8abd
VS
696 common = commands/i386/cmostest.c;
697 enable = cmos;
16c7cb32
BC
698};
699
d55ffb02
VS
700module = {
701 name = cmosdump;
702 common = commands/i386/cmosdump.c;
703 enable = cmos;
704};
705
8c411768
BC
706module = {
707 name = iorw;
8427685f 708 common = commands/iorw.c;
f7711f5e 709 enable = x86;
8c411768
BC
710};
711
e6930a45
VS
712module = {
713 name = cbtable;
714 common = kern/i386/coreboot/cbtable.c;
461bfab7 715 common = kern/coreboot/cbtable.c;
e6930a45
VS
716 enable = i386_pc;
717 enable = i386_efi;
718 enable = i386_qemu;
719 enable = i386_multiboot;
720 enable = i386_ieee1275;
721 enable = x86_64_efi;
722};
723
cc19857a
VS
724module = {
725 name = cbtime;
726 common = commands/i386/coreboot/cb_timestamps.c;
e6930a45 727 enable = x86;
cc19857a
VS
728};
729
730module = {
731 name = cbls;
732 common = commands/i386/coreboot/cbls.c;
e6930a45 733 enable = x86;
cc19857a
VS
734};
735
736module = {
737 name = cbmemc;
738 common = term/i386/coreboot/cbmemc.c;
e6930a45 739 enable = x86;
cc19857a
VS
740};
741
8c411768
BC
742module = {
743 name = regexp;
8427685f 744 common = commands/regexp.c;
8fdefb92 745 common = commands/wildcard.c;
35b90906 746 common = lib/gnulib/regex.c;
8c411768
BC
747 cflags = '$(CFLAGS_POSIX) $(CFLAGS_GNULIB)';
748 cppflags = '$(CPPFLAGS_POSIX) $(CPPFLAGS_GNULIB)';
8c411768
BC
749};
750
751module = {
752 name = acpi;
753
1782b135 754 common = commands/acpi.c;
d43a5ee6
VS
755 i386_pc = kern/acpi.c;
756 i386_pc = kern/i386/pc/acpi.c;
911bd640 757
6585de4c 758 enable = efi;
911bd640 759 enable = i386_pc;
16bd6cfa
VS
760 enable = i386_coreboot;
761 enable = i386_multiboot;
8c411768
BC
762};
763
1782b135
TG
764module = {
765 name = lsacpi;
766
767 common = commands/lsacpi.c;
768
9a79fcf2 769 enable = efi;
1782b135
TG
770 enable = i386_pc;
771 enable = i386_coreboot;
772 enable = i386_multiboot;
773};
774
105de6a7
TG
775module = {
776 name = lsefisystab;
777
778 common = commands/efi/lsefisystab.c;
779
9a79fcf2 780 enable = efi;
105de6a7
TG
781};
782
783module = {
784 name = lssal;
785
786 common = commands/efi/lssal.c;
787
9a79fcf2 788 enable = efi;
105de6a7
TG
789};
790
41a331a8
TG
791module = {
792 name = lsefimmap;
793
794 common = commands/efi/lsefimmap.c;
795
9a79fcf2 796 enable = efi;
41a331a8
TG
797};
798
7bd29c01
VS
799module = {
800 name = lsefi;
801 common = commands/efi/lsefi.c;
802 enable = efi;
803};
804
c5052c81
PJ
805module = {
806 name = efifwsetup;
807 efi = commands/efi/efifwsetup.c;
808 enable = efi;
809};
810
8c411768 811module = {
8c411768 812 name = blocklist;
8427685f 813 common = commands/blocklist.c;
8c411768
BC
814};
815
816module = {
8c411768 817 name = boot;
8427685f 818 common = commands/boot.c;
8c411768 819 i386_pc = lib/i386/pc/biosnum.c;
fc4c4fdd
VS
820 enable = x86;
821 enable = emu;
822 enable = sparc64_ieee1275;
823 enable = powerpc_ieee1275;
824 enable = mips_arc;
825 enable = ia64_efi;
bd744218 826 enable = arm_efi;
15a463d7 827 enable = arm64_efi;
bd744218 828 enable = arm_uboot;
24e37a88 829 enable = arm_coreboot;
f1957dc8
AG
830 enable = riscv32_efi;
831 enable = riscv64_efi;
8c411768
BC
832};
833
834module = {
8c411768 835 name = cat;
8427685f 836 common = commands/cat.c;
8c411768
BC
837};
838
839module = {
8c411768 840 name = cmp;
8427685f 841 common = commands/cmp.c;
8c411768
BC
842};
843
844module = {
8c411768 845 name = configfile;
8427685f 846 common = commands/configfile.c;
8c411768
BC
847};
848
849module = {
850 name = cpuid;
9612ebc0 851 common = commands/i386/cpuid.c;
911bd640 852 enable = x86;
9c062ad4 853 enable = i386_xen_pvh;
9612ebc0
VS
854 enable = i386_xen;
855 enable = x86_64_xen;
8c411768
BC
856};
857
8c411768 858module = {
8c411768 859 name = date;
8427685f 860 common = commands/date.c;
8c411768
BC
861};
862
863module = {
864 name = drivemap;
865
866 i386_pc = commands/i386/pc/drivemap.c;
867 i386_pc = commands/i386/pc/drivemap_int13h.S;
911bd640 868 enable = i386_pc;
8c411768
BC
869};
870
871module = {
8c411768 872 name = echo;
8427685f 873 common = commands/echo.c;
8c411768
BC
874};
875
593e430c
AB
876module = {
877 name = eval;
878 common = commands/eval.c;
879};
880
8c411768 881module = {
8c411768 882 name = extcmd;
8427685f
BC
883 common = commands/extcmd.c;
884 common = lib/arg.c;
ee74fa48 885 enable = terminfomodule;
8c411768
BC
886};
887
888module = {
889 name = fixvideo;
6585de4c
VS
890 common = commands/efi/fixvideo.c;
891 enable = i386_efi;
892 enable = x86_64_efi;
8c411768
BC
893};
894
895module = {
8c411768 896 name = gptsync;
8427685f 897 common = commands/gptsync.c;
8c411768
BC
898};
899
900module = {
901 name = halt;
8427685f 902 nopc = commands/halt.c;
8c411768 903 i386_pc = commands/i386/pc/halt.c;
4df7996d 904 i386_pc = commands/acpihalt.c;
2419f17a
VS
905 i386_coreboot = commands/acpihalt.c;
906 i386_multiboot = commands/acpihalt.c;
c18271ed 907 i386_efi = commands/acpihalt.c;
908 x86_64_efi = commands/acpihalt.c;
afba9f98
VS
909 i386_multiboot = lib/i386/halt.c;
910 i386_coreboot = lib/i386/halt.c;
911 i386_qemu = lib/i386/halt.c;
9612ebc0 912 xen = lib/xen/halt.c;
9c062ad4 913 i386_xen_pvh = lib/xen/halt.c;
6585de4c 914 efi = lib/efi/halt.c;
afba9f98
VS
915 ieee1275 = lib/ieee1275/halt.c;
916 emu = lib/emu/halt.c;
1daa716c 917 uboot = lib/dummy/halt.c;
24e37a88 918 arm_coreboot = lib/dummy/halt.c;
8c411768
BC
919};
920
544c2487
VS
921module = {
922 name = reboot;
923 i386 = lib/i386/reboot.c;
924 i386 = lib/i386/reboot_trampoline.S;
544c2487
VS
925 powerpc_ieee1275 = lib/ieee1275/reboot.c;
926 sparc64_ieee1275 = lib/ieee1275/reboot.c;
927 mips_arc = lib/mips/arc/reboot.c;
928 mips_loongson = lib/mips/loongson/reboot.c;
929 mips_qemu_mips = lib/mips/qemu_mips/reboot.c;
9612ebc0 930 xen = lib/xen/reboot.c;
9c062ad4 931 i386_xen_pvh = lib/xen/reboot.c;
389b31cd 932 uboot = lib/uboot/reboot.c;
24e37a88 933 arm_coreboot = lib/dummy/reboot.c;
544c2487
VS
934 common = commands/reboot.c;
935};
936
8c411768 937module = {
8c411768 938 name = hashsum;
8427685f 939 common = commands/hashsum.c;
8c411768
BC
940};
941
5e3b8dcb 942module = {
b07feb87
DK
943 name = pgp;
944 common = commands/pgp.c;
5e3b8dcb
VS
945 cflags = '$(CFLAGS_POSIX)';
946 cppflags = '-I$(srcdir)/lib/posix_wrap';
947};
948
4a6abe50
MC
949module = {
950 name = verifiers;
951 common = kern/verifiers.c;
952 enable = i386_pc;
953};
954
8c411768
BC
955module = {
956 name = hdparm;
8427685f 957 common = commands/hdparm.c;
eefe8abd 958 enable = pci;
9a79fcf2 959 enable = mips_qemu_mips;
8c411768
BC
960};
961
962module = {
8c411768 963 name = help;
8427685f 964 common = commands/help.c;
8c411768
BC
965};
966
967module = {
8c411768 968 name = hexdump;
8427685f
BC
969 common = commands/hexdump.c;
970 common = lib/hexdump.c;
8c411768
BC
971};
972
bc7f762a
EB
973module = {
974 name = hwmatch;
975 i386_pc = commands/i386/pc/hwmatch.c;
976 enable = i386_pc;
977 cflags = '$(CFLAGS_POSIX) $(CFLAGS_GNULIB)';
978 cppflags = '$(CPPFLAGS_POSIX) $(CPPFLAGS_GNULIB)';
979};
980
8c411768 981module = {
8c411768 982 name = keystatus;
8427685f 983 common = commands/keystatus.c;
8c411768
BC
984};
985
986module = {
987 name = loadbios;
6585de4c
VS
988 common = commands/efi/loadbios.c;
989 enable = i386_efi;
990 enable = x86_64_efi;
8c411768
BC
991};
992
993module = {
8c411768 994 name = loadenv;
8427685f
BC
995 common = commands/loadenv.c;
996 common = lib/envblk.c;
8c411768
BC
997};
998
999module = {
8c411768 1000 name = ls;
8427685f 1001 common = commands/ls.c;
8c411768
BC
1002};
1003
1004module = {
8c411768 1005 name = lsmmap;
8427685f 1006 common = commands/lsmmap.c;
8c411768
BC
1007};
1008
1009module = {
1010 name = lspci;
8427685f 1011 common = commands/lspci.c;
8c411768 1012
eefe8abd 1013 enable = pci;
8c411768
BC
1014};
1015
1016module = {
8c411768 1017 name = memrw;
8427685f 1018 common = commands/memrw.c;
8c411768
BC
1019};
1020
1021module = {
8c411768 1022 name = minicmd;
8427685f 1023 common = commands/minicmd.c;
8c411768
BC
1024};
1025
1026module = {
8c411768 1027 name = parttool;
8427685f 1028 common = commands/parttool.c;
8c411768
BC
1029};
1030
1031module = {
8c411768 1032 name = password;
8427685f 1033 common = commands/password.c;
8c411768
BC
1034};
1035
1036module = {
8c411768 1037 name = password_pbkdf2;
8427685f 1038 common = commands/password_pbkdf2.c;
8c411768
BC
1039};
1040
1041module = {
1042 name = play;
f7711f5e
BC
1043 x86 = commands/i386/pc/play.c;
1044 enable = x86;
8c411768
BC
1045};
1046
b78d6c32
VS
1047module = {
1048 name = spkmodem;
1049 x86 = term/spkmodem.c;
1050 enable = x86;
1051};
1052
1053module = {
1054 name = morse;
1055 x86 = term/morse.c;
1056 enable = x86;
1057};
1058
8c411768 1059module = {
8c411768 1060 name = probe;
8427685f 1061 common = commands/probe.c;
8c411768
BC
1062};
1063
8c411768 1064module = {
8c411768 1065 name = read;
8427685f 1066 common = commands/read.c;
8c411768
BC
1067};
1068
8c411768 1069module = {
8c411768 1070 name = search;
8427685f 1071 common = commands/search_wrap.c;
610c1efd 1072 extra_dist = commands/search.c;
8c411768
BC
1073};
1074
1075module = {
8c411768 1076 name = search_fs_file;
8427685f 1077 common = commands/search_file.c;
8c411768
BC
1078};
1079
1080module = {
8c411768 1081 name = search_fs_uuid;
8427685f 1082 common = commands/search_uuid.c;
8c411768
BC
1083};
1084
1085module = {
8c411768 1086 name = search_label;
8427685f 1087 common = commands/search_label.c;
8c411768
BC
1088};
1089
1090module = {
1091 name = setpci;
8427685f 1092 common = commands/setpci.c;
30545b85 1093 enable = pci;
8c411768
BC
1094};
1095
7d462559
VS
1096module = {
1097 name = pcidump;
1098 common = commands/pcidump.c;
1099 enable = pci;
1100};
1101
8c411768 1102module = {
8c411768 1103 name = sleep;
8427685f 1104 common = commands/sleep.c;
8c411768
BC
1105};
1106
688023cd
DM
1107module = {
1108 name = smbios;
1109
1110 common = commands/smbios.c;
1111 efi = commands/efi/smbios.c;
1112 i386_pc = commands/i386/pc/smbios.c;
1113 i386_coreboot = commands/i386/pc/smbios.c;
1114 i386_multiboot = commands/i386/pc/smbios.c;
1115
1116 enable = efi;
1117 enable = i386_pc;
1118 enable = i386_coreboot;
1119 enable = i386_multiboot;
1120};
1121
8c411768
BC
1122module = {
1123 name = suspend;
8427685f 1124 ieee1275 = commands/ieee1275/suspend.c;
911bd640
BC
1125 enable = i386_ieee1275;
1126 enable = powerpc_ieee1275;
8c411768
BC
1127};
1128
61c42af0
VS
1129module = {
1130 name = escc;
1131 ieee1275 = term/ieee1275/escc.c;
1132 enable = powerpc_ieee1275;
1133};
1134
8c411768 1135module = {
8c411768 1136 name = terminal;
8427685f 1137 common = commands/terminal.c;
8c411768
BC
1138};
1139
1140module = {
8c411768 1141 name = test;
8427685f 1142 common = commands/test.c;
8c411768
BC
1143};
1144
1145module = {
8c411768 1146 name = true;
8427685f 1147 common = commands/true.c;
8c411768
BC
1148};
1149
1150module = {
1151 name = usbtest;
8427685f 1152 common = commands/usbtest.c;
eefe8abd 1153 enable = usb;
8c411768
BC
1154};
1155
1156module = {
540e2fe1
VS
1157 name = videoinfo;
1158 common = commands/videoinfo.c;
8c411768
BC
1159};
1160
1161module = {
8c411768 1162 name = videotest;
8427685f 1163 common = commands/videotest.c;
8c411768
BC
1164};
1165
1166module = {
8c411768 1167 name = xnu_uuid;
8427685f 1168 common = commands/xnu_uuid.c;
8c411768
BC
1169};
1170
1171module = {
8c411768 1172 name = dm_nv;
8427685f 1173 common = disk/dmraid_nvidia.c;
8c411768
BC
1174};
1175
1176module = {
8c411768 1177 name = loopback;
8427685f 1178 common = disk/loopback.c;
8c411768
BC
1179};
1180
8585e54b
VS
1181module = {
1182 name = cryptodisk;
1183 common = disk/cryptodisk.c;
1184};
1185
528938d5
PS
1186module = {
1187 name = json;
1188 common = lib/json/json.c;
1189};
1190
5324c335
PS
1191module = {
1192 name = afsplitter;
1193 common = disk/AFSplitter.c;
1194};
1195
7217f315
MG
1196module = {
1197 name = luks;
1198 common = disk/luks.c;
7217f315
MG
1199};
1200
365e0cc3
PS
1201module = {
1202 name = luks2;
1203 common = disk/luks2.c;
1204 common = lib/gnulib/base64.c;
1205 cflags = '$(CFLAGS_POSIX) $(CFLAGS_GNULIB)';
1206 cppflags = '$(CPPFLAGS_POSIX) $(CPPFLAGS_GNULIB) -I$(srcdir)/lib/json';
1207};
1208
1a1f408f
VS
1209module = {
1210 name = geli;
1211 common = disk/geli.c;
1212};
1213
8c411768 1214module = {
8c411768 1215 name = lvm;
8427685f 1216 common = disk/lvm.c;
8c411768
BC
1217};
1218
076e7c0f
VS
1219module = {
1220 name = ldm;
1221 common = disk/ldm.c;
1222};
1223
8c411768 1224module = {
1e8d555b 1225 name = mdraid09;
8427685f 1226 common = disk/mdraid_linux.c;
8c411768
BC
1227};
1228
22e6a774
VS
1229module = {
1230 name = mdraid09_be;
1231 common = disk/mdraid_linux_be.c;
1232};
1233
1e8d555b
VS
1234module = {
1235 name = mdraid1x;
1236 common = disk/mdraid1x_linux.c;
1237};
1238
8c411768 1239module = {
076e7c0f
VS
1240 name = diskfilter;
1241 common = disk/diskfilter.c;
8c411768
BC
1242};
1243
1244module = {
8c411768 1245 name = raid5rec;
8427685f 1246 common = disk/raid5_recover.c;
8c411768
BC
1247};
1248
1249module = {
8c411768 1250 name = raid6rec;
8427685f 1251 common = disk/raid6_recover.c;
8c411768
BC
1252};
1253
1254module = {
8c411768 1255 name = scsi;
8427685f 1256 common = disk/scsi.c;
8c411768
BC
1257};
1258
1259module = {
8c411768 1260 name = memdisk;
8427685f 1261 common = disk/memdisk.c;
8c411768
BC
1262};
1263
1264module = {
1265 name = ata;
8427685f 1266 common = disk/ata.c;
eefe8abd 1267 enable = pci;
a228ec10 1268 enable = mips_qemu_mips;
8c411768
BC
1269};
1270
1271module = {
de2690be
VS
1272 name = ahci;
1273 common = disk/ahci.c;
eefe8abd 1274 enable = pci;
8c411768
BC
1275};
1276
de2690be
VS
1277module = {
1278 name = pata;
1279 common = disk/pata.c;
eefe8abd 1280 enable = pci;
a228ec10 1281 enable = mips_qemu_mips;
8c411768
BC
1282};
1283
1284module = {
1285 name = biosdisk;
1286 i386_pc = disk/i386/pc/biosdisk.c;
911bd640 1287 enable = i386_pc;
8c411768
BC
1288};
1289
1290module = {
1291 name = usbms;
8427685f 1292 common = disk/usbms.c;
eefe8abd 1293 enable = usb;
8c411768
BC
1294};
1295
1296module = {
1297 name = nand;
8427685f 1298 ieee1275 = disk/ieee1275/nand.c;
911bd640 1299 enable = i386_ieee1275;
8c411768
BC
1300};
1301
1302module = {
1303 name = efiemu;
16bd6cfa
VS
1304 common = efiemu/main.c;
1305 common = efiemu/i386/loadcore32.c;
1306 common = efiemu/i386/loadcore64.c;
8c411768 1307 i386_pc = efiemu/i386/pc/cfgtables.c;
8218d8b6
VS
1308 i386_coreboot = efiemu/i386/pc/cfgtables.c;
1309 i386_multiboot = efiemu/i386/pc/cfgtables.c;
1310 i386_ieee1275 = efiemu/i386/nocfgtables.c;
6f8157cb 1311 i386_qemu = efiemu/i386/nocfgtables.c;
16bd6cfa
VS
1312 common = efiemu/mm.c;
1313 common = efiemu/loadcore_common.c;
1314 common = efiemu/symbols.c;
1315 common = efiemu/loadcore32.c;
1316 common = efiemu/loadcore64.c;
1317 common = efiemu/prepare32.c;
1318 common = efiemu/prepare64.c;
1319 common = efiemu/pnvram.c;
1320 common = efiemu/i386/coredetect.c;
a60f6ee1
BC
1321
1322 extra_dist = efiemu/prepare.c;
1323 extra_dist = efiemu/loadcore.c;
1324 extra_dist = efiemu/runtime/efiemu.S;
1325 extra_dist = efiemu/runtime/efiemu.c;
911bd640
BC
1326
1327 enable = i386_pc;
8218d8b6 1328 enable = i386_coreboot;
16bd6cfa
VS
1329 enable = i386_ieee1275;
1330 enable = i386_multiboot;
6f8157cb 1331 enable = i386_qemu;
8c411768
BC
1332};
1333
1334module = {
1335 name = font;
8427685f
BC
1336 common = font/font.c;
1337 common = font/font_cmd.c;
eefe8abd 1338 enable = videomodules;
8c411768
BC
1339};
1340
ce50dbd7
VS
1341module = {
1342 name = procfs;
1343 common = fs/proc.c;
1344};
1345
8c411768 1346module = {
8c411768 1347 name = affs;
8427685f 1348 common = fs/affs.c;
8c411768
BC
1349};
1350
1351module = {
8c411768 1352 name = afs;
8427685f 1353 common = fs/afs.c;
8c411768
BC
1354};
1355
1356module = {
5825b379
VS
1357 name = bfs;
1358 common = fs/bfs.c;
8c411768
BC
1359};
1360
461f1d8a
NT
1361module = {
1362 name = zstd;
1363 common = lib/zstd/debug.c;
1364 common = lib/zstd/entropy_common.c;
1365 common = lib/zstd/error_private.c;
1366 common = lib/zstd/fse_decompress.c;
1367 common = lib/zstd/huf_decompress.c;
1368 common = lib/zstd/module.c;
1369 common = lib/zstd/xxhash.c;
1370 common = lib/zstd/zstd_common.c;
1371 common = lib/zstd/zstd_decompress.c;
1372 cflags = '$(CFLAGS_POSIX) -Wno-undef';
1373 cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/zstd';
1374};
1375
8c411768 1376module = {
4dfbc574
RM
1377 name = btrfs;
1378 common = fs/btrfs.c;
3836e89d 1379 common = lib/crc.c;
095f077e 1380 cflags = '$(CFLAGS_POSIX) -Wno-undef';
38612864 1381 cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -I$(srcdir)/lib/zstd -DMINILZO_HAVE_CONFIG_H';
8c411768
BC
1382};
1383
5027af38
VS
1384module = {
1385 name = archelp;
1386 common = fs/archelp.c;
1387};
1388
1389module = {
1390 name = cbfs;
1391 common = fs/cbfs.c;
1392};
1393
8c411768 1394module = {
8c411768 1395 name = cpio;
8427685f 1396 common = fs/cpio.c;
8c411768
BC
1397};
1398
4dfbc574 1399module = {
a1a8b1b9
VS
1400 name = cpio_be;
1401 common = fs/cpio_be.c;
4dfbc574
RM
1402};
1403
8c411768 1404module = {
a1a8b1b9
VS
1405 name = newc;
1406 common = fs/newc.c;
1407};
1408
1409module = {
1410 name = odc;
1411 common = fs/odc.c;
8c411768
BC
1412};
1413
1414module = {
8c411768 1415 name = ext2;
8427685f 1416 common = fs/ext2.c;
8c411768
BC
1417};
1418
1419module = {
8c411768 1420 name = fat;
8427685f 1421 common = fs/fat.c;
8c411768
BC
1422};
1423
48fe18dc
VS
1424module = {
1425 name = exfat;
1426 common = fs/exfat.c;
1427};
1428
71f9e4ac
JK
1429module = {
1430 name = f2fs;
1431 common = fs/f2fs.c;
1432};
1433
8c411768 1434module = {
8c411768 1435 name = fshelp;
8427685f 1436 common = fs/fshelp.c;
8c411768
BC
1437};
1438
1439module = {
8c411768 1440 name = hfs;
8427685f 1441 common = fs/hfs.c;
8c411768
BC
1442};
1443
1444module = {
8c411768 1445 name = hfsplus;
8427685f 1446 common = fs/hfsplus.c;
8c411768
BC
1447};
1448
8098f655
VS
1449module = {
1450 name = hfspluscomp;
1451 common = fs/hfspluscomp.c;
1452};
1453
8c411768 1454module = {
8c411768 1455 name = iso9660;
8427685f 1456 common = fs/iso9660.c;
8c411768
BC
1457};
1458
1459module = {
8c411768 1460 name = jfs;
8427685f 1461 common = fs/jfs.c;
8c411768
BC
1462};
1463
1464module = {
8c411768 1465 name = minix;
8427685f 1466 common = fs/minix.c;
8c411768
BC
1467};
1468
b4a0c915
VS
1469module = {
1470 name = minix2;
1471 common = fs/minix2.c;
1472};
1473
3dd3dd33
FZ
1474module = {
1475 name = minix3;
1476 common = fs/minix3.c;
1477};
1478
ac66b453
VS
1479module = {
1480 name = minix_be;
1481 common = fs/minix_be.c;
1482};
1483
1484module = {
1485 name = minix2_be;
1486 common = fs/minix2_be.c;
1487};
1488
1489module = {
1490 name = minix3_be;
1491 common = fs/minix3_be.c;
1492};
1493
8c411768 1494module = {
8c411768 1495 name = nilfs2;
8427685f 1496 common = fs/nilfs2.c;
8c411768
BC
1497};
1498
1499module = {
8c411768 1500 name = ntfs;
8427685f 1501 common = fs/ntfs.c;
8c411768
BC
1502};
1503
1504module = {
8c411768 1505 name = ntfscomp;
8427685f 1506 common = fs/ntfscomp.c;
8c411768
BC
1507};
1508
1509module = {
8c411768 1510 name = reiserfs;
8427685f 1511 common = fs/reiserfs.c;
8c411768
BC
1512};
1513
29184e93
VS
1514module = {
1515 name = romfs;
1516 common = fs/romfs.c;
1517};
1518
8c411768 1519module = {
8c411768 1520 name = sfs;
8427685f 1521 common = fs/sfs.c;
8c411768
BC
1522};
1523
332fa368
VS
1524module = {
1525 name = squash4;
1526 common = fs/squash4.c;
c029da8a
VS
1527 cflags = '$(CFLAGS_POSIX) -Wno-undef';
1528 cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H';
332fa368
VS
1529};
1530
8c411768 1531module = {
8c411768 1532 name = tar;
8427685f 1533 common = fs/tar.c;
8c411768
BC
1534};
1535
1536module = {
8c411768 1537 name = udf;
8427685f 1538 common = fs/udf.c;
8c411768
BC
1539};
1540
1541module = {
8c411768 1542 name = ufs1;
8427685f 1543 common = fs/ufs.c;
8c411768
BC
1544};
1545
d9c48c7b
VS
1546module = {
1547 name = ufs1_be;
1548 common = fs/ufs_be.c;
1549};
1550
8c411768 1551module = {
8c411768 1552 name = ufs2;
8427685f 1553 common = fs/ufs2.c;
8c411768
BC
1554};
1555
1556module = {
8c411768 1557 name = xfs;
8427685f 1558 common = fs/xfs.c;
8c411768
BC
1559};
1560
bf78d5b2
RM
1561module = {
1562 name = zfs;
1563 common = fs/zfs/zfs.c;
1564 common = fs/zfs/zfs_lzjb.c;
038016f4 1565 common = fs/zfs/zfs_lz4.c;
bf78d5b2
RM
1566 common = fs/zfs/zfs_sha256.c;
1567 common = fs/zfs/zfs_fletcher.c;
1568};
1569
f003a8c5
VS
1570module = {
1571 name = zfscrypt;
1572 common = fs/zfs/zfscrypt.c;
1573};
1574
bf78d5b2
RM
1575module = {
1576 name = zfsinfo;
1577 common = fs/zfs/zfsinfo.c;
1578};
1579
b8765fa0
VS
1580module = {
1581 name = macbless;
1582 common = commands/macbless.c;
1583};
1584
8c411768
BC
1585module = {
1586 name = pxe;
8e60fc8f 1587 i386_pc = net/drivers/i386/pc/pxe.c;
911bd640 1588 enable = i386_pc;
8c411768
BC
1589};
1590
1591module = {
1592 name = gettext;
8427685f 1593 common = gettext/gettext.c;
8c411768
BC
1594};
1595
1596module = {
8c411768 1597 name = gfxmenu;
8427685f 1598 common = gfxmenu/gfxmenu.c;
8427685f
BC
1599 common = gfxmenu/view.c;
1600 common = gfxmenu/font.c;
1601 common = gfxmenu/icon_manager.c;
1602 common = gfxmenu/theme_loader.c;
1603 common = gfxmenu/widget-box.c;
1604 common = gfxmenu/gui_canvas.c;
1605 common = gfxmenu/gui_circular_progress.c;
1606 common = gfxmenu/gui_box.c;
1607 common = gfxmenu/gui_label.c;
1608 common = gfxmenu/gui_list.c;
1609 common = gfxmenu/gui_image.c;
1610 common = gfxmenu/gui_progress_bar.c;
1611 common = gfxmenu/gui_util.c;
1612 common = gfxmenu/gui_string_util.c;
8c411768
BC
1613};
1614
1615module = {
8c411768 1616 name = hello;
8427685f 1617 common = hello/hello.c;
8c411768
BC
1618};
1619
1620module = {
8c411768 1621 name = gzio;
8427685f 1622 common = io/gzio.c;
8c411768
BC
1623};
1624
9612ebc0
VS
1625module = {
1626 name = offsetio;
1627 common = io/offset.c;
1628};
1629
8c411768
BC
1630module = {
1631 name = bufio;
8427685f 1632 common = io/bufio.c;
eefe8abd 1633 enable = videomodules;
8c411768
BC
1634};
1635
1636module = {
8c411768 1637 name = elf;
8427685f 1638 common = kern/elf.c;
18866643
AB
1639
1640 extra_dist = kern/elfXX.c;
8c411768
BC
1641};
1642
8c411768 1643module = {
8c411768 1644 name = crypto;
8427685f 1645 common = lib/crypto.c;
610c1efd
BC
1646
1647 extra_dist = lib/libgcrypt-grub/cipher/crypto.lst;
8c411768
BC
1648};
1649
8c411768 1650module = {
8c411768 1651 name = pbkdf2;
8427685f 1652 common = lib/pbkdf2.c;
8c411768
BC
1653};
1654
1655module = {
1656 name = relocator;
16bd6cfa
VS
1657 common = lib/relocator.c;
1658 x86 = lib/i386/relocator16.S;
1659 x86 = lib/i386/relocator32.S;
1660 x86 = lib/i386/relocator64.S;
9c062ad4
JG
1661 i386_xen_pvh = lib/i386/relocator16.S;
1662 i386_xen_pvh = lib/i386/relocator32.S;
1663 i386_xen_pvh = lib/i386/relocator64.S;
16bd6cfa 1664 i386 = lib/i386/relocator_asm.S;
9c062ad4 1665 i386_xen_pvh = lib/i386/relocator_asm.S;
16bd6cfa 1666 x86_64 = lib/x86_64/relocator_asm.S;
9612ebc0
VS
1667 i386_xen = lib/i386/relocator_asm.S;
1668 x86_64_xen = lib/x86_64/relocator_asm.S;
8c411768 1669 x86 = lib/i386/relocator.c;
9612ebc0 1670 x86 = lib/i386/relocator_common_c.c;
9c062ad4
JG
1671 i386_xen_pvh = lib/i386/relocator.c;
1672 i386_xen_pvh = lib/i386/relocator_common_c.c;
16bd6cfa 1673 ieee1275 = lib/ieee1275/relocator.c;
6585de4c 1674 efi = lib/efi/relocator.c;
16bd6cfa
VS
1675 mips = lib/mips/relocator_asm.S;
1676 mips = lib/mips/relocator.c;
1677 powerpc = lib/powerpc/relocator_asm.S;
1678 powerpc = lib/powerpc/relocator.c;
9612ebc0
VS
1679 xen = lib/xen/relocator.c;
1680 i386_xen = lib/i386/xen/relocator.S;
1681 x86_64_xen = lib/x86_64/xen/relocator.S;
1682 xen = lib/i386/relocator_common_c.c;
9862b241 1683 x86_64_efi = lib/x86_64/efi/relocator.c;
16bd6cfa 1684
6556eba9
BC
1685 extra_dist = lib/i386/relocator_common.S;
1686 extra_dist = kern/powerpc/cache_flush.S;
1687
911bd640 1688 enable = mips;
16bd6cfa 1689 enable = powerpc;
911bd640 1690 enable = x86;
9c062ad4 1691 enable = i386_xen_pvh;
9612ebc0 1692 enable = xen;
8c411768
BC
1693};
1694
1695module = {
1696 name = datetime;
aa096037 1697 common = lib/datetime.c;
eefe8abd 1698 cmos = lib/cmos_datetime.c;
6585de4c 1699 efi = lib/efi/datetime.c;
9808c3ef 1700 uboot = lib/dummy/datetime.c;
24e37a88 1701 arm_coreboot = lib/dummy/datetime.c;
8c411768
BC
1702 sparc64_ieee1275 = lib/ieee1275/datetime.c;
1703 powerpc_ieee1275 = lib/ieee1275/datetime.c;
a07a81b3
VS
1704 sparc64_ieee1275 = lib/ieee1275/cmos.c;
1705 powerpc_ieee1275 = lib/ieee1275/cmos.c;
9612ebc0 1706 xen = lib/xen/datetime.c;
9c062ad4 1707 i386_xen_pvh = lib/xen/datetime.c;
a07a81b3 1708
8906c3dd 1709 mips_arc = lib/arc/datetime.c;
8c411768
BC
1710};
1711
1712module = {
1713 name = setjmp;
8427685f 1714 common = lib/setjmp.S;
2b6c0084
BC
1715 extra_dist = lib/i386/setjmp.S;
1716 extra_dist = lib/mips/setjmp.S;
1717 extra_dist = lib/x86_64/setjmp.S;
1718 extra_dist = lib/sparc64/setjmp.S;
1719 extra_dist = lib/powerpc/setjmp.S;
9a79fcf2 1720 extra_dist = lib/ia64/setjmp.S;
2702b4e4 1721 extra_dist = lib/ia64/longjmp.S;
389b31cd 1722 extra_dist = lib/arm/setjmp.S;
0c0eab52 1723 extra_dist = lib/arm64/setjmp.S;
f1957dc8 1724 extra_dist = lib/riscv/setjmp.S;
8c411768
BC
1725};
1726
1727module = {
1728 name = aout;
8427685f 1729 common = loader/aout.c;
16bd6cfa 1730 enable = x86;
8c411768
BC
1731};
1732
1733module = {
1734 name = bsd;
16bd6cfa
VS
1735 x86 = loader/i386/bsd.c;
1736 x86 = loader/i386/bsd32.c;
1737 x86 = loader/i386/bsd64.c;
610c1efd
BC
1738
1739 extra_dist = loader/i386/bsdXX.c;
1740 extra_dist = loader/i386/bsd_pagetable.c;
1741
16bd6cfa 1742 enable = x86;
8c411768
BC
1743};
1744
70e8145a
VS
1745module = {
1746 name = plan9;
1747 i386_pc = loader/i386/pc/plan9.c;
1748 enable = i386_pc;
1749};
1750
1751
8c411768
BC
1752module = {
1753 name = linux16;
0789b672 1754 common = loader/i386/pc/linux.c;
0789b672 1755 enable = x86;
8c411768
BC
1756};
1757
16bd6cfa
VS
1758module = {
1759 name = ntldr;
1760 i386_pc = loader/i386/pc/ntldr.c;
1761 enable = i386_pc;
1762};
1763
30861754
VS
1764
1765module = {
1766 name = truecrypt;
1767 i386_pc = loader/i386/pc/truecrypt.c;
1768 enable = i386_pc;
1769};
1770
1771
b28fd807
VS
1772module = {
1773 name = freedos;
1774 i386_pc = loader/i386/pc/freedos.c;
1775 enable = i386_pc;
1776};
1777
0a96117d
VS
1778module = {
1779 name = pxechain;
1780 i386_pc = loader/i386/pc/pxechainloader.c;
1781 enable = i386_pc;
1782};
1783
8c411768
BC
1784module = {
1785 name = multiboot2;
1786 cppflags = "-DGRUB_USE_MULTIBOOT2";
1787
8427685f
BC
1788 common = loader/multiboot.c;
1789 common = loader/multiboot_mbi2.c;
911bd640 1790 enable = x86;
9c062ad4 1791 enable = i386_xen_pvh;
911bd640 1792 enable = mips;
8c411768
BC
1793};
1794
1795module = {
1796 name = multiboot;
8427685f
BC
1797 common = loader/multiboot.c;
1798 x86 = loader/i386/multiboot_mbi.c;
9c062ad4 1799 i386_xen_pvh = loader/i386/multiboot_mbi.c;
a60f6ee1 1800 extra_dist = loader/multiboot_elfxx.c;
911bd640 1801 enable = x86;
9c062ad4 1802 enable = i386_xen_pvh;
8c411768
BC
1803};
1804
83cb45e9
FW
1805module = {
1806 name = xen_boot;
83cb45e9
FW
1807 arm64 = loader/arm64/xen_boot.c;
1808 enable = arm64;
1809};
1810
8c411768
BC
1811module = {
1812 name = linux;
16bd6cfa 1813 x86 = loader/i386/linux.c;
9c062ad4 1814 i386_xen_pvh = loader/i386/linux.c;
9612ebc0 1815 xen = loader/i386/xen.c;
e31bb619 1816 i386_pc = lib/i386/pc/vesa_modes_table.c;
9c062ad4 1817 i386_xen_pvh = lib/i386/pc/vesa_modes_table.c;
8c411768
BC
1818 mips = loader/mips/linux.c;
1819 powerpc_ieee1275 = loader/powerpc/ieee1275/linux.c;
1820 sparc64_ieee1275 = loader/sparc64/ieee1275/linux.c;
6585de4c 1821 ia64_efi = loader/ia64/efi/linux.c;
d0c07017
LL
1822 arm_coreboot = loader/arm/linux.c;
1823 arm_efi = loader/arm64/linux.c;
1824 arm_uboot = loader/arm/linux.c;
30a9ab95 1825 arm64 = loader/arm64/linux.c;
f1957dc8
AG
1826 riscv32 = loader/riscv/linux.c;
1827 riscv64 = loader/riscv/linux.c;
92750e4c 1828 common = loader/linux.c;
6cc79ec1 1829 common = lib/cmdline.c;
8427685f 1830 enable = noemu;
8c411768
BC
1831};
1832
4d0cb755
VS
1833module = {
1834 name = fdt;
d0c07017 1835 efi = loader/efi/fdt.c;
7cc27aed
VS
1836 common = lib/fdt.c;
1837 enable = fdt;
4d0cb755
VS
1838};
1839
8c411768
BC
1840module = {
1841 name = xnu;
16bd6cfa
VS
1842 x86 = loader/xnu_resume.c;
1843 x86 = loader/i386/xnu.c;
16bd6cfa 1844 x86 = loader/xnu.c;
a60f6ee1 1845
22aa31bc
VS
1846 /* Code is pretty generic but relies on RNG which
1847 is available only on few platforms. It's not a
1848 big deal as xnu needs ACPI anyway and we have
1849 RNG on all platforms with ACPI.
1850 */
1851 enable = i386_multiboot;
1852 enable = i386_coreboot;
1853 enable = i386_pc;
1854 enable = i386_efi;
1855 enable = x86_64_efi;
1856};
e72de13b
VS
1857
1858module = {
1859 name = random;
1860 x86 = lib/i386/random.c;
1861 common = lib/random.c;
1862
1863 i386_multiboot = kern/i386/tsc_pmtimer.c;
1864 i386_coreboot = kern/i386/tsc_pmtimer.c;
1865 i386_pc = kern/i386/tsc_pmtimer.c;
1866
1867 enable = i386_multiboot;
1868 enable = i386_coreboot;
1869 enable = i386_pc;
1870 enable = i386_efi;
1871 enable = x86_64_efi;
8c411768
BC
1872};
1873
ec824e0f
VS
1874module = {
1875 name = macho;
1876
1877 common = loader/macho.c;
1878 common = loader/macho32.c;
1879 common = loader/macho64.c;
1880 common = loader/lzss.c;
1881 extra_dist = loader/machoXX.c;
1882};
1883
8c411768
BC
1884module = {
1885 name = appleldr;
6585de4c
VS
1886 common = loader/efi/appleloader.c;
1887 enable = i386_efi;
1888 enable = x86_64_efi;
8c411768
BC
1889};
1890
fc550c31
MG
1891module = {
1892 name = linuxefi;
1893 efi = loader/i386/efi/linux.c;
1894 enable = i386_efi;
1895 enable = x86_64_efi;
1896};
1897
8c411768
BC
1898module = {
1899 name = chain;
6585de4c 1900 efi = loader/efi/chainloader.c;
8c411768 1901 i386_pc = loader/i386/pc/chainloader.c;
8d5d8444 1902 i386_coreboot = loader/i386/coreboot/chainloader.c;
89977306 1903 i386_coreboot = lib/LzmaDec.c;
911bd640 1904 enable = i386_pc;
ba7df45e 1905 enable = i386_coreboot;
6585de4c 1906 enable = efi;
8c411768
BC
1907};
1908
1909module = {
1910 name = mmap;
eefe8abd
VS
1911 common = mmap/mmap.c;
1912 x86 = mmap/i386/uppermem.c;
1913 x86 = mmap/i386/mmap.c;
9c062ad4
JG
1914 i386_xen_pvh = mmap/i386/uppermem.c;
1915 i386_xen_pvh = mmap/i386/mmap.c;
eefe8abd 1916
8c411768
BC
1917 i386_pc = mmap/i386/pc/mmap.c;
1918 i386_pc = mmap/i386/pc/mmap_helper.S;
1919
6585de4c 1920 efi = mmap/efi/mmap.c;
8c411768 1921
8906c3dd 1922 mips = mmap/mips/uppermem.c;
911bd640
BC
1923
1924 enable = x86;
9c062ad4 1925 enable = i386_xen_pvh;
c18271ed 1926 enable = ia64_efi;
389b31cd 1927 enable = arm_efi;
15a463d7 1928 enable = arm64_efi;
f1957dc8
AG
1929 enable = riscv32_efi;
1930 enable = riscv64_efi;
f440c33f 1931 enable = mips;
8c411768
BC
1932};
1933
1934module = {
8c411768 1935 name = normal;
8427685f
BC
1936 common = normal/main.c;
1937 common = normal/cmdline.c;
1938 common = normal/dyncmd.c;
1939 common = normal/auth.c;
1940 common = normal/autofs.c;
1941 common = normal/color.c;
1942 common = normal/completion.c;
8427685f
BC
1943 common = normal/menu.c;
1944 common = normal/menu_entry.c;
1945 common = normal/menu_text.c;
1946 common = normal/misc.c;
1947 common = normal/crypto.c;
1948 common = normal/term.c;
1949 common = normal/context.c;
1950 common = normal/charset.c;
8f5add13 1951 common = lib/getline.c;
8427685f
BC
1952
1953 common = script/main.c;
1954 common = script/script.c;
1955 common = script/execute.c;
1956 common = script/function.c;
1957 common = script/lexer.c;
1958 common = script/argv.c;
1959
9284756e
BC
1960 common = commands/menuentry.c;
1961
8427685f
BC
1962 common = unidata.c;
1963 common_nodist = grub_script.tab.c;
1964 common_nodist = grub_script.yy.c;
1965 common_nodist = grub_script.tab.h;
1966 common_nodist = grub_script.yy.h;
297f0c2b
BC
1967
1968 extra_dist = script/yylex.l;
1969 extra_dist = script/parser.y;
1970
ebcecdf1 1971 cflags = '$(CFLAGS_POSIX) -Wno-redundant-decls';
297f0c2b 1972 cppflags = '$(CPPFLAGS_POSIX)';
8c411768
BC
1973};
1974
1975module = {
8c411768 1976 name = part_acorn;
8427685f 1977 common = partmap/acorn.c;
8c411768
BC
1978};
1979
1980module = {
8c411768 1981 name = part_amiga;
8427685f 1982 common = partmap/amiga.c;
8c411768
BC
1983};
1984
1985module = {
8c411768 1986 name = part_apple;
8427685f 1987 common = partmap/apple.c;
8c411768
BC
1988};
1989
1990module = {
8c411768 1991 name = part_gpt;
8427685f 1992 common = partmap/gpt.c;
8c411768
BC
1993};
1994
1995module = {
8c411768 1996 name = part_msdos;
8427685f 1997 common = partmap/msdos.c;
8c411768
BC
1998};
1999
2000module = {
8c411768 2001 name = part_sun;
8427685f 2002 common = partmap/sun.c;
8c411768
BC
2003};
2004
ac9ef7ee
VS
2005module = {
2006 name = part_plan;
2007 common = partmap/plan.c;
111c1778 2008};
4e01c8c1 2009
8906c3dd
VS
2010module = {
2011 name = part_dvh;
2012 common = partmap/dvh.c;
2013};
2014
8c411768 2015module = {
8c411768 2016 name = part_bsd;
8427685f 2017 common = partmap/bsdlabel.c;
8c411768
BC
2018};
2019
2020module = {
8c411768 2021 name = part_sunpc;
8427685f 2022 common = partmap/sunpc.c;
8c411768
BC
2023};
2024
1e908b34
RS
2025module = {
2026 name = part_dfly;
2027 common = partmap/dfly.c;
2028};
2029
8c411768 2030module = {
8c411768 2031 name = msdospart;
8427685f 2032 common = parttool/msdospart.c;
8c411768
BC
2033};
2034
8c411768
BC
2035module = {
2036 name = at_keyboard;
8427685f 2037 common = term/at_keyboard.c;
216950a4 2038 common = term/ps2.c;
911bd640 2039 enable = x86;
8c411768
BC
2040};
2041
2042module = {
2043 name = gfxterm;
8427685f 2044 common = term/gfxterm.c;
eefe8abd 2045 enable = videomodules;
8c411768
BC
2046};
2047
fc4c4fdd
VS
2048module = {
2049 name = gfxterm_background;
2050 common = term/gfxterm_background.c;
2051};
2052
8c411768
BC
2053module = {
2054 name = serial;
8427685f 2055 common = term/serial.c;
d84666e6 2056 x86 = term/ns8250.c;
a9c7fd1c 2057 ieee1275 = term/ieee1275/serial.c;
b04b5990 2058 mips_arc = term/arc/serial.c;
a9c7fd1c 2059 efi = term/efi/serial.c;
d84666e6 2060
a9c7fd1c
VS
2061 enable = terminfomodule;
2062 enable = ieee1275;
b04b5990 2063 enable = mips_arc;
d84666e6
BC
2064};
2065
2066module = {
2067 name = sendkey;
2068 i386_pc = commands/i386/pc/sendkey.c;
2069 enable = i386_pc;
8c411768
BC
2070};
2071
2072module = {
8c411768 2073 name = terminfo;
8427685f
BC
2074 common = term/terminfo.c;
2075 common = term/tparm.c;
ee74fa48 2076 enable = terminfomodule;
8c411768
BC
2077};
2078
2079module = {
2080 name = usb_keyboard;
8427685f 2081 common = term/usb_keyboard.c;
eefe8abd 2082 enable = usb;
8c411768
BC
2083};
2084
2085module = {
2086 name = vga;
9fc9ce37 2087 common = video/i386/pc/vga.c;
911bd640 2088 enable = i386_pc;
8c411768
BC
2089};
2090
2091module = {
2092 name = vga_text;
16bd6cfa 2093 common = term/i386/pc/vga_text.c;
16bd6cfa 2094 enable = i386_pc;
8c411768
BC
2095};
2096
c35fc5bd
VS
2097module = {
2098 name = mda_text;
2099 common = term/i386/pc/mda_text.c;
2100 enable = i386_pc;
2101 enable = i386_coreboot_multiboot_qemu;
2102};
2103
297f0c2b
BC
2104module = {
2105 name = video_cirrus;
f7711f5e
BC
2106 x86 = video/cirrus.c;
2107 enable = x86;
297f0c2b
BC
2108};
2109
2110module = {
2111 name = video_bochs;
f7711f5e
BC
2112 x86 = video/bochs.c;
2113 enable = x86;
297f0c2b
BC
2114};
2115
8c411768
BC
2116module = {
2117 name = functional_test;
8427685f
BC
2118 common = tests/lib/functional_test.c;
2119 common = tests/lib/test.c;
8cec7bd4 2120 common = tests/checksums.h;
50361660
VS
2121 common = tests/video_checksum.c;
2122 common = tests/fake_input.c;
2123 common = video/capture.c;
8c411768
BC
2124};
2125
2126module = {
526ef13d 2127 name = exfctest;
8427685f 2128 common = tests/example_functional_test.c;
8c411768
BC
2129};
2130
ede6c968
VS
2131module = {
2132 name = strtoull_test;
2133 common = tests/strtoull_test.c;
2134};
2135
011f8ae8
VS
2136module = {
2137 name = setjmp_test;
2138 common = tests/setjmp_test.c;
2139};
2140
61c22fdf
VS
2141module = {
2142 name = signature_test;
2143 common = tests/signature_test.c;
a5986276 2144 common = tests/signatures.h;
61c22fdf
VS
2145};
2146
04b02857
VS
2147module = {
2148 name = sleep_test;
2149 common = tests/sleep_test.c;
2150};
2151
a388e255
VS
2152module = {
2153 name = xnu_uuid_test;
2154 common = tests/xnu_uuid_test.c;
2155};
2156
41f26e0e
VS
2157module = {
2158 name = pbkdf2_test;
2159 common = tests/pbkdf2_test.c;
2160};
2161
15decd26
VS
2162module = {
2163 name = legacy_password_test;
2164 common = tests/legacy_password_test.c;
b0720b49 2165 enable = i386_pc;
9c062ad4 2166 enable = i386_xen_pvh;
b0720b49
VS
2167 enable = i386_efi;
2168 enable = x86_64_efi;
2169 enable = emu;
2170 enable = xen;
15decd26
VS
2171};
2172
f034fab6
VS
2173module = {
2174 name = div;
2175 common = lib/division.c;
2176 enable = no_softdiv;
2177};
2178
d061fda7
VS
2179module = {
2180 name = div_test;
2181 common = tests/div_test.c;
2182};
2183
064360e6
VS
2184module = {
2185 name = mul_test;
2186 common = tests/mul_test.c;
2187};
2188
2189module = {
2190 name = shift_test;
2191 common = tests/shift_test.c;
2192};
2193
2194module = {
2195 name = cmp_test;
2196 common = tests/cmp_test.c;
2197};
2198
2199module = {
2200 name = ctz_test;
2201 common = tests/ctz_test.c;
2202};
2203
2204module = {
2205 name = bswap_test;
2206 common = tests/bswap_test.c;
2207};
2208
50361660
VS
2209module = {
2210 name = videotest_checksum;
2211 common = tests/videotest_checksum.c;
2212};
2213
c104b6f9
VS
2214module = {
2215 name = gfxterm_menu;
2216 common = tests/gfxterm_menu.c;
2217};
2218
0e7b2e32
VS
2219module = {
2220 name = cmdline_cat_test;
2221 common = tests/cmdline_cat_test.c;
2222};
2223
8c411768
BC
2224module = {
2225 name = bitmap;
8427685f 2226 common = video/bitmap.c;
8c411768
BC
2227};
2228
2229module = {
2230 name = bitmap_scale;
8427685f 2231 common = video/bitmap_scale.c;
8c411768
BC
2232};
2233
2234module = {
2235 name = efi_gop;
6585de4c
VS
2236 efi = video/efi_gop.c;
2237 enable = efi;
8c411768
BC
2238};
2239
2240module = {
2241 name = efi_uga;
6585de4c 2242 efi = video/efi_uga.c;
c18271ed 2243 enable = i386_efi;
2244 enable = x86_64_efi;
8c411768
BC
2245};
2246
2247module = {
8c411768 2248 name = jpeg;
8427685f 2249 common = video/readers/jpeg.c;
8c411768
BC
2250};
2251
2252module = {
8c411768 2253 name = png;
8427685f 2254 common = video/readers/png.c;
8c411768
BC
2255};
2256
2257module = {
8c411768 2258 name = tga;
8427685f 2259 common = video/readers/tga.c;
8c411768
BC
2260};
2261
2262module = {
2263 name = vbe;
9fc9ce37 2264 common = video/i386/pc/vbe.c;
911bd640 2265 enable = i386_pc;
8c411768
BC
2266};
2267
2268module = {
2269 name = video_fb;
8427685f
BC
2270 common = video/fb/video_fb.c;
2271 common = video/fb/fbblit.c;
2272 common = video/fb/fbfill.c;
2273 common = video/fb/fbutil.c;
eefe8abd 2274 enable = videomodules;
8c411768
BC
2275};
2276
2277module = {
2278 name = video;
8427685f 2279 common = video/video.c;
eefe8abd 2280 enable = videomodules;
8c411768
BC
2281};
2282
2283module = {
fc4c4fdd
VS
2284 name = video_colors;
2285 common = video/colors.c;
8c411768
BC
2286};
2287
d178788e 2288module = {
fc4c4fdd
VS
2289 name = ieee1275_fb;
2290 ieee1275 = video/ieee1275.c;
2291 enable = powerpc_ieee1275;
d178788e
VS
2292};
2293
8c411768
BC
2294module = {
2295 name = sdl;
8427685f 2296 emu = video/emu/sdl.c;
911bd640 2297 enable = emu;
8427685f 2298 condition = COND_GRUB_EMU_SDL;
8c411768
BC
2299};
2300
2301module = {
2302 name = datehook;
8427685f 2303 common = hook/datehook.c;
8c411768 2304};
92eb189b 2305
975cffff
VS
2306module = {
2307 name = net;
c0425677 2308 common = net/net.c;
038ec56a 2309 common = net/dns.c;
138eeb36 2310 common = net/bootp.c;
7bb47706
MA
2311 common = net/ip.c;
2312 common = net/udp.c;
3a7af372 2313 common = net/tcp.c;
1367c143 2314 common = net/icmp.c;
a53cf653 2315 common = net/icmp6.c;
7bb47706
MA
2316 common = net/ethernet.c;
2317 common = net/arp.c;
7bb47706
MA
2318 common = net/netbuff.c;
2319};
2320
2321module = {
2322 name = tftp;
2323 common = net/tftp.c;
2324};
2325
80e72236
VS
2326module = {
2327 name = http;
2328 common = net/http.c;
2329};
2330
7bb47706
MA
2331module = {
2332 name = ofnet;
9d22909b 2333 common = net/drivers/ieee1275/ofnet.c;
7bb47706
MA
2334 enable = ieee1275;
2335};
90451bb1 2336
c86c39ab
VS
2337module = {
2338 name = ubootnet;
2339 common = net/drivers/uboot/ubootnet.c;
2340 enable = uboot;
2341};
2342
9d22909b
VS
2343module = {
2344 name = efinet;
2345 common = net/drivers/efi/efinet.c;
2346 enable = efi;
2347};
2348
90451bb1
VS
2349module = {
2350 name = emunet;
70671037 2351 emu = net/drivers/emu/emunet.c;
d8123bfb 2352 enable = emu;
90451bb1 2353};
760a7e5a 2354
92eb189b
VS
2355module = {
2356 name = legacycfg;
2357 common = commands/legacycfg.c;
fff175c7 2358 common = lib/legacy_parse.c;
d6d94820 2359 emu = lib/i386/pc/vesa_modes_table.c;
ec2dd179
VS
2360 i386_efi = lib/i386/pc/vesa_modes_table.c;
2361 x86_64_efi = lib/i386/pc/vesa_modes_table.c;
9612ebc0 2362 xen = lib/i386/pc/vesa_modes_table.c;
ec2dd179 2363
92eb189b 2364 enable = i386_pc;
9c062ad4 2365 enable = i386_xen_pvh;
ec2dd179
VS
2366 enable = i386_efi;
2367 enable = x86_64_efi;
abda0cad 2368 enable = emu;
9612ebc0 2369 enable = xen;
bd960307 2370};
122a9b2c 2371
8f5add13
VS
2372module = {
2373 name = syslinuxcfg;
2374 common = lib/syslinux_parse.c;
2375 common = commands/syslinuxcfg.c;
2376};
2377
928bad47
BC
2378module = {
2379 name = test_blockarg;
2380 common = tests/test_blockarg.c;
47b4c2c3 2381};
06f70117 2382
f0aff67c
SJ
2383module = {
2384 name = xzio;
2385 common = io/xzio.c;
2386 common = lib/xzembed/xz_dec_bcj.c;
2387 common = lib/xzembed/xz_dec_lzma2.c;
2388 common = lib/xzembed/xz_dec_stream.c;
2389 cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed';
ebcecdf1 2390 cflags='-Wno-unreachable-code';
f0aff67c
SJ
2391};
2392
d6beefcf
SJ
2393module = {
2394 name = lzopio;
2395 common = io/lzopio.c;
2396 common = lib/minilzo/minilzo.c;
ebcecdf1 2397 cflags = '$(CFLAGS_POSIX) -Wno-undef -Wno-redundant-decls -Wno-error';
d6beefcf
SJ
2398 cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H';
2399};
2400
06f70117
VS
2401module = {
2402 name = testload;
2403 common = commands/testload.c;
fff175c7 2404};
890c9fa5 2405
9ad7edd0
VS
2406module = {
2407 name = backtrace;
1948a3b7 2408 x86 = lib/i386/backtrace.c;
9c062ad4 2409 i386_xen_pvh = lib/i386/backtrace.c;
9612ebc0
VS
2410 i386_xen = lib/i386/backtrace.c;
2411 x86_64_xen = lib/i386/backtrace.c;
1948a3b7 2412 common = lib/backtrace.c;
c1677cfc 2413 enable = x86;
9c062ad4 2414 enable = i386_xen_pvh;
9612ebc0
VS
2415 enable = i386_xen;
2416 enable = x86_64_xen;
245f4582
VS
2417};
2418
890c9fa5
VS
2419module = {
2420 name = lsapm;
2421 common = commands/i386/pc/lsapm.c;
2422 enable = i386_pc;
2423};
1a9130dd 2424
5aaf2c18
VS
2425module = {
2426 name = keylayouts;
2427 common = commands/keylayouts.c;
fc4c4fdd 2428 enable = x86;
5aaf2c18 2429};
c5dc1690 2430
4db34616
VS
2431module = {
2432 name = priority_queue;
2433 common = lib/priority_queue.c;
2434};
2435
5ff1d945
VS
2436module = {
2437 name = time;
2438 common = commands/time.c;
2439};
99cecb4f 2440
c5dc1690
SJ
2441module = {
2442 name = cacheinfo;
2443 common = commands/cacheinfo.c;
2444 condition = COND_ENABLE_CACHE_STATS;
2445};
9a8d32a2 2446
e744219b
VS
2447module = {
2448 name = boottime;
2449 common = commands/boottime.c;
2450 condition = COND_ENABLE_BOOT_TIME_STATS;
2451};
2452
9a8d32a2
SJ
2453module = {
2454 name = adler32;
2455 common = lib/adler32.c;
2456};
158dc1ea
VS
2457
2458module = {
2459 name = crc64;
2460 common = lib/crc64.c;
2461};
22c7ce85 2462
5e3b8dcb
VS
2463module = {
2464 name = mpi;
2465 common = lib/libgcrypt-grub/mpi/mpiutil.c;
2466 common = lib/libgcrypt-grub/mpi/mpi-bit.c;
2467 common = lib/libgcrypt-grub/mpi/mpi-add.c;
2468 common = lib/libgcrypt-grub/mpi/mpi-mul.c;
2469 common = lib/libgcrypt-grub/mpi/mpi-mod.c;
2470 common = lib/libgcrypt-grub/mpi/mpi-gcd.c;
2471 common = lib/libgcrypt-grub/mpi/mpi-div.c;
2472 common = lib/libgcrypt-grub/mpi/mpi-cmp.c;
2473 common = lib/libgcrypt-grub/mpi/mpi-inv.c;
2474 common = lib/libgcrypt-grub/mpi/mpi-pow.c;
2475 common = lib/libgcrypt-grub/mpi/mpi-mpow.c;
2476 common = lib/libgcrypt-grub/mpi/mpih-lshift.c;
2477 common = lib/libgcrypt-grub/mpi/mpih-mul.c;
2478 common = lib/libgcrypt-grub/mpi/mpih-mul1.c;
2479 common = lib/libgcrypt-grub/mpi/mpih-mul2.c;
2480 common = lib/libgcrypt-grub/mpi/mpih-mul3.c;
2481 common = lib/libgcrypt-grub/mpi/mpih-add1.c;
2482 common = lib/libgcrypt-grub/mpi/mpih-sub1.c;
2483 common = lib/libgcrypt-grub/mpi/mpih-div.c;
2484 common = lib/libgcrypt-grub/mpi/mpicoder.c;
2485 common = lib/libgcrypt-grub/mpi/mpih-rshift.c;
4a9950ec 2486 common = lib/libgcrypt-grub/mpi/mpi-inline.c;
5e3b8dcb
VS
2487 common = lib/libgcrypt_wrap/mem.c;
2488
2489 cflags = '$(CFLAGS_GCRY) -Wno-redundant-decls -Wno-sign-compare';
2490 cppflags = '$(CPPFLAGS_GCRY)';
2491};
2492
22c7ce85
VS
2493module = {
2494 name = all_video;
2495 common = lib/fake_module.c;
2496};
ff27c3dd 2497
66d6a793
LK
2498module = {
2499 name = gdb;
2500 common = gdb/cstub.c;
2501 common = gdb/gdb.c;
2502 i386 = gdb/i386/idt.c;
2503 i386 = gdb/i386/machdep.S;
2504 i386 = gdb/i386/signal.c;
2505 enable = i386;
ff27c3dd
LK
2506};
2507
fa292343
B
2508module = {
2509 name = testspeed;
2510 common = commands/testspeed.c;
2511};
3d46c22f 2512
d6ca0a90
MG
2513module = {
2514 name = tpm;
2515 common = commands/tpm.c;
2516 efi = commands/efi/tpm.c;
cc6bd49a 2517 enable = efi;
d6ca0a90
MG
2518};
2519
3d46c22f
BC
2520module = {
2521 name = tr;
2522 common = commands/tr.c;
2523};
84a0e969
PFS
2524
2525module = {
2526 name = progress;
2527 common = lib/progress.c;
2528};
ec824e0f
VS
2529
2530module = {
2531 name = file;
2532 common = commands/file.c;
2533 common = commands/file32.c;
2534 common = commands/file64.c;
2535 extra_dist = commands/fileXX.c;
2536 common = loader/i386/xen_file.c;
2537 common = loader/i386/xen_file32.c;
2538 common = loader/i386/xen_file64.c;
2539 extra_dist = loader/i386/xen_fileXX.c;
2540};
46f5d513
JDF
2541module = {
2542 name = rdmsr;
2543 common = commands/i386/rdmsr.c;
2544 enable = x86;
2545};
2546module = {
2547 name = wrmsr;
2548 common = commands/i386/wrmsr.c;
2549 enable = x86;
2550};