[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] Cache figlet output across builds, and provide src-tarball target



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1208804909 -3600
# Node ID b2e28707ecbb6e198fe098e673004ae8bff5d83b
# Parent  8d20c24238ad21d7fb2457aebe523df2b6779a01
Cache figlet output across builds, and provide src-tarball target
which creates figlet output and then deletes figlet itself (which is
not licensed under GPL).

Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 .hgignore          |    1 +
 Makefile           |    7 +++++++
 xen/Makefile       |   12 ++++++++++--
 xen/tools/Makefile |    4 ++--
 4 files changed, 20 insertions(+), 4 deletions(-)

diff -r 8d20c24238ad -r b2e28707ecbb .hgignore
--- a/.hgignore Mon Apr 21 17:41:29 2008 +0100
+++ b/.hgignore Mon Apr 21 20:08:29 2008 +0100
@@ -243,6 +243,7 @@
 ^tools/xm-test/lib/XmTestLib/config.py$
 ^tools/xm-test/lib/XmTestReport/xmtest.py$
 ^tools/xm-test/tests/.*\.test$
+^xen/\.banner.*$
 ^xen/BLOG$
 ^xen/System.map$
 ^xen/TAGS$
diff -r 8d20c24238ad -r b2e28707ecbb Makefile
--- a/Makefile  Mon Apr 21 17:41:29 2008 +0100
+++ b/Makefile  Mon Apr 21 20:08:29 2008 +0100
@@ -121,6 +121,13 @@ distclean:
 # Linux name for GNU distclean
 .PHONY: mrproper
 mrproper: distclean
+
+# Prepare for source tarball
+.PHONY: src-tarball
+src-tarball: distclean
+       $(MAKE) -C xen .banner
+       rm -rf xen/tools/figlet
+       $(MAKE) -C xen distclean
 
 .PHONY: help
 help:
diff -r 8d20c24238ad -r b2e28707ecbb xen/Makefile
--- a/xen/Makefile      Mon Apr 21 17:41:29 2008 +0100
+++ b/xen/Makefile      Mon Apr 21 20:08:29 2008 +0100
@@ -44,6 +44,7 @@ _clean: delete-unfresh-files
        $(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) clean
        rm -f include/asm *.o $(TARGET)* *~ core
        rm -f include/asm-*/asm-offsets.h
+       [ -d tools/figlet ] && rm -f .banner*
 
 .PHONY: _distclean
 _distclean: clean
@@ -70,8 +71,14 @@ delete-unfresh-files:
                rm -f include/xen/compile.h; \
        fi
 
+.banner: Makefile
+       $(MAKE) -C tools
+       @tools/figlet/figlet -d tools/figlet Xen $(XEN_FULLVERSION) 2>$@2 >$@1
+       @cat $@1 $@2 >$@
+       @rm -f $@1 $@2
+
 # compile.h contains dynamic build info. Rebuilt on every 'make' invocation.
-include/xen/compile.h: include/xen/compile.h.in
+include/xen/compile.h: include/xen/compile.h.in .banner
        @sed -e 's/@@date@@/$(shell LC_ALL=C date)/g' \
            -e 's/@@time@@/$(shell LC_ALL=C date +%T)/g' \
            -e 's/@@whoami@@/$(USER)/g' \
@@ -83,7 +90,8 @@ include/xen/compile.h: include/xen/compi
            -e 's/@@extraversion@@/$(XEN_EXTRAVERSION)/g' \
            -e 's!@@changeset@@!$(shell ((hg parents --template "{date|date} 
{rev}:{node|short}" >/dev/null && hg parents --template "{date|date} 
{rev}:{node|short}") || echo "unavailable") 2>/dev/null)!g' \
            < include/xen/compile.h.in > $@.new
-       tools/figlet/figlet -d tools/figlet Xen $(XEN_FULLVERSION) >> $@.new
+       @grep \" .banner >> $@.new
+       @grep -v \" .banner
        @mv -f $@.new $@
 
 include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
diff -r 8d20c24238ad -r b2e28707ecbb xen/tools/Makefile
--- a/xen/tools/Makefile        Mon Apr 21 17:41:29 2008 +0100
+++ b/xen/tools/Makefile        Mon Apr 21 20:08:29 2008 +0100
@@ -4,12 +4,12 @@ include $(XEN_ROOT)/Config.mk
 
 .PHONY: default
 default:
-       $(MAKE) -C figlet
+       [ -d figlet ] && $(MAKE) -C figlet
        $(MAKE) symbols
 
 .PHONY: clean
 clean:
-       $(MAKE) -C figlet clean
+       [ -d figlet ] && $(MAKE) -C figlet clean
        rm -f *.o symbols
 
 symbols: symbols.c

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.