Complete the implementation of the spotless rule and make it not depend on
the .. directory.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19012 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Makefile.rules b/Makefile.rules
index 0e618e5..dd0d5c7 100644
--- a/Makefile.rules
+++ b/Makefile.rules
@@ -83,14 +83,20 @@
 
 ifneq ($(BUILD_OBJ_ROOT),$(BUILD_SRC_ROOT))
 spotless:
-	$(Echo) Wiping out $(BUILD_OBJ_ROOT) and rebuilding configuration.
 	$(Verb) if test -x config.status ; then \
-	  $(MV) config.status .. ; \
-	  $(MV) mklib  .. ; \
+	  $(EchoCmd) Wiping out $(BUILD_OBJ_ROOT) ; \
+	  $(MKDIR) .spotless.save ; \
+	  $(MV) config.status .spotless.save ; \
+	  $(MV) mklib  .spotless.save ; \
+	  $(MV) projects  .spotless.save ; \
 	  $(RM) -rf * ; \
-	  $(MV) ../config.status . ; \
-	  $(MV) ../mklib . ; \
-	  ./config.status ; \
+	  $(MV) .spotless.save/config.status . ; \
+	  $(MV) .spotless.save/mklib . ; \
+	  $(MV) .spotless.save/projects . ; \
+	  $(RM) -rf .spotless.save ; \
+	  $(EchoCmd) Rebuilding configuration of $(BUILD_OBJ_ROOT) ; \
+	  $(ConfigStatusScript) --recheck $(ConfigureScriptFLAGS) && \
+	  $(ConfigStatusScript) ; \
 	else \
 	  $(EchoCmd) "make spotless" can only be run from $(BUILD_OBJ_ROOT); \
 	fi