Merge PartialInliner changes.
[oota-llvm.git] / tools / Makefile
1 ##===- tools/Makefile --------------------------------------*- Makefile -*-===##
2 #
3 #                     The LLVM Compiler Infrastructure
4 #
5 # This file is distributed under the University of Illinois Open Source
6 # License. See LICENSE.TXT for details.
7 #
8 ##===----------------------------------------------------------------------===##
9
10 LEVEL := ..
11
12 # Build clang if present.
13 OPTIONAL_PARALLEL_DIRS := clang
14
15 # NOTE: The tools are organized into five groups of four consisting of one
16 # large and three small executables. This is done to minimize memory load
17 # in parallel builds.  Please retain this ordering.
18 DIRS := llvm-config
19 PARALLEL_DIRS := opt llvm-as llvm-dis \
20                  llc llvm-ranlib llvm-ar llvm-nm \
21                  llvm-ld llvm-prof llvm-link \
22                  lli gccas gccld llvm-extract llvm-db \
23                  bugpoint llvm-bcanalyzer llvm-stub llvmc
24
25 # Let users override the set of tools to build from the command line.
26 ifdef ONLY_TOOLS
27   OPTIONAL_PARALLEL_DIRS :=
28   PARALLEL_DIRS := $(ONLY_TOOLS)
29 endif
30
31 include $(LEVEL)/Makefile.config
32
33 ifeq ($(ENABLE_PIC),1)
34   DIRS += lto
35   ifdef BINUTILS_INCDIR
36     DIRS += gold
37   endif
38 endif
39
40 # No support for lto / gold on windows targets
41 ifeq ($(OS), $(filter $(OS), Cygwin MingW))
42   DIRS := $(filter-out lto gold, $(DIRS))
43 endif
44
45 include $(LEVEL)/Makefile.common