[PATCH libevdev] Rename symbols leaking from static library to avoid name clashes
David Herrmann
dh.herrmann at gmail.com
Mon Aug 18 01:25:01 PDT 2014
Hi
On Mon, Aug 18, 2014 at 6:08 AM, Peter Hutterer
<peter.hutterer at who-t.net> wrote:
> The static library currently leaks log_msg and log_priority. Both are too
> generic, so rename them with a leading underscore to hint they're supposed to
> be private.
>
> Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
> ---
> Anyone got good ideas on how to hide symbols from a static lib I'm all ears.
> All the stuff I found via google seemed somewhat hacky but I can't believe
> no-one else has had that problem so far.
Patch looks good, but why do you care for static linking?
Thanks
David
> Cheers,
> Peter
>
> libevdev/libevdev-int.h | 14 +++++++-------
> libevdev/libevdev.c | 10 +++++-----
> 2 files changed, 12 insertions(+), 12 deletions(-)
>
> diff --git a/libevdev/libevdev-int.h b/libevdev/libevdev-int.h
> index c184434..5e5ab26 100644
> --- a/libevdev/libevdev-int.h
> +++ b/libevdev/libevdev-int.h
> @@ -126,8 +126,8 @@ struct libevdev {
>
> #define log_msg_cond(dev, priority, ...) \
> do { \
> - if (log_priority(dev) >= priority) \
> - log_msg(dev, priority, __FILE__, __LINE__, __func__, __VA_ARGS__); \
> + if (_libevdev_log_priority(dev) >= priority) \
> + _libevdev_log_msg(dev, priority, __FILE__, __LINE__, __func__, __VA_ARGS__); \
> } while(0)
>
> #define log_error(dev, ...) log_msg_cond(dev, LIBEVDEV_LOG_ERROR, __VA_ARGS__)
> @@ -136,12 +136,12 @@ struct libevdev {
> #define log_bug(dev, ...) log_msg_cond(dev, LIBEVDEV_LOG_ERROR, "BUG: "__VA_ARGS__)
>
> extern void
> -log_msg(const struct libevdev *dev,
> - enum libevdev_log_priority priority,
> - const char *file, int line, const char *func,
> - const char *format, ...) LIBEVDEV_ATTRIBUTE_PRINTF(6, 7);
> +_libevdev_log_msg(const struct libevdev *dev,
> + enum libevdev_log_priority priority,
> + const char *file, int line, const char *func,
> + const char *format, ...) LIBEVDEV_ATTRIBUTE_PRINTF(6, 7);
> extern enum libevdev_log_priority
> -log_priority(const struct libevdev *dev);
> +_libevdev_log_priority(const struct libevdev *dev);
>
> /**
> * @return a pointer to the next element in the queue, or NULL if the queue
> diff --git a/libevdev/libevdev.c b/libevdev/libevdev.c
> index 903a286..6831e68 100644
> --- a/libevdev/libevdev.c
> +++ b/libevdev/libevdev.c
> @@ -136,10 +136,10 @@ static struct logdata log_data = {
> };
>
> void
> -log_msg(const struct libevdev *dev,
> - enum libevdev_log_priority priority,
> - const char *file, int line, const char *func,
> - const char *format, ...)
> +_libevdev_log_msg(const struct libevdev *dev,
> + enum libevdev_log_priority priority,
> + const char *file, int line, const char *func,
> + const char *format, ...)
> {
> va_list args;
>
> @@ -275,7 +275,7 @@ libevdev_set_device_log_function(struct libevdev *dev,
> }
>
> enum libevdev_log_priority
> -log_priority(const struct libevdev *dev)
> +_libevdev_log_priority(const struct libevdev *dev)
> {
> if (dev && dev->log.device_handler)
> return dev->log.priority;
> --
> 1.9.3
>
> _______________________________________________
> Input-tools mailing list
> Input-tools at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/input-tools
More information about the Input-tools
mailing list