glib/docs
Michael Catanzaro 61a843564d Improve default value of glib_debug option
glib_debug is an auto option. This is clever because it allows us to
guess the best default based on the build type, while also allowing an
easy way to override if the guess is not good. Sadly, the attempt to
guess based on the build type does not work well. For example, it
considers debugoptimized builds to be debug builds, but despite the
name, it is definitely a release build type (except on Windows, which
we'll ignore here). The minsize build type has the exact same problem.
The debug option is true for both build types, but this only controls
whether debuginfo is enabled, not whether debug extras are enabled.

The plain build type has a different problem: debug is off, but the
optimization option is off too, even though plain builds are distro
builds are will almost always use optimization.

I've outlined an argument for why we should make these changes here:
https://blogs.gnome.org/mcatanzaro/2022/07/15/best-practices-for-build-options/

Specifically, Rule 4 shows all the build types and whether they
correspond to release builds or debug builds. Rule 6 argues that we
should provide good defaults for plain builds.
2022-08-03 17:07:13 -05:00
..
reference Improve default value of glib_debug option 2022-08-03 17:07:13 -05:00
backports.md docs: Add a backports policy 2022-05-19 12:52:26 +01:00
CODEOWNERS docs: Sync glib.doap to set of users listed in CODEOWNERS 2022-06-22 15:54:49 +01:00
debugging.txt tree: Fix various typos and outdated terminology 2020-06-12 15:01:08 +01:00
macros.txt build: Add glib_debug option 2021-01-20 16:05:36 +01:00
meson-version.md docs: Add a Meson version policy 2022-05-06 13:01:44 +01:00
rationales.md docs: Move README.rationale to docs subdirectory 2022-05-11 13:02:49 +01:00
releasing.md docs: Document the release process 2022-06-21 16:16:10 +01:00
roadmap.md docs: Document the release process 2022-06-21 16:16:10 +01:00
supported-platforms.md docs: Update supported platforms list 2022-05-18 08:36:50 +01:00
testing.md docs: Add a testing policy 2022-06-14 15:19:32 +01:00
toolchain-requirements.md Require C99's __VA_ARGS__ 2022-06-30 01:46:32 +01:00