Fix recursion:
1. Make setting OPTIONAL_DIRS use immediate assignment
2. Include Makefile.config before ifeq tests and then Makefile.rules later
   instead of Makefile.common up front. This ensures that the variable
   values are set before the ifeq statements in Makefile.rules are
   evaluated.
With this, recursion into projects/examples is corrected.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27519 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Makefile b/Makefile
index 8136798..9688879 100644
--- a/Makefile
+++ b/Makefile
@@ -9,7 +9,7 @@
 LEVEL = .
 DIRS = lib/System lib/Support utils lib
 
-include $(LEVEL)/Makefile.common
+include $(LEVEL)/Makefile.config 
 
 ifeq ($(MAKECMDGOALS),tools-only)
   DIRS += tools
@@ -21,12 +21,14 @@
     else
       $(warning Skipping runtime libraries, llvm-gcc 4 detected.)
     endif
+    OPTIONAL_DIRS := examples projects
     DIRS += docs
-    OPTIONAL_DIRS = examples projects
   endif
 endif
 EXTRA_DIST := test llvm.spec include
 
+include $(LLVM_SRC_ROOT)/Makefile.rules
+
 # Specify options to pass to configure script when we're
 # running the dist-check target
 DIST_CHECK_CONFIG_OPTIONS = --with-llvmgccdir=$(LLVMGCCDIR)