diff options
author | Jan Holesovsky <kendy@collabora.com> | 2013-12-08 14:12:30 +0100 |
---|---|---|
committer | Jan Holesovsky <kendy@collabora.com> | 2013-12-08 19:02:46 +0100 |
commit | d5dcb3fc160ce9e2235560af35be2c0f44e03a08 (patch) | |
tree | 7bea0c6ddc6e04e8ef8584dab1f0ef89ea50c8ed /solenv/gbuild | |
parent | 5f40aeb10ba841bf306323c0d18dbc4b572bfea8 (diff) |
Name the .pdb files so that WinDbg can consume them.
Change-Id: I62cecfb36dd912a1a736d063761faa445a29f3a7
Diffstat (limited to 'solenv/gbuild')
-rw-r--r-- | solenv/gbuild/platform/com_MSC_class.mk | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/solenv/gbuild/platform/com_MSC_class.mk b/solenv/gbuild/platform/com_MSC_class.mk index eafc57064fc4..dbe14086d4b4 100644 --- a/solenv/gbuild/platform/com_MSC_class.mk +++ b/solenv/gbuild/platform/com_MSC_class.mk @@ -133,12 +133,21 @@ gb_LinkTarget_INCLUDE :=\ $(foreach inc,$(subst ;, ,$(JDKINC)),-I$(inc)) \ -I$(BUILDDIR)/config_$(gb_Side) \ +# We must name the .pdb like libname.pdb, not libname.\(dll\|exe\|pyd\).pdb, +# otherwise WinDbg does not find it. +define gb_LinkTarget__get_pdb_filename +$(patsubst %.dll,%.pdb,$(patsubst %.exe,%.pdb,$(patsubst %.pyd,%.pdb,$(1)))) +endef + gb_LinkTarget_get_pdbfile_in = \ $(WORKDIR)/LinkTarget/$(call gb_LinkTarget__get_workdir_linktargetname,$(1)).objects.pdb + gb_LinkTarget_get_pdbfile_out = \ - $(WORKDIR)/LinkTarget/$(call gb_LinkTarget__get_workdir_linktargetname,$(1)).pdb + $(call gb_LinkTarget__get_pdb_filename,$(WORKDIR)/LinkTarget/$(call gb_LinkTarget__get_workdir_linktargetname,$(1))) + gb_LinkTarget_get_ilkfile = \ $(WORKDIR)/LinkTarget/$(call gb_LinkTarget__get_workdir_linktargetname,$(1)).ilk + gb_LinkTarget_get_manifestfile = \ $(WORKDIR)/LinkTarget/$(call gb_LinkTarget__get_workdir_linktargetname,$(1)).manifest @@ -193,7 +202,7 @@ $(call gb_Helper_abbreviate_dirs,\ $(if $(filter-out StaticLibrary,$(TARGETTYPE)),\ $(T_LIBS) user32.lib \ -manifestfile:$(WORKDIR)/LinkTarget/$(2).manifest \ - -pdb:$(WORKDIR)/LinkTarget/$(2).pdb) \ + -pdb:$(call gb_LinkTarget__get_pdb_filename,$(WORKDIR)/LinkTarget/$(2))) \ $(if $(ILIBTARGET),-out:$(1) -implib:$(ILIBTARGET),-out:$(1)); RC=$$?; rm $${RESPONSEFILE} \ $(if $(filter Library,$(TARGETTYPE)),; if [ ! -f $(ILIBTARGET) ]; then rm -f $(1); exit 42; fi) \ $(if $(filter Library,$(TARGETTYPE)),&& if [ -f $(WORKDIR)/LinkTarget/$(2).manifest ]; then mt.exe $(MTFLAGS) -nologo -manifest $(WORKDIR)/LinkTarget/$(2).manifest -outputresource:$(1)\;2 && touch -r $(1) $(WORKDIR)/LinkTarget/$(2).manifest $(ILIBTARGET); fi) \ |