Fix compilation warning on deprecated macro

A warning was printed even if the deprecation didn't apply to
libosmocore because it is still allowed to use it internally.
This patch fixes this case while still printing a warning if external
projects build using libosmocore headers.

Change-Id: I32212f20756f828af1017482a71e29e4b3adbad4
This commit is contained in:
Pau Espin 2017-06-17 23:18:11 +02:00
parent c2afe81d85
commit 69dfe5aeec
3 changed files with 11 additions and 2 deletions

View File

@ -235,6 +235,9 @@ then
CPPFLAGS+=" -fsanitize=address -fsanitize=undefined"
fi
CFLAGS+=" -DBUILDING_LIBOSMOCORE"
CPPFLAGS+=" -DBUILDING_LIBOSMOCORE"
AC_ARG_ENABLE(simd,
[AS_HELP_STRING(
[--disable-simd],

View File

@ -41,6 +41,12 @@
# define OSMO_DEPRECATED(text)
#endif
#if BUILDING_LIBOSMOCORE
# define OSMO_DEPRECATED_OUTSIDE_LIBOSMOCORE
#else
# define OSMO_DEPRECATED_OUTSIDE_LIBOSMOCORE OSMO_DEPRECATED("For internal use inside libosmocore only.")
#endif
#undef _OSMO_HAS_ATTRIBUTE_DEPRECATED_WITH_MESSAGE
#undef _OSMO_HAS_ATTRIBUTE_DEPRECATED

View File

@ -332,8 +332,8 @@ void log_add_target(struct log_target *target);
void log_del_target(struct log_target *target);
/* Generate command string for VTY use */
const char *log_vty_command_string() OSMO_DEPRECATED("For internal use inside libosmocore only.");
const char *log_vty_command_description() OSMO_DEPRECATED("For internal use inside libosmocore only.");
const char *log_vty_command_string() OSMO_DEPRECATED_OUTSIDE_LIBOSMOCORE;
const char *log_vty_command_description() OSMO_DEPRECATED_OUTSIDE_LIBOSMOCORE;
struct log_target *log_target_find(int type, const char *fname);
extern struct llist_head osmo_log_target_list;