mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-21 18:38:08 +01:00
lib: NOTMUCH_DEPRECATED macro also for older compilers
Some compilers (older than gcc 4.5 and clang 2.9) do support __attribute__ ((deprecated)) but not __attribute__ ((deprecated("message"))). Check if clang version is at least 3.0, or gcc version is at least 4.5 to define NOTMUCH_DEPRECATED as the latter variant above. Otherwise define NOTMUCH_DEPRECATED as the former variant above. For a bit simpler implementation clang 2.9 is not included to use the newer variant. It is just one release, and the older one works fine. Clang 3.0 was released around 2011-11 and gcc 5.1 2015-04-22 (therefore newer macro for gcc 4.5+)
This commit is contained in:
parent
b8a136187a
commit
342910a280
1 changed files with 9 additions and 0 deletions
|
@ -59,8 +59,17 @@ NOTMUCH_BEGIN_DECLS
|
|||
#define LIBNOTMUCH_MINOR_VERSION 3
|
||||
#define LIBNOTMUCH_MICRO_VERSION 0
|
||||
|
||||
|
||||
#if defined (__clang_major__) && __clang_major__ >= 3 \
|
||||
|| defined (__GNUC__) && __GNUC__ >= 5 \
|
||||
|| defined (__GNUC__) && __GNUC__ == 4 && __GNUC_MINOR__ >= 5
|
||||
#define NOTMUCH_DEPRECATED(major,minor) \
|
||||
__attribute__ ((deprecated ("function deprecated as of libnotmuch " #major "." #minor)))
|
||||
#else
|
||||
#define NOTMUCH_DEPRECATED(major,minor) __attribute__ ((deprecated))
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* __DOXYGEN__ */
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in a new issue