[Mesa-dev] last call for autotools

Axel Davy davyaxel0 at gmail.com
Wed Dec 12 22:31:34 UTC 2018


On 12/12/2018 23:06, Dylan Baker wrote:
> Quoting Marek Olšák (2018-12-12 13:07:10)
>> On Wed, Dec 12, 2018 at 3:52 PM Rob Clark <robdclark at gmail.com> wrote:
>>
>>      On Wed, Dec 12, 2018 at 3:45 PM Marek Olšák <maraeo at gmail.com> wrote:
>>      >
>>      > On Wed, Dec 12, 2018 at 3:37 PM Rob Clark <robdclark at gmail.com> wrote:
>>      >>
>>      >> On Wed, Dec 12, 2018 at 3:13 PM Bas Nieuwenhuizen
>>      >> <bas at basnieuwenhuizen.nl> wrote:
>>      >> >
>>      >> > On Wed, Dec 12, 2018 at 8:59 PM Marek Olšák <maraeo at gmail.com> wrote:
>>      >> > >
>>      >> > > There are 2 issues with meson:
>>      >> > > * -DDEBUG is not present in debugoptimized builds.
>>      >> >
>>      >> > Do people expect -DDEBUG for debugoptimized? I would think that debug
>>      >> > optimized would be an optimized build with debug symbols, but not
>>      >> > expensive checks & asserts, which would match the current
>>      >> > debugoptimized build?
>>      >>
>>      >> please, no -DDEBUG for debugoptimized.. I use that when I want debug
>>      >> syms but not (for example) nir_validate and other expensive checks.
>>      >
>>      >
>>      > If nir_validate is so bad, perhaps it shouldn't be run at all. If you
>>      work on NIR and it's not important for you to run nir_validate, perhaps it
>>      shouldn't be run at all. It doesn't have anything to do with build systems.
>>      >
>>
>>      I do actually want it enabled when I piglit/deqp..  for which I use
>>      debug builds.  But I don't want it if I'm profiling or valgrinding,
>>      where I use debugoptimized..
>>
>>
>> At some point, DEBUG will be replaced by !NDEBUG.
>>
>> Marek
> The whole point of DEBUG is to hide really expensive checks like nir validate.
> If there are are asserts hidden behind debug that's wrong, those should be
> behind !NDEBUG, that's what NDEBUG is for. We've talked about renaming DEBUG
> because it's confusing, something like EXPENSIVE_DEBUG or EXPENSIVE_VALIDATION
> or something along those lines.
>
> The thread I linked you to previously has extensive discussion of why DEBUG was
> removed from the debugoptimized build.
>
> For CFLAGS: yes, environment variables are only read during the initial
> configuration by design, they basically exist for compatibility with autotools.
> You want to use -Dc_args and -Dcpp_args (for CFLAGS and CXXFLAGS respectively)
> these are read by meson, meson configure, and meson reconfigure.
>
> Dylan

Hi,

Currently nine debug log (enabled with NINE_DEBUG=all) only works with 
--enable-debug build.

There is quite a performance difference with autotools when you build 
with --enable-debug. However we often need users to use NINE_DEBUG to 
produce logs for issues.

These sorts of things should be made to work with debugoptimized if 
possible.

Currently we hide that against the DEBUG env var. Should that be 
replaced by !NDEBUG when autotools support is killed ?

Axel



More information about the mesa-dev mailing list