Now that targets are serialized, introduce
two new convenience targets:

- update: svn update toplevel and try hard
          to locate updatable subdirectories
					using cunning tricks
- happiness: update then build and test

so what one wants to do now is:
  nice gmake --jobs happiness

Have fun!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47716 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Makefile b/Makefile
index 837c2d7..dabf0c0 100644
--- a/Makefile
+++ b/Makefile
@@ -142,7 +142,19 @@
 	fi
 	$(Verb) $(MAKE) tools-only
 
-.PHONY: srpm rpm
+
+
+SVN = svn
+AWK = awk
+SUB-SVN-DIRS = $(AWK) '/\?      / {print $$2}' | xargs $(SVN) info 2>/dev/null | grep "Path: " | $(AWK) '{print $$2}'
+
+update:
+	$(SVN) update
+	@ $(SVN) status | $(SUB-SVN-DIRS) | xargs $(SVN) update
+
+happiness: update all check
+
+.PHONY: srpm rpm update happiness
 
 # declare all targets at this level to be serial: