aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CompilerDriver/Makefile
blob: 66c6d11552fc74667a4881e5484c0becc3908ce5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
##===- lib/CompilerDriver/Makefile -------------------------*- Makefile -*-===##
#
#                     The LLVM Compiler Infrastructure
#
# This file is distributed under the University of Illinois Open
# Source License. See LICENSE.TXT for details.
#
##===----------------------------------------------------------------------===##

LEVEL = ../..

# We don't want this library to appear in `llvm-config --libs` output, so its
# name doesn't start with "LLVM".

ifeq ($(ENABLE_LLVMC_DYNAMIC),1)
  LIBRARYNAME = libCompilerDriver
  LLVMLIBS = LLVMSupport.a LLVMSystem.a
  LOADABLE_MODULE := 1
else
  LIBRARYNAME = CompilerDriver
  LINK_COMPONENTS = support system
endif

REQUIRES_EH := 1
REQUIRES_RTTI := 1

include $(LEVEL)/Makefile.common

ifeq ($(ENABLE_LLVMC_DYNAMIC_PLUGINS), 1)
    CPP.Flags += -DENABLE_LLVMC_DYNAMIC_PLUGINS
endif

# Copy libCompilerDriver to the bin dir so that llvmc can find it.
ifeq ($(ENABLE_LLVMC_DYNAMIC),1)

FullLibName = $(LIBRARYNAME)$(SHLIBEXT)

all-local:: $(ToolDir)/$(FullLibName)

$(ToolDir)/$(FullLibName): $(LibDir)/$(FullLibName) $(ToolDir)/.dir
	$(Echo) Copying $(BuildMode) Shared Library $(FullLibName) to $@
	-$(Verb) $(CP) $< $@

clean-local::
	$(Echo) Removing $(BuildMode) Shared Library $(FullLibName) \
	from $(ToolDir)
	-$(Verb) $(RM) -f $(ToolDir)/$(FullLibName)
endif