# HG changeset patch
# User Hollis Blanchard <hollisb@xxxxxxxxxx>
# Node ID b58670602d35b2900a19e85c0f79e5aae2b6afdc
# Parent 020fc58ba873f300d89cdd3345027d9e81bca3f0
[POWERPC][XEN] Builtin cmdline dependency rule
Rebuild cmdline.o when the user changes the CMDLINE=X argument passed to
the make invocation. I couldn't find an example of another project that
handles this case properly, so I came up with this.
Signed-off-by: Amos Waterland <apw@xxxxxxxxxx>
Signed-off-by: Hollis Blanchard <hollisb@xxxxxxxxxx>
---
.hgignore | 1 +
xen/arch/powerpc/Makefile | 16 +++++++++++++++-
2 files changed, 16 insertions(+), 1 deletion(-)
diff -r 020fc58ba873 -r b58670602d35 .hgignore
--- a/.hgignore Wed Oct 04 17:27:16 2006 -0500
+++ b/.hgignore Thu Oct 05 15:48:26 2006 -0500
@@ -222,6 +222,7 @@
^xen/arch/powerpc/xen\.lds$
^xen/arch/powerpc/.xen-syms$
^xen/arch/powerpc/xen-syms.S$
+^xen/arch/powerpc/cmdline.dep$
^unmodified_drivers/linux-2.6/\.tmp_versions
^unmodified_drivers/linux-2.6/.*\.cmd$
^unmodified_drivers/linux-2.6/.*\.ko$
diff -r 020fc58ba873 -r b58670602d35 xen/arch/powerpc/Makefile
--- a/xen/arch/powerpc/Makefile Wed Oct 04 17:27:16 2006 -0500
+++ b/xen/arch/powerpc/Makefile Thu Oct 05 15:48:26 2006 -0500
@@ -80,6 +80,20 @@ ifneq ($(CMDLINE),)
# The first token in the arguments will be silently dropped.
FULL_CMDLINE := xen $(CMDLINE)
endif
+
+ifeq ($(wildcard cmdline.dep),)
+cmdline.dep:
+ echo $(FULL_CMDLINE) > cmdline.dep
+else
+ifneq ($(FULL_CMDLINE),$(shell cat cmdline.dep))
+cmdline.dep::
+ echo $(FULL_CMDLINE) > cmdline.dep
+else
+cmdline.dep:
+endif
+endif
+
+cmdline.o: cmdline.dep
cmdline.o: CFLAGS += -DCMDLINE="\"$(FULL_CMDLINE)\""
TARGET_OPTS = $(OMAGIC) -Wl,-Ttext,0x400000,-T,xen.lds
@@ -123,4 +137,4 @@ dom0.bin: $(DOM0_IMAGE)
clean::
$(MAKE) -f $(BASEDIR)/Rules.mk -C of_handler clean
- rm -f firmware firmware_image.bin dom0.bin .xen-syms
+ rm -f firmware firmware_image.bin dom0.bin .xen-syms cmdline.dep
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|