diff options
author | Mikhail Glushenkov <foldr@codedgers.com> | 2009-03-02 09:03:36 +0000 |
---|---|---|
committer | Mikhail Glushenkov <foldr@codedgers.com> | 2009-03-02 09:03:36 +0000 |
commit | b14f5b5e9d6a8cc9337a99ff3a31ff2bc1ba2fa0 (patch) | |
tree | 716964a2dcfb6b3c0e3a708cc242733be19ce70d /tools/llvmc/Makefile | |
parent | 95e2aa8967ed7c983b093c1b119afad848962068 (diff) | |
download | external_llvm-b14f5b5e9d6a8cc9337a99ff3a31ff2bc1ba2fa0.zip external_llvm-b14f5b5e9d6a8cc9337a99ff3a31ff2bc1ba2fa0.tar.gz external_llvm-b14f5b5e9d6a8cc9337a99ff3a31ff2bc1ba2fa0.tar.bz2 |
Fix build with objdir != srcdir.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65826 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvmc/Makefile')
-rw-r--r-- | tools/llvmc/Makefile | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/tools/llvmc/Makefile b/tools/llvmc/Makefile index 6096176..f70c4b5 100644 --- a/tools/llvmc/Makefile +++ b/tools/llvmc/Makefile @@ -9,6 +9,8 @@ LEVEL = ../.. +#ifndef LLVMC_PLUGIN + # The current plan is to make the user copy the skeleton project and change only # this file (and plugins/UserPlugin, of course). @@ -18,3 +20,43 @@ export LLVMC_BUILTIN_PLUGINS = Base Clang DIRS = plugins driver include $(LEVEL)/Makefile.common + +else # LLVMC_PLUGIN + +# We are included from plugins/PluginName/Makefile... +# TODO: This part must be merged into Makefile.rules. + +LEVEL = ../../../.. + +LIBRARYNAME := $(patsubst %,plugin_llvmc_%,$(LLVMC_PLUGIN)) +REQUIRES_EH := 1 + +# Build a dynamic library if the user runs `make` from plugins/PluginName +ifndef LLVMC_BUILTIN_PLUGIN +LOADABLE_MODULE = 1 +endif + +# TableGen stuff... +ifneq ($(BUILT_SOURCES),) +BUILD_AUTOGENERATED_INC=1 +endif + +include $(LEVEL)/Makefile.common + +ifdef BUILD_AUTOGENERATED_INC + +TOOLS_SOURCE := $(strip $(wildcard $(PROJ_SRC_DIR)/*.td)) + +TD_COMMON :=$(strip $(wildcard \ + $(LLVM_SRC_ROOT)/include/llvm/CompilerDriver/*.td)) + +$(ObjDir)/AutoGenerated.inc.tmp: $(TOOLS_SOURCE) $(ObjDir)/.dir \ + $(TBLGEN) $(TD_COMMON) + $(Echo) "Building LLVMC configuration library with tblgen" + $(Verb) $(TableGen) -gen-llvmc -o $(call SYSPATH, $@) $< + +AutoGenerated.inc : $(ObjDir)/AutoGenerated.inc.tmp + $(Verb) $(CMP) -s $@ $< || $(CP) $< $@ +endif # BUILD_AUTOGENERATED_INC + +endif # LLVMC_PLUGIN |