[omniORB] BuildDebugBinary (Win32 MSVC) for omniORB4?

Sai-Lai Lo s.lo@uk.research.att.com
Wed, 22 Aug 2001 09:58:36 -0000


Well spotted! Indeed this is the problem.

I've checked-in a fix and will appear overnight.

Here is the diff of the changes I've made:

===================================================================
RCS file: /project/omni/cvsroot/omni/external_merge/mk/win32.mk,v
retrieving revision 1.3.2.9
retrieving revision 1.3.2.10
diff -c -r1.3.2.9 -r1.3.2.10
*** external_merge/mk/win32.mk 2001/08/01 16:47:51 1.3.2.9
--- external_merge/mk/win32.mk 2001/08/22 09:46:38 1.3.2.10
***************
*** 304,316 ****
  dllname=$$targetdir/$$libname.dll; \
  defname=$$targetdir/$(SharedLibraryExportSymbolFileNameTemplate); \
  version=$(SharedLibraryVersionStringTemplate); \
  if [ -z "$$nodeffile" ]; then \
  $(MakeCXXExportSymbolDefinitionFile) \
  defflag="-def:$$defname"; \
  fi; \
  set -x; \
  $(RM) $@; \
! $(CXXLINK) -out:$$dllname -DLL $(MSVC_DLL_CXXLINKNODEBUGOPTIONS) \
  $$defflag -IMPLIB:$@ $(IMPORT_LIBRARY_FLAGS) \
  $^ $$extralibs;
  endef
--- 304,321 ----
  dllname=$$targetdir/$$libname.dll; \
  defname=$$targetdir/$(SharedLibraryExportSymbolFileNameTemplate); \
  version=$(SharedLibraryVersionStringTemplate); \
+ if [ -n "$$debug" ]; then \
+ extralinkoption="$(MSVC_DLL_CXXLINKDEBUGOPTIONS)"; \
+ else \
+ extralinkoption="$(MSVC_DLL_CXXLINKNODEBUGOPTIONS)"; \
+ fi; \
  if [ -z "$$nodeffile" ]; then \
  $(MakeCXXExportSymbolDefinitionFile) \
  defflag="-def:$$defname"; \
  fi; \
  set -x; \
  $(RM) $@; \
! $(CXXLINK) -out:$$dllname -DLL $$extralinkoption \
  $$defflag -IMPLIB:$@ $(IMPORT_LIBRARY_FLAGS) \
  $^ $$extralibs;
  endef


----- Original Message -----
From: "Frédéric Bouvier" <frbouvi@wanadoo.fr>
To: <omniorb-list@uk.research.att.com>
Sent: Wednesday, August 22, 2001 6:39 AM
Subject: Re: [omniORB] BuildDebugBinary (Win32 MSVC) for omniORB4?


> I have the same problem here and I found that (in mk/win32.mk) shared
debug
> DLL are
> built unconditionally with MSVC_DLL_CXXLINKNODEBUGOPTIONS options.
> I changed temporarily line 311 of win32.mk to
>
> $(CXXLINK) -out:$$dllname -DLL $(MSVC_DLL_CXXLINKDEBUGOPTIONS) \
>
> rebuild the shared library (obj files are ok) and I now have debug symbols
> in
> omniORB400_rtd.dll.
>
> Of course, a rule that depends on the 'debug' variable would be better but
I
> am not
> enough acquainted with GNU make to make the change.
>
> Hope that helps,
>
> -Fred
>
> ----- Original Message -----
> From: "Ken Feuerman" <kfeuerma@adobe.com>
> To: "Lars Immisch" <lars@ibp.de>
> Cc: <omniorb-list@uk.research.att.com>
> Sent: Monday, August 20, 2001 6:54 PM
> Subject: Re: [omniORB] BuildDebugBinary (Win32 MSVC) for omniORB4?
>
>
> > Tracing into the omniORB code is indeed what I want to do, but it seems
> > that the DLL's don't actually contain debug information, even though the
> > various object files do.  I think the problem is that the DLL's are
linked
> > without the /debug option set (see the log below for an example of how
> > omnithread30_rtd.dll was built).  I've been playing around with the
> > win32.mk file, but I can't seem to get the options right so that
> > omnithread30_rtd.dll is built with /debug flags, and omnithread30_rt.dll
> is
> > built without /debug flags.  Any suggestions there?
> >
> > --Ken Feuerman.
> > Adobe Systems, Inc.
>
>
>
>