Makefile: wire up build option for deprecated features
With 57ec9254eb (docs: introduce document to announce breaking changes,
2024-06-14), we have introduced a new document that tracks upcoming
breaking changes in the Git project. In 2454970930 (BreakingChanges:
early adopter option, 2024-10-11) we have amended the document a bit to
mention that any introduced breaking changes must be accompanied by
logic that allows us to enable the breaking change at compile-time.
While we already have two breaking changes lined up, neither of them has
such a switch because they predate those instructions.
Introduce the proposed `WITH_BREAKING_CHANGES` preprocessor macro and
wire it up with both our Makefiles and Meson. This does not yet wire up
the build flag for existing deprecations.
Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Patrick Steinhardt committedJan 22, 2025 at 12:31 UTCc5bc9a7f94a41c3e719afebf4a6c3e04cba82e4d
index 32a72139ba..800e518d95 100644--- a/meson_options.txt+++ b/meson_options.txt@@ -43,6 +43,8 @@ option('sha256_backend', type: 'combo', choices: ['openssl', 'nettle', 'gcrypt', description: 'The backend used for hashing objects with the SHA256 object format') # Build tweaks.+option('breaking_changes', type: 'boolean', value: false,+ description: 'Enable upcoming breaking changes.') option('macos_use_homebrew_gettext', type: 'boolean', value: true, description: 'Use gettext from Homebrew instead of the slightly-broken system-provided one.')
t/test-lib.sh
+4
index 62dfcc4aaf..6e423f655d 100644--- a/t/test-lib.sh+++ b/t/test-lib.sh@@ -1864,6 +1864,10 @@ test_lazy_prereq CURL ' curl --version '+test_lazy_prereq WITHOUT_BREAKING_CHANGES '+ test -z "$WITH_BREAKING_CHANGES"+'+ # SHA1 is a test if the hash algorithm in use is SHA-1. This is both for tests # which will not work with other hash algorithms and tests that work but don't # test anything meaningful (e.g. special values which cause short collisions).