blob: a172a93ca5778509acb8efea0124be58f35159f1 [file] [log] [blame]
Brad Bishop316dfdd2018-06-25 12:45:53 -04001From 4f8c68757b05d12392cd1a8aed174cb8e56f80e3 Mon Sep 17 00:00:00 2001
2From: "Maxin B. John" <maxin.john@intel.com>
3Date: Thu, 5 Apr 2018 17:19:44 +0300
4Subject: [PATCH] ell: fix build with musl libc
5
6musl libc doesn't implement TEMP_FAILURE_RETRY. Use the
7TEMP_FAILURE_RETRY from glibc to fix build.
8
9Upstream-Status: Submitted [https://lists.01.org/pipermail/ell/2018-April/001209.html]
10
11Signed-off-by: Maxin B. John <maxin.john@intel.com>
12---
13 ell/dbus.h | 10 ++++++++++
14 1 file changed, 10 insertions(+)
15
16diff --git a/ell/dbus.h b/ell/dbus.h
17index a7c08d2..3ff5e0f 100644
18--- a/ell/dbus.h
19+++ b/ell/dbus.h
20@@ -28,6 +28,16 @@
21 #include <stddef.h>
22 #include <stdarg.h>
23
24+/* taken from glibc unistd.h for musl support */
25+#ifndef TEMP_FAILURE_RETRY
26+#define TEMP_FAILURE_RETRY(expression) \
27+ (__extension__ \
28+ ({ long int __result; \
29+ do __result = (long int) (expression); \
30+ while (__result == -1L && errno == EINTR); \
31+ __result; }))
32+#endif
33+
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37--
382.4.0
39