On Tuesday 08 of May 2012, Michael Stahl wrote:
config_host.mk.in | 2
configure.in | 48 ++++++-----
filter/source/pdf/impdialog.cxx | 29 +++----
oox/source/dump/dumperbase.cxx | 15 +++
sal/inc/rtl/string.hxx | 5 -
sc/source/ui/app/inputhdl.cxx | 3
solenv/gbuild/CppunitTest.mk | 1
solenv/gbuild/Executable.mk | 1
solenv/gbuild/Library.mk | 1
solenv/gbuild/LinkTarget.mk | 94
++++++++--------------- solenv/gbuild/Module.mk |
6 +
solenv/gbuild/StaticLibrary.mk | 1
solenv/gbuild/gbuild.mk | 39 +--------
solenv/gbuild/platform/IOS_ARM_GCC.mk | 6 -
solenv/gbuild/platform/WNT_INTEL_MSC.mk | 5 -
solenv/gbuild/platform/com_GCC_defs.mk | 4
solenv/gbuild/platform/macosx.mk | 8 -
solenv/gbuild/platform/solaris.mk | 3
solenv/gbuild/platform/unxgcc.mk | 8 +
toolkit/source/controls/tksimpleanimation.cxx | 6 -
toolkit/source/controls/tkthrobber.cxx | 12 +-
xmlhelp/source/cxxhelp/provider/urlparameter.cxx | 3
Hmm, ok, I don't want to just revert once more, but since it looks to me like
you've broken this in several ways, it is possible we don't agree on what
these switches are actually supposed to do. As far as I can
tell, --enable-symbols enables -g, --enable-debug does --enable-symbols and
turns on logging+assertions and disables optimizations, and --enable-dbgutils
does --enable-symbols plus whatever extra stuff that is BIC. That's
indicentally also what --help says about them. What is your idea about what
these options do?
commit a50812813de0594ac2aeb064ea4a95d66b8e4e42
Author: Michael Stahl <mstahl@redhat.com>
Date: Mon May 7 21:33:01 2012 +0200
gbuild: tie optimization into selective --enable-debug:
Let --enable-debug determine whether optimization should be disabled,
which works also for debug=t due to the setup in gbuild.mk.
Also clean up uses of gb_COMPILEROPTFLAGS: this is now always set to
optimization settings, and gb_COMPILERNOOPTFLAGS used in debug case,
which should not make a difference because the only actual difference
was that on MSVC the debug OPTFLAGS were empty, but -Od is documented
as the default for this.
Now --enable-debug=-sc/ means that sc/ is built without -g and with -O2. In
other words, the compiler spends extra time working on code I don't care
about at all. There was a reason why OPT flags was empty in --enable-debug
build - as soon as I do a developer build, I don't want the compiler to
optimize any code, anywhere, unless explicitly told so.
Moreover, such code actually is built also with -g. I'm not sure why, but
something now seems to turn on -g for everything, regardless of the selective
symbols.
commit c8fa9bd8849f0503b3803465e8ce119581e11e33
Author: Michael Stahl <mstahl@redhat.com>
Date: Mon May 7 20:58:44 2012 +0200
dis-entangle --enable-symbols and --enable-debug:
OOo used to use debug level this way:
0 is default for product build
1 for --enable-dbgutil
2 for environment variable debug=t, regardless of dbgutil setting
in LO these have now morphed into:
0 is default for product build
1 for environment variable debug=t
2 for --enable-dbgutil (at some intermediate stage in the past)
1 for --enable-dbgutil (today)
This has caused a lot of confusion and some things were not converted
properly, including a check in LinkTarget.mk.
This caused confusion even now. How is OSL_DEBUG_LEVEL relevant here at all?
Developers should use --enable-debug to get useful information,
including full debug info and assertions.
--enable-symbols is not intended for developers, but for people
who need their builds to be able to produce useful stack traces;
--enable-symbols is for example set unconditionally in the Fedora RPM
spec, and for this purpose disabling of inlining is not wanted.
--enable-symbols should not disable inlining. If it does, it is merely a bug.
Why should it, it's for symbols.
It is unlikely that somebody wants symbols for only part of the build,
Except for those people who wanted the feature of selective debug symbols.
and consequently a different mechanism is used to set the corresponding
flags: they are set into global gb_LinkTarget_C{,XX}FLAGS.
So move the selective symbol feature back to --enable-debug.
That does not make much sense. Even this very sentence says that symbols and
debug are again tangled together.
(this substantially reverts db8df57acd601ed084bd0122683e1bd066a4f143)
--
Lubos Lunak
l.lunak@suse.cz
Context
- --enable-debug vs --enable-symbols (Re: [Libreoffice-commits] .: 12 commits - config_host.mk.in configure.in filter/source oox/source sal/inc sc/source solenv/gbuild toolkit/source xmlhelp/source) · Lubos Lunak
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.