summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorDavid Tardon <dtardon@redhat.com>2012-08-02 11:32:42 +0200
committerDavid Tardon <dtardon@redhat.com>2012-09-22 08:15:39 +0200
commita235dff703c3cb6318a6166fce4d13557661b2a8 (patch)
treee2b79e452f14d51464ebc2f0b6e8175873c3996f /solenv
parent24219ada3786feeaba2e2bd6b21548b9b5483b9c (diff)
fix Library/LinkTarget build on mingw
Parallel MinGW build broke in clucene every now and then because the link target tried to put map file directly into $(OUTDIR)/bin, which did not exist yet (and actually nothing in Library depends on it, so I guess it was just luckily created in time by delivery of soltools in the cases where the build succeeded). The map file is now created in $(WORKDIR) (as it should be) and then delivered through AUXTARGETS. Change-Id: I62373f0b71a6c4f3b59fa779f9ec48154485a174
Diffstat (limited to 'solenv')
-rw-r--r--solenv/gbuild/platform/WNT_INTEL_GCC.mk10
1 files changed, 5 insertions, 5 deletions
diff --git a/solenv/gbuild/platform/WNT_INTEL_GCC.mk b/solenv/gbuild/platform/WNT_INTEL_GCC.mk
index a3bd1a826518..b244ceb632e0 100644
--- a/solenv/gbuild/platform/WNT_INTEL_GCC.mk
+++ b/solenv/gbuild/platform/WNT_INTEL_GCC.mk
@@ -163,7 +163,7 @@ $(call gb_Helper_abbreviate_dirs,\
$(if $(LINKED_STATIC_LIBS),-Wl$(COMMA)--start-group $(foreach lib,$(LINKED_STATIC_LIBS),$(call gb_StaticLibrary_get_target,$(lib))) -Wl$(COMMA)--end-group) \
$(patsubst lib%.a,-l%,$(patsubst lib%.dll.a,-l%,$(foreach lib,$(LINKED_LIBS),$(call gb_Library_get_implibname,$(lib))))) \
$(LIBS) \
- -Wl$(COMMA)-Map$(COMMA)$(basename $(DLLTARGET)).map \
+ -Wl$(COMMA)-Map$(COMMA)$(dir $(1))$(notdir $(basename $(DLLTARGET)).map) \
-Wl$(COMMA)--out-implib$(COMMA)$(1) \
-o $(dir $(1))/$(notdir $(DLLTARGET))))
endef
@@ -298,16 +298,16 @@ gb_Library_IARCEXT := .a
gb_Library_ILIBEXT := .lib
define gb_Library_Library_platform
-$(call gb_LinkTarget_set_dlltarget,$(2),$(OUTDIR)/bin/$(notdir $(3)))
+$(call gb_LinkTarget_set_dlltarget,$(2),$(3))
$(call gb_LinkTarget_add_auxtargets,$(2),\
$(patsubst %.dll,%.map,$(3)) \
)
-$(call gb_Library_get_target,$(1)) \
-$(call gb_Library_get_clean_target,$(1)) : AUXTARGETS := $(OUTDIR)/bin/$(notdir $(3))
+$(call gb_Library_get_target,$(1)) :| $(OUTDIR)/bin/.dir
-$(call gb_Deliver_add_deliverable,$(OUTDIR)/bin/$(notdir $(3)),$(3),$(1))
+$(call gb_Library_get_target,$(1)) \
+$(call gb_Library_get_clean_target,$(1)) : AUXTARGETS := $(OUTDIR)/bin/$(notdir $(3)) $(OUTDIR)/bin/$(notdir $(patsubst %.dll,%.map,$(3)))
$(call gb_Library_add_default_nativeres,$(1),$(1)/default)