-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Base \MD[d] and \MT[d] off of 'debug' instead of 'buildtype' #8220
Conversation
8083fc7
to
bc6b697
Compare
There is an unfortunate clash of terminology here. Meson uses the unixy terms where "debug" means "-g", that is, debug info is generated. MSVC uses "debug" to mean whether the debug runtime is used (for GCC it would mean roughly the same as using Because of this setting this option based on Meson's
An alternative would be to change it so that for |
This is a first step to make `buildtype` a true alias of `debug` and `optimization` options. See mesonbuild#10808. Relates to: - mesonbuild#11645 - mesonbuild#12096 - mesonbuild#5920 - mesonbuild#5814 - mesonbuild#8220 - mesonbuild#8493 - mesonbuild#9540 - mesonbuild#10487 - mesonbuild#12265 - mesonbuild#8308 - mesonbuild#8214 - mesonbuild#7194 - mesonbuild#11732
This is a first step to make `buildtype` a true alias of `debug` and `optimization` options. See mesonbuild#10808. Relates to: - mesonbuild#11645 - mesonbuild#12096 - mesonbuild#5920 - mesonbuild#5814 - mesonbuild#8220 - mesonbuild#8493 - mesonbuild#9540 - mesonbuild#10487 - mesonbuild#12265 - mesonbuild#8308 - mesonbuild#8214 - mesonbuild#7194 - mesonbuild#11732
This is a first step to make `buildtype` a true alias of `debug` and `optimization` options. See mesonbuild#10808. Relates to: - mesonbuild#11645 - mesonbuild#12096 - mesonbuild#5920 - mesonbuild#5814 - mesonbuild#8220 - mesonbuild#8493 - mesonbuild#9540 - mesonbuild#10487 - mesonbuild#12265 - mesonbuild#8308 - mesonbuild#8214 - mesonbuild#7194 - mesonbuild#11732
As @jpakkane explained, this is wrong as 'debug' means 'generate debug info'. This PR should be closed. |
The current debug option is confusing, because people think it means buildtype=debug while it is about the generation of debug information. See mesonbuild#10808 for a discusion proposing it. See mesonbuild#8220 for an example of possible confusion.
The current debug option is confusing, because people think it means buildtype=debug while it is about the generation of debug information. See mesonbuild#10808 for a discusion proposing it. See mesonbuild#8220 for an example of possible confusion.
The current debug option is confusing, because people think it means buildtype=debug while it is about the generation of debug information. See mesonbuild#10808 for a discusion proposing it. See mesonbuild#8220 for an example of possible confusion.
The current debug option is confusing, because people think it means buildtype=debug while it is about the generation of debug information. See mesonbuild#10808 for a discusion proposing it. See mesonbuild#8220 for an example of possible confusion.
This is a first step to make `buildtype` a true alias of `debug` and `optimization` options. See mesonbuild#10808. Relates to: - mesonbuild#11645 - mesonbuild#12096 - mesonbuild#5920 - mesonbuild#5814 - mesonbuild#8220 - mesonbuild#8493 - mesonbuild#9540 - mesonbuild#10487 - mesonbuild#12265 - mesonbuild#8308 - mesonbuild#8214 - mesonbuild#7194 - mesonbuild#11732
Currently, the msvc the automatic crt flag detection is based off of
buildtype
, this PR would change it to be based off ofdebug
for the following reasons.\MD
or\MT
directly correlates to whether or not_DEBUG
is defined, and many projects depend on_DEBUG
being defined by msvc when debug information is actually built. Currently,buildtype
will turn off the debug information ondebugoptimized
.optimization
anddebug
levels causesbuildtype=custom
, which throws the following exception:Requested C runtime based on buildtype, but buildtype is "custom".