forked from brl/citadel
79 lines
1.8 KiB
Diff
79 lines
1.8 KiB
Diff
From ad1d2161c811cff25d1684c33611f300adb753bc Mon Sep 17 00:00:00 2001
|
|
From: Khem Raj <raj.khem@gmail.com>
|
|
Date: Fri, 29 May 2015 20:56:00 -0700
|
|
Subject: [PATCH] make error() portable
|
|
|
|
error() is not posix but gnu extension so may not be available on all
|
|
kind of systemsi e.g. musl.
|
|
|
|
Upstream-Status: Submitted
|
|
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
---
|
|
configure.ac | 2 ++
|
|
libweston/weston-error.h | 20 ++++++++++++++++++++
|
|
libweston/weston-launch.c | 2 +-
|
|
3 files changed, 23 insertions(+), 1 deletion(-)
|
|
create mode 100644 libweston/weston-error.h
|
|
|
|
diff --git a/configure.ac b/configure.ac
|
|
index 7aebbdb..dc9c802 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -109,6 +109,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[],
|
|
[[#include <time.h>]])
|
|
AC_CHECK_HEADERS([execinfo.h])
|
|
|
|
+AC_CHECK_HEADERS([error.h])
|
|
+
|
|
AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate])
|
|
|
|
# check for libdrm as a build-time dependency only
|
|
diff --git a/libweston/weston-error.h b/libweston/weston-error.h
|
|
new file mode 100644
|
|
index 0000000..2089d02
|
|
--- /dev/null
|
|
+++ b/libweston/weston-error.h
|
|
@@ -0,0 +1,20 @@
|
|
+#ifndef _WESTON_ERROR_H
|
|
+#define _WESTON_ERROR_H
|
|
+
|
|
+#if defined(HAVE_ERROR_H)
|
|
+#include <error.h>
|
|
+#else
|
|
+#include <err.h>
|
|
+#include <string.h>
|
|
+#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/libweston/weston-launch.c b/libweston/weston-launch.c
|
|
index 1adcf21..166bf3b 100644
|
|
--- a/libweston/weston-launch.c
|
|
+++ b/libweston/weston-launch.c
|
|
@@ -33,7 +33,6 @@
|
|
#include <poll.h>
|
|
#include <errno.h>
|
|
|
|
-#include <error.h>
|
|
#include <getopt.h>
|
|
|
|
#include <sys/types.h>
|
|
@@ -59,6 +58,7 @@
|
|
#endif
|
|
|
|
#include "weston-launch.h"
|
|
+#include "weston-error.h"
|
|
|
|
#define DRM_MAJOR 226
|
|
|