As it happens, in LibreOffice code, "#ifdef DEBUG" is 1:1 equivalent to "#if (OSL_DEBUG_LEVEL >=
2)", and the thought was that perhaps all instances of "#ifdef DEBUG" should be changed to that
instead, to make it more clear that it is a rather rare way to build, that code inside "#ifdef
DEBUG" is *not* compiled in a normal --enable-debug or --enable-dbgutil build, but one needs the
much more rare case of increasing the dbglevel thing.
It has even been suggested in the past we should get rid of those dbglevel, or OSL_DEBUG_LEVEL,
things, to make the configuration space smaller. It is quite enough (in my opinion) to have
--enable-debug, --enable-dbgutil, --enable-symbols, --enable-assert-always-abort, and
--enable-sal-log, that all have related but different meanings. Also --enable-release-build could
be interpreted as being related. And I probably forgot some...
Having fallen into this pitfall a couple of times and got a headache understanding why the code was
not executed, I highly favor to at least change to OSL_DEBUG_LEVEL >= 2.
I am one of those who would like to remove the debug levels, but lately (spending far too much time
in the internal UNO workings), I am a little afraid that we have a lot of bit rotten code waiting
to become a problem. So doing this change in a branch would be wise.
rgds
jan I
Currently, when somebody loosely talks about "debug mode" vs "release mode" (as is common for
people coming from a background of Visual Studio projects, for instance), it is fairly unclear
what they actually mean. We should strive to make it clearer.
What you say "make my own DEBUG build", what do you mean exactly?
--tml
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.