Fix PR2062: Don't build Intrinsics.gen in the source directory. Do it in the
[oota-llvm.git] / lib / VMCore / Makefile
index b0c96e90f30ceeb313b03c8c4cbf6dfe22c2c4e4..59062a18038beb6c808f406de489cc9ea35a90d1 100644 (file)
@@ -1,5 +1,33 @@
+##===- lib/VMCore/Makefile ------------------------------*- Makefile -*-===##
+# 
+#                     The LLVM Compiler Infrastructure
+#
+# This file is distributed under the University of Illinois Open Source
+# License. See LICENSE.TXT for details.
+# 
+##===----------------------------------------------------------------------===##
 LEVEL = ../..
-LIBRARYNAME = vmcore
+LIBRARYNAME = LLVMCore
+BUILD_ARCHIVE = 1
+
+BUILT_SOURCES = $(PROJ_OBJ_ROOT)/include/llvm/Intrinsics.gen
 
 include $(LEVEL)/Makefile.common
 
+GENFILE:=$(PROJ_OBJ_ROOT)/include/llvm/Intrinsics.gen
+
+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) $(call SYSPATH, $(INTRINSICTD)) -o $(call SYSPATH, $@) -gen-intrinsic
+
+$(GENFILE): $(ObjDir)/Intrinsics.gen.tmp
+       $(Verb) $(CMP) -s $@ $< || ( $(CP) $< $@ && \
+         $(EchoCmd) Updated Intrinsics.gen because Intrinsics.gen.tmp \
+           changed significantly. )
+
+install-local:: $(GENFILE)
+       $(Echo) Installing $(PROJ_includedir)/llvm/Intrinsics.gen
+       $(Verb) $(DataInstall) $(GENFILE) $(PROJ_includedir)/llvm/Intrinsics.gen