-PARALLEL_DIRS := llvm-config \
- opt llvm-as llvm-dis \
- llc llvm-ranlib llvm-ar llvm-nm \
- llvm-ld llvm-prof llvm-link \
- lli gccas gccld llvm-extract llvm-db \
- bugpoint llvm-bcanalyzer llvm-stub llvmc
+DIRS := llvm-config
+PARALLEL_DIRS := opt llvm-as llvm-dis \
+ llc 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 obj2yaml yaml2obj
+
+# If Intel JIT Events support is configured, build an extra tool to test it.
+ifeq ($(USE_INTEL_JITEVENTS), 1)
+ PARALLEL_DIRS += llvm-jitlistener
+endif
+
+# Let users override the set of tools to build from the command line.
+ifdef ONLY_TOOLS
+ OPTIONAL_PARALLEL_DIRS :=
+ OPTIONAL_DIRS := $(findstring lldb,$(ONLY_TOOLS))
+ PARALLEL_DIRS := $(filter-out lldb,$(ONLY_TOOLS))
+endif