+include $(LEVEL)/Makefile.config
+
+# Build clang if present.
+
+ifneq ($(CLANG_SRC_ROOT),)
+ OPTIONAL_PARALLEL_DIRS := $(CLANG_SRC_ROOT)
+else
+ OPTIONAL_PARALLEL_DIRS := clang
+endif
+
+# Build LLDB if present. Note LLDB must be built last as it depends on the
+# wider LLVM infrastructure (including Clang).
+OPTIONAL_DIRS := lldb
+
+# NOTE: The tools are organized into five groups of four consisting of one
+# large and three small executables. This is done to minimize memory load
+# in parallel builds. Please retain this ordering.
+DIRS := llvm-config
+PARALLEL_DIRS := opt llvm-as llvm-dis \
+ llc llvm-ranlib llvm-ar llvm-nm \
+ llvm-prof llvm-link \
+ lli llvm-extract llvm-mc \
+ bugpoint llvm-bcanalyzer \
+ llvm-diff macho-dump llvm-objdump llvm-readobj \
+ llvm-rtdyld llvm-dwarfdump llvm-cov \
+ llvm-size llvm-stress llvm-mcmarkup \
+ llvm-symbolizer
+
+# If Intel JIT Events support is configured, build an extra tool to test it.
+ifeq ($(USE_INTEL_JITEVENTS), 1)
+ PARALLEL_DIRS += llvm-jitlistener
+endif