Remove a bunch of complex logic that is completely dead: duplicates can
[oota-llvm.git] / lib / VMCore / Makefile
index 69841148b2fc265464ffdd53983fffbcd3cfa4be..01dc08e85e5b22d8cf540237e5c092cbe6f7bdf7 100644 (file)
@@ -8,21 +8,26 @@
 ##===----------------------------------------------------------------------===##
 LEVEL = ../..
 LIBRARYNAME = LLVMCore
+BUILD_ARCHIVE = 1
 
 BUILT_SOURCES = $(PROJ_SRC_ROOT)/include/llvm/Intrinsics.gen
 
-include $(LEVEL)/Makefile.config
-ifeq ($(ARCH),Alpha)
-BUILD_ARCHIVE = 1
-endif
-
 include $(LEVEL)/Makefile.common
 
 GENFILE:=$(PROJ_SRC_ROOT)/include/llvm/Intrinsics.gen
 
-$(GENFILE): $(PROJ_SRC_ROOT)/include/llvm/Intrinsics.td $(TBLGEN)
-       $(Echo) Building Intrinsics.gen from Intrinsics.td
-       $(Verb) $(TableGen) $< -o $@ -gen-intrinsic
+INTRINSICTD  := $(PROJ_SRC_ROOT)/include/llvm/Intrinsics.td
+INTRINSICTDS := $(wildcard $(PROJ_SRC_ROOT)/include/llvm/Intrinsics*.td)
+
+$(ObjDir)/Intrinsics.gen.tmp: $(ObjDir)/.dir $(INTRINSICTDS) $(TBLGEN)
+       $(Echo) Building Intrinsics.gen.tmp from Intrinsics.td
+       $(Verb) $(TableGen) $(INTRINSICTD) -o $@ -gen-intrinsic
+
+$(GENFILE): $(ObjDir)/Intrinsics.gen.tmp
+       $(Verb) $(CMP) -s $@ $< || ( $(CP) $< $@ && \
+         $(EchoCmd) Updated Intrinsics.gen because Intrinsics.gen.tmp \
+           changed significantly. )
 
 install-local:: $(GENFILE)
-       $(DataInstall) $(GENFILE) $(PROJ_includedir)/llvm/Intrinsics.gen
+       $(Echo) Installing $(PROJ_includedir)/llvm/Intrinsics.gen
+       $(Verb) $(DataInstall) $(GENFILE) $(PROJ_includedir)/llvm/Intrinsics.gen