diff --git a/Makefile.in b/Makefile.in index 25acce7..9d7ce62 100644 --- a/Makefile.in +++ b/Makefile.in @@ -97,6 +97,7 @@ LIBCURSES = @LIBCURSES@ LIBUSB = @LIBUSB@ YACC = @YACC@ UNIFONT_BDF = @UNIFONT_BDF@ +TRUE=true # Options. enable_grub_emu = @enable_grub_emu@ @@ -134,12 +135,8 @@ MAINTAINER_CLEANFILES = $(srcdir)/configure $(addprefix $(srcdir)/,$(MKFILES)) all: all-local ### Include an arch-specific Makefile. -$(addprefix $(srcdir)/,$(MKFILES)): %.mk: %.rmk genmk.rb - if test "x$(RUBY)" = x; then \ - touch $@; \ - else \ - $(RUBY) $(srcdir)/genmk.rb < $< > $@; \ - fi +$(addprefix $(srcdir)/,$(MKFILES)): %.mk: %.rmk + cat $< > $@; \ include $(srcdir)/conf/$(target_cpu)-$(platform).mk diff --git a/autogen.sh b/autogen.sh index 6895de2..15e291b 100755 --- a/autogen.sh +++ b/autogen.sh @@ -6,7 +6,7 @@ autoconf autoheader echo timestamp > stamp-h.in for rmk in conf/*.rmk; do - ruby genmk.rb < $rmk > `echo $rmk | sed 's/\.rmk$/.mk/'` + cat $rmk > `echo $rmk | sed 's/\.rmk$/.mk/'` done ./gendistlist.sh > DISTLIST diff --git a/conf/common.rmk b/conf/common.rmk index 032517f..ab5a8c5 100644 --- a/conf/common.rmk +++ b/conf/common.rmk @@ -4,11 +4,14 @@ bin_UTILITIES += grub-mkelfimage grub_mkelfimage_SOURCES = util/elf/grub-mkimage.c util/misc.c \ util/resolve.c -util/elf/grub-mkimage.c_DEPENDENCIES = Makefile +util/elf/grub-mkimage.c: Makefile + $(TRUE) # For grub-probe. sbin_UTILITIES += grub-probe -util/grub-probe.c_DEPENDENCIES = grub_probe_init.h +util/grub-probe.c.dep: grub_probe_init.h + $(TRUE) + grub_probe_SOURCES = util/grub-probe.c \ util/hostdisk.c util/misc.c util/getroot.c \ kern/device.c kern/disk.c kern/err.c kern/misc.c \ @@ -28,7 +31,9 @@ bin_UTILITIES += grub-fstest endif # For grub-fstest. -util/grub-fstest.c_DEPENDENCIES = grub_fstest_init.h +util/grub-fstest.c.dep: grub_fstest_init.h + $(TRUE) + grub_fstest_SOURCES = util/grub-fstest.c util/hostfs.c util/misc.c \ kern/file.c kern/device.c kern/disk.c kern/err.c kern/misc.c \ disk/host.c disk/loopback.c kern/list.c kern/command.c \ @@ -136,21 +141,15 @@ grub_macho2img_SOURCES = util/grub-macho2img.c CLEANFILES += grub-macho2img # For grub-mkconfig -grub-mkconfig: util/grub-mkconfig.in config.status - ./config.status --file=$@:$< - chmod +x $@ +grub_mkconfig_SOURCES = util/grub-mkconfig.in sbin_SCRIPTS += grub-mkconfig CLEANFILES += grub-mkconfig -grub-mkconfig_lib: util/grub-mkconfig_lib.in config.status - ./config.status --file=$@:$< - chmod +x $@ +grub_mkconfig_lib_SOURCES = util/grub-mkconfig_lib.in lib_SCRIPTS += grub-mkconfig_lib CLEANFILES += grub-mkconfig_lib -update-grub_lib: util/update-grub_lib.in config.status - ./config.status --file=$@:$< - chmod +x $@ +update_grub_lib_SOURCES = util/update-grub_lib.in lib_SCRIPTS += update-grub_lib CLEANFILES += update-grub_lib @@ -167,9 +166,7 @@ CLEANFILES += $(grub-mkconfig_SCRIPTS) grub-mkconfig_DATA += util/grub.d/README # For grub-dumpbios -grub-dumpbios: util/grub-dumpbios.in config.status - ./config.status --file=$@:$< - chmod +x $@ +grub_dumpbios_SOURCES = util/grub-dumpbios.in sbin_SCRIPTS += grub-dumpbios CLEANFILES += grub-dumpbios @@ -607,3 +604,198 @@ pkglib_MODULES += setjmp.mod setjmp_mod_SOURCES = lib/$(target_cpu)/setjmp.S setjmp_mod_ASFLAGS = $(COMMON_ASFLAGS) setjmp_mod_LDFLAGS = $(COMMON_LDFLAGS) + + +.PHONY: %.dep + +%.dep: + $(TRUE) + +define UTILITY_template +$(1): $$($(2)_DEPENDENCIES) $$(addsuffix .obj_$(2),$$($(2)_SOURCES)) + $(CC) -o $$@ $$(addsuffix .obj_$(2),$$($(2)_SOURCES)) $$(LDFLAGS) $$($(2)_LDFLAGS) + +%.obj_$(2): % %.dep + $$(CC) $$(CPPFLAGS) $$(CFLAGS) -DGRUB_UTIL=1 $$($(2)_CFLAGS) -MD -c -o $$@ $$< + +CLEANFILES += $$(addsuffix .obj-$(2),$$($(2)_SOURCES)) +CLEANFILES += $$(addsuffix $$(EXEEXT),$(1)) + +MOSTLYCLEANFILES += $$(addsuffix .d,$$($(2)_SOURCES)) +endef + +$(foreach util,$(bin_UTILITIES),$(eval $(call UTILITY_template,$(util),$(subst -,_,$(subst .,_,$(util)))))) +$(foreach util,$(sbin_UTILITIES),$(eval $(call UTILITY_template,$(util),$(subst -,_,$(subst .,_,$(util)))))) + +define PROGRAM_template +$(1): $$($(2)_DEPENDENCIES) $$(addsuffix .obj_$(2),$$($(2)_SOURCES)) + $(TARGET_CC) -o $$@ $$(addsuffix .obj_$(2),$$($(2)_SOURCES)) $$(TARGET_LDFLAGS) $$($(2)_LDFLAGS) + +%.c.obj_$(2): %.c %.c.dep + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_CFLAGS) $$($(2)_CFLAGS) -MD -c -o $$@ $$< + +%.S.obj_$(2): %.S %.S.dep + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_ASFLAGS) $$($(2)_ASFLAGS) -MD -c -o $$@ $$< + +CLEANFILES += $$(addsuffix .obj-$(2),$$($(2)_SOURCES)) +CLEANFILES += $(1) + +MOSTLYCLEANFILES += $$(addsuffix .d,$$($(2)_SOURCES)) +endef + +$(foreach prog,$(pkglib_PROGRAMS),$(eval $(call PROGRAM_template,$(prog),$(subst -,_,$(subst .,_,$(prog)))))) + +define IMAGE_template +CLEANFILES += $(1) $(1).exec $$(addsuffix .obj-$(2),$$($(2)_SOURCES)) +MOSTLYCLEANFILES += $$(addsuffix .d,$$($(2)_SOURCES)) + +ifneq ($$(TARGET_APPLE_CC),1) +$(1): $(1).exec $$($(2)_DEPENDENCIES) + $$(OBJCOPY) -O $$($(2)_FORMAT) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id $$< $$@ +else +ifneq ($(1),kernel.img) +$(1): $(1).exec $$($(2)_DEPENDENCIES) ./grub-macho2img + ./grub-macho2img $$< $$@ +else + +$(1): $(1).exec $$($(2)_DEPENDENCIES) ./grub-macho2img + ./grub-macho2img --bss $$< $$@ +endif +endif + + +$(1).exec: $$($(2)_DEPENDENCIES) $$(addsuffix .obj_$(2),$$($(2)_SOURCES)) + $$(TARGET_CC) -o $$@ $$(addsuffix .obj_$(2),$$($(2)_SOURCES)) $$(TARGET_LDFLAGS) $$($(2)_LDFLAGS) + +%.c.obj_$(2): %.c %.c.dep + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_CFLAGS) $$($(2)_CFLAGS) -MD -c -o $$@ $$< + +%.S.obj_$(2): %.S %.S.dep + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_ASFLAGS) -DASM_FILE=1 $$($(2)_ASFLAGS) -MD -c -o $$@ $$< + +endef + +$(foreach image,$(pkglib_IMAGES),$(eval $(call IMAGE_template,$(image),$(subst -,_,$(subst .,_,$(image)))))) + +define SCRIPT_template +CLEANFILES += $(1) + +$(1): $$($(2)_SOURCES) $$($(2)_DEPENDENCIES) config.status + ./config.status --file=$$@:$$< + chmod +x $$@ +endef + +$(foreach script,$(bin_SCRIPTS),$(eval $(call SCRIPT_template,$(script),$(subst -,_,$(subst .,_,$(script)))))) +$(foreach script,$(sbin_SCRIPTS),$(eval $(call SCRIPT_template,$(script),$(subst -,_,$(subst .,_,$(script)))))) +$(foreach script,$(lib_SCRIPTS),$(eval $(call SCRIPT_template,$(script),$(subst -,_,$(subst .,_,$(script)))))) + +define MODULE_template +CLEANFILES += $(1) mod-$(2).o mod-$(2).c pre-$(2).o pre-$(2).c mod-$(2).o und-$(2).lst +ifneq ($$($(2)_EXPORTS),no) +CLEANFILES += def-$(2).lst +DEFSYMFILES += def-$(2).lst +endif +MOSTLYCLEANFILES += $$(addsuffix .d,$$($(2)_SOURCES)) +UNDSYMFILES += und-$(2).lst + +ifneq ($$(TARGET_APPLE_CC),1) +$(1): pre-$(2).o mod-$(2).o $(TARGET_OBJ2ELF) + -rm -f $$@ + $$(TARGET_CC) $$($(2)_LDFLAGS) $$(TARGET_LDFLAGS) -Wl,-r,-d -o $$@ pre-$(2).o mod-$(2).o + if test ! -z $$(TARGET_OBJ2ELF); then ./$$(TARGET_OBJ2ELF) $$@ || (rm -f $$@; exit 1); fi + $(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -K _grub_mod_init -K _grub_mod_fini -R .note -R .comment $$@ +else +$(1): pre-$(2).o mod-$(2).o + -rm -f $$@ + -rm -f address@hidden + $$(TARGET_CC) $$($(2)_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o address@hidden pre-$(2).o mod-$(2).o + $(OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -wd1106 -nu -nd address@hidden $$@ + -rm -f address@hidden +endif + +pre-$(2).o: $$($(2)_DEPENDENCIES) $$(addsuffix .obj_$(2),$$($(2)_SOURCES)) + -rm -f $$@ + $$(TARGET_CC) $$($(2)_LDFLAGS) $(TARGET_LDFLAGS) -Wl,-r,-d -o $$@ $$(addsuffix .obj_$(2),$$($(2)_SOURCES)) + +mod-$(2).o: mod-$(2).c + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_CFLAGS) $$($(2)_CFLAGS) -c -o $$@ $$< + +mod-$(2).c: $$(builddir)/moddep.lst $$(srcdir)/genmodsrc.sh + sh $$(srcdir)/genmodsrc.sh "$$(subst .mod,,$(1))" $$< > $$@ || (rm -f $$@; exit 1) + +ifneq ($$($(2)_EXPORTS),no) +ifneq ($(TARGET_APPLE_CC),1) +def-$(2).lst: pre-$(2).o + $(NM) -g --defined-only -P -p $$< | sed "s/^\\([^ ]*\\).*/\\1 $$(subst .mod,,$(1))/" > $$@ +else +def-$(2).lst: pre-$(2).o + $(NM) -g -P -p $$< | grep -E '^[a-zA-Z0-9_]* [TDS]' | sed 's/^\\([^ ]*\\).*/\\1 $$(subst .mod,,$(1))/' > $$@ +endif +endif + +und-$(2).lst: pre-$(2).o + echo '$$(subst .mod,,$(1))' > $$@ + $$(NM) -u -P -p $$< | cut -f1 -d' ' >> $$@ + +%.c.obj_$(2): %.c %.c.dep + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_CFLAGS) $$($(2)_CFLAGS) -MD -c -o $$@ $$< + +%.S.obj_$(2): %.S %.S.dep + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_ASFLAGS) -DASM_FILE=1 $$($(2)_ASFLAGS) -MD -c -o $$@ $$< + +CLEANFILES += $$(addsuffix .cmd.lst_$(2),$$($(2)_SOURCES)) \ + $$(addsuffix .fs.lst_$(2),$$($(2)_SOURCES)) \ + $$(addsuffix .parttool.lst_$(2),$$($(2)_SOURCES)) \ + $$(addsuffix .partmap.lst_$(2),$$($(2)_SOURCES)) \ + $$(addsuffix .handler.lst_$(2),$$($(2)_SOURCES)) \ + $$(addsuffix .obj_$(2),$$($(2)_SOURCES)) + +COMMANDFILES += $$(addsuffix .cmd.lst_$(2),$$($(2)_SOURCES)) +FSFILES += $$(addsuffix .fs.lst_$(2),$$($(2)_SOURCES)) +PARTTOOLFILES += $$(addsuffix .parttool.lst_$(2),$$($(2)_SOURCES)) +PARTMAPFILES += $$(addsuffix .partmap.lst_$(2),$$($(2)_SOURCES)) +HANDLERFILES += $$(addsuffix .handler.lst_$(2),$$($(2)_SOURCES)) + +%.c.cmd.lst_$(2): %.c %.c.dep gencmdlist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_CFLAGS) $$($(2)_CFLAGS) -E $$< \ + | sh $(srcdir)/gencmdlist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +%.S.cmd.lst_$(2): %.S %.S.dep gencmdlist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_ASFLAGS) -DASM_FILE=1 $$($(2)_ASFLAGS) -E $$< \ + | sh $(srcdir)/gencmdlist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +%.c.fs.lst_$(2): %.c %.c.dep genfslist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_CFLAGS) $$($(2)_CFLAGS) -E $$< \ + | sh $(srcdir)/genfslist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +%.S.fs.lst_$(2): %.S %.S.dep genfslist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_ASFLAGS) -DASM_FILE=1 $$($(2)_ASFLAGS) -E $$< \ + | sh $(srcdir)/genfslist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +%.c.parttool.lst_$(2): %.c %.c.dep genparttoollist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_CFLAGS) $$($(2)_CFLAGS) -E $$< \ + | sh $(srcdir)/genparttoollist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +%.S.parttool.lst_$(2): %.S %.S.dep genparttoollist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_ASFLAGS) -DASM_FILE=1 $$($(2)_ASFLAGS) -E $$< \ + | sh $(srcdir)/genparttoollist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +%.c.partmap.lst_$(2): %.c %.c.dep genpartmaplist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_CFLAGS) $$($(2)_CFLAGS) -E $$< \ + | sh $(srcdir)/genpartmaplist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +%.S.partmap.lst_$(2): %.S %.S.dep genpartmaplist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_ASFLAGS) -DASM_FILE=1 $$($(2)_ASFLAGS) -E $$< \ + | sh $(srcdir)/genpartmaplist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +%.c.handler.lst_$(2): %.c %.c.dep genhandlerlist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_CFLAGS) $$($(2)_CFLAGS) -E $$< \ + | sh $(srcdir)/genhandlerlist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +%.S.handler.lst_$(2): %.S %.S.dep genhandlerlist.sh + $$(TARGET_CC) $$(TARGET_CPPFLAGS) $$(TARGET_ASFLAGS) -DASM_FILE=1 $$($(2)_ASFLAGS) -E $$< \ + | sh $(srcdir)/genhandlerlist.sh $$(subst .mod,,$(1)) > $$@ || (rm -f $$@; exit 1) + +endef + +$(foreach mod,$(pkglib_MODULES),$(eval $(call MODULE_template,$(mod),$(subst -,_,$(subst .,_,$(mod)))))) diff --git a/conf/i386-coreboot.rmk b/conf/i386-coreboot.rmk index 7ba5737..c57680c 100644 --- a/conf/i386-coreboot.rmk +++ b/conf/i386-coreboot.rmk @@ -5,7 +5,8 @@ COMMON_CFLAGS = -fno-builtin -mrtd -mregparm=3 -m32 COMMON_LDFLAGS = -m32 -nostdlib # Used by various components. These rules need to precede them. -script/sh/lexer.c_DEPENDENCIES = grub_script.tab.h +script/sh/lexer.c.dep: grub_script.tab.h + $(TRUE) # Images. @@ -104,7 +105,9 @@ grub_mkdevicemap_SOURCES = util/grub-mkdevicemap.c util/deviceiter.c \ util/devicemap.c util/misc.c # For grub-emu. -util/grub-emu.c_DEPENDENCIES = grub_emu_init.h +util/grub-emu.c.dep: grub_emu_init.h + $(TRUE) + grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \ commands/configfile.c commands/echo.c commands/help.c \ commands/handler.c commands/ls.c commands/test.c \ diff --git a/conf/i386-efi.rmk b/conf/i386-efi.rmk index 9177b9d..1e38488 100644 --- a/conf/i386-efi.rmk +++ b/conf/i386-efi.rmk @@ -5,7 +5,8 @@ COMMON_CFLAGS = -fno-builtin -m32 COMMON_LDFLAGS = -melf_i386 -nostdlib # Used by various components. These rules need to precede them. -script/sh/lexer.c_DEPENDENCIES = grub_script.tab.h +script/sh/lexer.c.dep: grub_script.tab.h + $(TRUE) # Utilities. bin_UTILITIES = grub-mkimage @@ -17,7 +18,8 @@ sbin_UTILITIES = grub-mkdevicemap # For grub-mkimage. grub_mkimage_SOURCES = util/i386/efi/grub-mkimage.c util/misc.c \ util/resolve.c -util/i386/efi/grub-mkimage.c_DEPENDENCIES = Makefile +util/i386/efi/grub-mkimage.c.dep: Makefile + $(TRUE) # For grub-setup. #grub_setup_SOURCES = util/i386/pc/grub-setup.c util/hostdisk.c \ @@ -32,7 +34,8 @@ grub_mkdevicemap_SOURCES = util/grub-mkdevicemap.c util/deviceiter.c \ util/devicemap.c util/misc.c # For grub-emu. -util/grub-emu.c_DEPENDENCIES = grub_emu_init.h +util/grub-emu.c.dep: grub_emu_init.h + $(TRUE) grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \ commands/configfile.c commands/help.c \ commands/handler.c commands/ls.c commands/test.c \ diff --git a/conf/i386-ieee1275.rmk b/conf/i386-ieee1275.rmk index 0321979..98e4de7 100644 --- a/conf/i386-ieee1275.rmk +++ b/conf/i386-ieee1275.rmk @@ -5,7 +5,8 @@ COMMON_CFLAGS = -ffreestanding -mrtd -mregparm=3 COMMON_LDFLAGS = -nostdlib # Used by various components. These rules need to precede them. -script/sh/lexer.c_DEPENDENCIES = grub_script.tab.h +script/sh/lexer.c.dep: grub_script.tab.h + $(TRUE) # Images. pkglib_PROGRAMS = kernel.img @@ -58,7 +59,8 @@ grub_mkdevicemap_SOURCES = util/grub-mkdevicemap.c util/deviceiter.c \ util/devicemap.c util/misc.c # For grub-emu. -util/grub-emu.c_DEPENDENCIES = grub_emu_init.h +util/grub-emu.c.dep: grub_emu_init.h + $(TRUE) grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \ commands/configfile.c commands/echo.c commands/help.c \ commands/handler.c commands/ls.c commands/test.c \ diff --git a/conf/i386-pc.rmk b/conf/i386-pc.rmk index 798aee2..d5ad6a1 100644 --- a/conf/i386-pc.rmk +++ b/conf/i386-pc.rmk @@ -7,7 +7,8 @@ COMMON_CFLAGS = -fno-builtin -mrtd -mregparm=3 -m32 COMMON_LDFLAGS = -m32 -nostdlib # Used by various components. These rules need to precede them. -script/sh/lexer.c_DEPENDENCIES = grub_script.tab.h +script/sh/lexer.c.dep: grub_script.tab.h + $(TRUE) # Images. pkglib_IMAGES = boot.img diskboot.img kernel.img pxeboot.img cdboot.img @@ -92,10 +93,13 @@ endif grub_mkimage_SOURCES = util/i386/pc/grub-mkimage.c util/misc.c \ util/resolve.c lib/LzmaEnc.c lib/LzFind.c grub_mkimage_CFLAGS = -DGRUB_KERNEL_MACHINE_LINK_ADDR=$(GRUB_KERNEL_MACHINE_LINK_ADDR) -util/i386/pc/grub-mkimage.c_DEPENDENCIES = Makefile +util/i386/pc/grub-mkimage.c.dep: Makefile + $(TRUE) # For grub-setup. -util/i386/pc/grub-setup.c_DEPENDENCIES = grub_setup_init.h +util/i386/pc/grub-setup.c.dep: grub_setup_init.h + $(TRUE) + grub_setup_SOURCES = util/i386/pc/grub-setup.c util/hostdisk.c \ util/misc.c util/getroot.c kern/device.c kern/disk.c \ kern/err.c kern/misc.c kern/parser.c kern/partition.c \ @@ -117,7 +121,8 @@ grub_mkdevicemap_SOURCES = util/grub-mkdevicemap.c util/deviceiter.c \ util/devicemap.c util/misc.c # For grub-emu. -util/grub-emu.c_DEPENDENCIES = grub_emu_init.h +util/grub-emu.c.dep: grub_emu_init.h + $(TRUE) grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \ commands/configfile.c commands/echo.c commands/help.c \ commands/handler.c commands/ls.c commands/test.c \ diff --git a/conf/powerpc-ieee1275.rmk b/conf/powerpc-ieee1275.rmk index af29d23..b5d3f13 100644 --- a/conf/powerpc-ieee1275.rmk +++ b/conf/powerpc-ieee1275.rmk @@ -6,7 +6,8 @@ COMMON_CFLAGS = -ffreestanding COMMON_LDFLAGS += -nostdlib # Used by various components. These rules need to precede them. -script/sh/lexer.c_DEPENDENCIES = grub_script.tab.h +script/sh/lexer.c.dep: grub_script.tab.h + $(TRUE) # Images. @@ -39,7 +40,8 @@ grub_mkdevicemap_SOURCES = util/grub-mkdevicemap.c util/deviceiter.c \ util/devicemap.c util/misc.c # For grub-emu -util/grub-emu.c_DEPENDENCIES = grub_emu_init.h +util/grub-emu.c.dep: grub_emu_init.h + $(TRUE) grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \ commands/configfile.c commands/help.c \ commands/search.c commands/handler.c commands/test.c \ diff --git a/conf/sparc64-ieee1275.rmk b/conf/sparc64-ieee1275.rmk index aabccee..d2977b9 100644 --- a/conf/sparc64-ieee1275.rmk +++ b/conf/sparc64-ieee1275.rmk @@ -6,7 +6,8 @@ COMMON_CFLAGS = -ffreestanding -m64 -mno-app-regs COMMON_LDFLAGS = -melf64_sparc -nostdlib -mno-relax # Used by various components. These rules need to precede them. -script/sh/lexer.c_DEPENDENCIES = grub_script.tab.h +script/sh/lexer.c.dep: grub_script.tab.h + $(TRUE) # Images. pkglib_IMAGES = boot.img diskboot.img kernel.img @@ -69,7 +70,9 @@ grub_mkimage_SOURCES = util/sparc64/ieee1275/grub-mkimage.c util/misc.c \ util/resolve.c # For grub-setup. -util/sparc64/ieee1275/grub-setup.c_DEPENDENCIES = grub_setup_init.h +util/sparc64/ieee1275/grub-setup.c.dep: grub_setup_init.h + $(TRUE) + grub_setup_SOURCES = util/sparc64/ieee1275/grub-setup.c util/hostdisk.c \ util/misc.c util/getroot.c kern/device.c kern/disk.c \ kern/err.c kern/misc.c kern/parser.c kern/partition.c \ @@ -96,7 +99,9 @@ grub_ofpathname_SOURCES = util/sparc64/ieee1275/grub-ofpathname.c \ util/ieee1275/ofpath.c util/misc.c # For grub-emu -util/grub-emu.c_DEPENDENCIES = grub_emu_init.h +util/grub-emu.c.dep: grub_emu_init.h + $(TRUE) + grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \ commands/configfile.c commands/help.c \ commands/search.c commands/handler.c commands/test.c \ diff --git a/conf/x86_64-efi.rmk b/conf/x86_64-efi.rmk index 21da0e1..ac1a230 100644 --- a/conf/x86_64-efi.rmk +++ b/conf/x86_64-efi.rmk @@ -5,7 +5,8 @@ COMMON_CFLAGS = -fno-builtin -m64 COMMON_LDFLAGS = -melf_x86_64 -nostdlib # Used by various components. These rules need to precede them. -script/sh/lexer.c_DEPENDENCIES = grub_script.tab.h +script/sh/lexer.c.dep: grub_script.tab.h + $(TRUE) # Utilities. bin_UTILITIES = grub-mkimage @@ -30,7 +31,9 @@ grub_mkimage_SOURCES = util/i386/efi/grub-mkimage.c util/misc.c \ grub_mkdevicemap_SOURCES = util/grub-mkdevicemap.c util/misc.c # For grub-emu. -util/grub-emu.c_DEPENDENCIES = grub_emu_init.h +util/grub-emu.c.dep: grub_emu_init.h + $(TRUE) + grub_emu_SOURCES = commands/minicmd.c commands/cat.c commands/cmp.c \ commands/configfile.c commands/help.c \ commands/handler.c commands/ls.c commands/test.c \