summaryrefslogtreecommitdiff
path: root/Makefile.common
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-01-22 16:13:31 +0000
committerChris Lattner <sabre@nondot.org>2003-01-22 16:13:31 +0000
commit8d7dfb36c6d832c44f1aba08d8c8078c6788c206 (patch)
treea6b38c5c572f27ba4d727880f1dc1e78b49f41d6 /Makefile.common
parent8a4baf4f554fd18a5b7533747b9624eb13377adf (diff)
downloadllvm-8d7dfb36c6d832c44f1aba08d8c8078c6788c206.tar.gz
llvm-8d7dfb36c6d832c44f1aba08d8c8078c6788c206.tar.bz2
llvm-8d7dfb36c6d832c44f1aba08d8c8078c6788c206.tar.xz
Fix lli build problem with parallel makes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5396 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'Makefile.common')
-rw-r--r--Makefile.common13
1 files changed, 9 insertions, 4 deletions
diff --git a/Makefile.common b/Makefile.common
index 43048f7eb7..4d61ad7024 100644
--- a/Makefile.common
+++ b/Makefile.common
@@ -230,7 +230,6 @@ test :: $(addsuffix /.maketest , $(PARALLEL_DIRS))
%/.makeall %/.makeinstall %/.makeclean %/.maketest:
$(VERB) cd $(@D); $(MAKE) $(subst $(@D)/.make,,$@)
-
endif
#---------------------------------------------------------
@@ -396,19 +395,25 @@ USED_LIB_PATHS_O := $(addprefix $(LIBRELEASE)/, $(STATICUSEDLIBS))
USED_LIB_PATHS_P := $(addprefix $(LIBPROFILE)/, $(STATICUSEDLIBS))
LINK_OPTS := $(TOOLLINKOPTS) $(PLATFORMLINKOPTS)
+
+# Tell make that we need to rebuild subdirectories before we can link the tool.
+# This affects things like LLI which has library subdirectories.
+$(USED_LIB_PATHS_G) $(USED_LIB_PATHS_O) $(USED_LIB_PATHS_P): \
+ $(addsuffix /.makeall, $(PARALLEL_DIRS))
+
all:: $(TOOLEXENAMES)
clean::
$(VERB) rm -f $(TOOLEXENAMES)
-$(TOOLEXENAME_G): $(ObjectsG) $(USED_LIB_PATHS_G) $(BUILD_ROOT_TOP)/tools/Debug/.dir
+$(TOOLEXENAME_G): $(ObjectsG) $(USED_LIB_PATHS_G) $(TOOLDEBUG)/.dir
@echo ======= Linking $(TOOLNAME) debug executable $(WARN_MSG) =======
$(VERB) $(LinkG) -o $@ $(ObjectsG) $(USED_LIBS_OPTIONS_G) $(LINK_OPTS)
-$(TOOLEXENAME_O): $(ObjectsO) $(USED_LIB_PATHS_O) $(BUILD_ROOT_TOP)/tools/Release/.dir
+$(TOOLEXENAME_O): $(ObjectsO) $(USED_LIB_PATHS_O) $(TOOLRELEASE)/.dir
@echo ======= Linking $(TOOLNAME) release executable =======
$(VERB) $(LinkO) -o $@ $(ObjectsO) $(USED_LIBS_OPTIONS_O) $(LINK_OPTS)
-$(TOOLEXENAME_P): $(ObjectsP) $(USED_LIB_PATHS_P) $(BUILD_ROOT_TOP)/tools/Profile/.dir
+$(TOOLEXENAME_P): $(ObjectsP) $(USED_LIB_PATHS_P) $(TOOLPROFILE)/.dir
@echo ======= Linking $(TOOLNAME) profile executable =======
$(VERB) $(LinkP) -o $@ $(ObjectsP) $(USED_LIBS_OPTIONS_P) $(LINK_OPTS)