[omniORB] BuildDebugBinary (Win32 MSVC) for omniORB4?

Ken Feuerman kfeuerma@adobe.com
Wed, 22 Aug 2001 10:04:30 -0700


Thanks for the fix!  I spent a little while trying to figure out how to d=
o the
'debug' variable dependency Fr=E9d=E9ric hinted at, and eventually wound =
up just
doing a second build for debug versions as he had done also.  Glad to see=
 a
solution in place for future snapshots.

--Ken Feuerman.
Adobe Systems, Inc.

Sai-Lai Lo wrote:

> 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:
>
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> 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=3D$$targetdir/$$libname.dll; \
>   defname=3D$$targetdir/$(SharedLibraryExportSymbolFileNameTemplate); \
>   version=3D$(SharedLibraryVersionStringTemplate); \
>   if [ -z "$$nodeffile" ]; then \
>   $(MakeCXXExportSymbolDefinitionFile) \
>   defflag=3D"-def:$$defname"; \
>   fi; \
>   set -x; \
>   $(RM) $@; \
> ! $(CXXLINK) -out:$$dllname -DLL $(MSVC_DLL_CXXLINKNODEBUGOPTIONS) \
>   $$defflag -IMPLIB:$@ $(IMPORT_LIBRARY_FLAGS) \
>   $^ $$extralibs;
>   endef
> --- 304,321 ----
>   dllname=3D$$targetdir/$$libname.dll; \
>   defname=3D$$targetdir/$(SharedLibraryExportSymbolFileNameTemplate); \
>   version=3D$(SharedLibraryVersionStringTemplate); \
> + if [ -n "$$debug" ]; then \
> + extralinkoption=3D"$(MSVC_DLL_CXXLINKDEBUGOPTIONS)"; \
> + else \
> + extralinkoption=3D"$(MSVC_DLL_CXXLINKNODEBUGOPTIONS)"; \
> + fi; \
>   if [ -z "$$nodeffile" ]; then \
>   $(MakeCXXExportSymbolDefinitionFile) \
>   defflag=3D"-def:$$defname"; \
>   fi; \
>   set -x; \
>   $(RM) $@; \
> ! $(CXXLINK) -out:$$dllname -DLL $$extralinkoption \
>   $$defflag -IMPLIB:$@ $(IMPORT_LIBRARY_FLAGS) \
>   $^ $$extralibs;
>   endef
>
> ----- Original Message -----
> From: "Fr=E9d=E9ric 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 sy=
mbols
> > in
> > omniORB400_rtd.dll.
> >
> > Of course, a rule that depends on the 'debug' variable would be bette=
r 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 s=
eems
> > > that the DLL's don't actually contain debug information, even thoug=
h 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_r=
t.dll
> > is
> > > built without /debug flags.  Any suggestions there?
> > >
> > > --Ken Feuerman.
> > > Adobe Systems, Inc.
> >
> >
> >
> >