Simplify_libgit2_version_checks.patch 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. From 668f5d07eef16e227402eab09141c738b315d94b Mon Sep 17 00:00:00 2001
  2. From: Colomban Wendling <ban@herbesfolles.org>
  3. Date: Sun, 5 Jun 2022 23:11:20 +0200
  4. Subject: [PATCH] git-changebar: Simplify libgit2 version checks
  5. Introduce a custom macro for libgit2 version checks for them to be both
  6. easier to read and write.
  7. ---
  8. git-changebar/src/gcb-plugin.c | 14 +++++++++++---
  9. 1 file changed, 11 insertions(+), 3 deletions(-)
  10. diff --git a/git-changebar/src/gcb-plugin.c b/git-changebar/src/gcb-plugin.c
  11. index f8ce20cd6..bee8c865c 100644
  12. --- a/git-changebar/src/gcb-plugin.c
  13. +++ b/git-changebar/src/gcb-plugin.c
  14. @@ -32,11 +32,19 @@
  15. #include <geany.h>
  16. #include <document.h>
  17. -#if ! defined (LIBGIT2_VER_MINOR) || ( (LIBGIT2_VER_MAJOR == 0) && (LIBGIT2_VER_MINOR < 22) )
  18. +#ifdef LIBGIT2_VER_MINOR
  19. +# define CHECK_LIBGIT2_VERSION(MAJOR, MINOR) \
  20. + ((LIBGIT2_VER_MAJOR == (MAJOR) && LIBGIT2_VER_MINOR >= (MINOR)) || \
  21. + LIBGIT2_VER_MAJOR > (MAJOR))
  22. +#else /* ! defined(LIBGIT2_VER_MINOR) */
  23. +# define CHECK_LIBGIT2_VERSION(MAJOR, MINOR) 0
  24. +#endif
  25. +
  26. +#if ! CHECK_LIBGIT2_VERSION(0, 22)
  27. # define git_libgit2_init git_threads_init
  28. # define git_libgit2_shutdown git_threads_shutdown
  29. #endif
  30. -#if ! defined (LIBGIT2_VER_MINOR) || ( (LIBGIT2_VER_MAJOR == 0) && (LIBGIT2_VER_MINOR < 23) )
  31. +#if ! CHECK_LIBGIT2_VERSION(0, 23)
  32. /* 0.23 added @p binary_cb */
  33. # define git_diff_buffers(old_buffer, old_len, old_as_path, \
  34. new_buffer, new_len, new_as_path, options, \
  35. @@ -45,7 +53,7 @@
  36. new_buffer, new_len, new_as_path, options, \
  37. file_cb, hunk_cb, line_cb, payload)
  38. #endif
  39. -#if ! defined (LIBGIT2_VER_MINOR) || ( (LIBGIT2_VER_MAJOR == 0) && (LIBGIT2_VER_MINOR < 28) )
  40. +#if ! CHECK_LIBGIT2_VERSION(0, 28)
  41. # define git_buf_dispose git_buf_free
  42. # define git_error_last giterr_last
  43. #endif