summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2005-08-25 04:59:49 +0000
committerReid Spencer <rspencer@reidspencer.com>2005-08-25 04:59:49 +0000
commitca739c685b963b103ae2d201e038ac37e7af4b29 (patch)
tree142422dd7aefaadccc5624e55c383e129d17e667 /Makefile
parent2fe76e58eb734a09ec08ea006a32700572ffc0ca (diff)
downloadllvm-ca739c685b963b103ae2d201e038ac37e7af4b29.tar.gz
llvm-ca739c685b963b103ae2d201e038ac37e7af4b29.tar.bz2
llvm-ca739c685b963b103ae2d201e038ac37e7af4b29.tar.xz
For PR614:
Move the implementation of the fix from Makefile.rules to Makefile. This ensures that it is only checked on a top-level rebuild, and not in every single subdirectory. This removes some annoying messages from the build and numerous executions of config.status if the .in file changes but not substantively enough to cause the .h file to be modified by config.status. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23039 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile18
1 files changed, 18 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 818128e8d7..b474a3a067 100644
--- a/Makefile
+++ b/Makefile
@@ -51,3 +51,21 @@ dist-hook::
tools-only: all
libs-only: all
+
+#------------------------------------------------------------------------
+# Make sure the generated headers are up-to-date. This must be kept in
+# sync with the AC_CONFIG_HEADER invocations in autoconf/configure.ac
+#------------------------------------------------------------------------
+FilesToConfig := \
+ include/llvm/Config/config.h \
+ include/llvm/Support/DataTypes.h \
+ include/llvm/ADT/hash_map \
+ include/llvm/ADT/hash_set \
+ include/llvm/ADT/iterator
+FilesToConfigPATH := $(addprefix $(LLVM_OBJ_ROOT)/,$(FilesToConfig))
+
+all-local:: $(FilesToConfigPATH)
+$(FilesToConfigPATH) : $(LLVM_OBJ_ROOT)/% : $(LLVM_SRC_ROOT)/%.in
+ $(Echo) Regenerating $*
+ $(Verb) cd $(LLVM_OBJ_ROOT) && $(ConfigStatusScript) $*
+.PRECIOUS: $(FilesToConfigPATH)