From c22e90365d89346258394833cbcad03ff32b2e27 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 29 May 2015 20:56:00 -0700 Subject: [PATCH weston] make error() portable error() is not posix but gnu extension so may not be available on all kind of systemsi e.g. musl. Signed-off-by: Khem Raj --- Upstream-Status: Submitted configure.ac | 2 ++ src/weston-error.h | 20 ++++++++++++++++++++ src/weston-launch.c | 2 +- 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 src/weston-error.h diff --git a/configure.ac b/configure.ac index 263fc22..f52cd62 100644 --- a/configure.ac +++ b/configure.ac @@ -57,6 +57,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], [[#include ]]) AC_CHECK_HEADERS([execinfo.h]) +AC_CHECK_HEADERS([error.h]) + AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate]) COMPOSITOR_MODULES="wayland-server >= 1.7.93 pixman-1 >= 0.25.2" diff --git a/src/weston-error.h b/src/weston-error.h new file mode 100644 index 0000000..2089d02 --- /dev/null +++ b/src/weston-error.h @@ -0,0 +1,20 @@ +#ifndef _WESTON_ERROR_H +#define _WESTON_ERROR_H + +#if defined(HAVE_ERROR_H) +#include +#else +#include +#include +#define _weston_error(S, E, F, ...) do { \ + if (E) \ + err(S, F ": %s", ##__VA_ARGS__, strerror(E)); \ + else \ + err(S, F, ##__VA_ARGS__); \ +} while(0) + +#define error _weston_error +#endif + +#endif + diff --git a/src/weston-launch.c b/src/weston-launch.c index 10c66de..3e6d30a 100644 --- a/src/weston-launch.c +++ b/src/weston-launch.c @@ -30,7 +30,6 @@ #include #include -#include #include #include @@ -56,6 +55,7 @@ #endif #include "weston-launch.h" +#include "weston-error.h" #define DRM_MAJOR 226 -- 2.1.4