Option rom makefile fixes
authorPaul Brook <paul@codesourcery.com>
Fri, 31 Jul 2009 12:18:32 +0000 (13:18 +0100)
committerPaul Brook <paul@codesourcery.com>
Fri, 31 Jul 2009 12:19:39 +0000 (13:19 +0100)
Fix toplevel option rom makefile rules.

Signed-off-by: Paul Brook <paul@codesourcery.com>

Makefile
configure
pc-bios/optionrom/Makefile

index c510ff3..d3f999e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -38,7 +38,7 @@ ifdef CONFIG_WIN32
 LIBS+=-lwinmm -lws2_32 -liphlpapi
 endif
 
-build-all: $(TOOLS) $(DOCS) roms recurse-all
+build-all: $(TOOLS) $(DOCS) recurse-all
 
 config-host.mak: configure
 ifneq ($(wildcard config-host.mak),)
@@ -55,7 +55,14 @@ subdir-%:
 $(filter %-softmmu,$(SUBDIR_RULES)): libqemu_common.a
 $(filter %-user,$(SUBDIR_RULES)): libqemu_user.a
 
-recurse-all: $(SUBDIR_RULES)
+
+ROMSUBDIR_RULES=$(patsubst %,romsubdir-%, $(ROMS))
+romsubdir-%:
+       $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C pc-bios/$* V="$(V)" TARGET_DIR="$*/",)
+
+ALL_SUBDIRS=$(TARGET_DIRS) $(patsubst %,pc-bios/%, $(ROMS))
+
+recurse-all: $(SUBDIR_RULES) $(ROMSUBDIR_RULES)
 
 #######################################################################
 # block-obj-y is code used by both qemu system emulation and qemu-img
@@ -220,7 +227,7 @@ clean:
        rm -f slirp/*.o slirp/*.d audio/*.o audio/*.d block/*.o block/*.d
        rm -f qemu-img-cmds.h
        $(MAKE) -C tests clean
-       for d in $(TARGET_DIRS) $(ROMS) libhw32 libhw64; do \
+       for d in $(ALL_SUBDIRS) libhw32 libhw64; do \
        $(MAKE) -C $$d $@ || exit 1 ; \
         done
 
@@ -245,11 +252,6 @@ else
 BLOBS=
 endif
 
-roms:
-       for d in $(ROMS); do \
-       $(MAKE) -C $$d || exit 1 ; \
-        done
-
 install-doc: $(DOCS)
        $(INSTALL_DIR) "$(DESTDIR)$(docdir)"
        $(INSTALL_DATA) qemu-doc.html  qemu-tech.html "$(DESTDIR)$(docdir)"
index 8160bed..36db3b2 100755 (executable)
--- a/configure
+++ b/configure
@@ -1743,7 +1743,7 @@ echo "TOOLS=$tools" >> $config_host_mak
 roms=
 if test \( "$cpu" = "i386" -o "$cpu" = "x86_64" \) -a \
         "$targetos" != "Darwin" ; then
-  roms="pc-bios/optionrom"
+  roms="optionrom"
 fi
 echo "ROMS=$roms" >> $config_host_mak
 
index ace142d..7ddc242 100644 (file)
@@ -1,4 +1,6 @@
 all: build-all
+# Dummy command so that make thinks it has done something
+       @true
 
 include ../../config-host.mak
 include $(SRC_PATH)/rules.mak