From b853c091231a56cc36135323d2668775a3d3c435 Mon Sep 17 00:00:00 2001
From: Luiz Angelo Daros de Luca <luizluca@gmail.com>
Date: Thu, 29 Dec 2016 20:51:41 -0200
Subject: [PATCH] Fix TEMP_FAILURE_RETRY definition when not defined

https://sourceware.org/bugzilla/show_bug.cgi?id=21001

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
---
 ChangeLog                        | 4 ++++
 lib/crc32_file.c                 | 1 +
 lib/system.h                     | 2 +-
 libdwfl/dwfl_build_id_find_elf.c | 1 +
 libdwfl/dwfl_module_getdwarf.c   | 1 +
 libdwfl/libdwfl_crc32_file.c     | 1 -
 6 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index bb2ec10..77a7db8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2016-12-29  Luiz Angelo Daros de Luca  <luizluca@gmail.com>
+
+	* Fix TEMP_FAILURE_RETRY definition when not defined
+
 2016-12-27  Mark Wielaard  <mark@klomp.org>
 
 	* configure.ac: Set version to 0.168.
diff --git a/lib/crc32_file.c b/lib/crc32_file.c
index a8434d4..57e4298 100644
--- a/lib/crc32_file.c
+++ b/lib/crc32_file.c
@@ -35,6 +35,7 @@
 #include <unistd.h>
 #include <sys/stat.h>
 #include <sys/mman.h>
+#include "system.h"
 
 int
 crc32_file (int fd, uint32_t *resp)
diff --git a/lib/system.h b/lib/system.h
index ccd99d6..dde7c4a 100644
--- a/lib/system.h
+++ b/lib/system.h
@@ -81,7 +81,7 @@
      do \
        __res = expression; \
      while (__res == -1 && errno == EINTR); \
-     __res; });
+     __res; })
 #endif
 
 static inline ssize_t __attribute__ ((unused))
diff --git a/libdwfl/dwfl_build_id_find_elf.c b/libdwfl/dwfl_build_id_find_elf.c
index 903e193..d4737c9 100644
--- a/libdwfl/dwfl_build_id_find_elf.c
+++ b/libdwfl/dwfl_build_id_find_elf.c
@@ -30,6 +30,7 @@
 #include <inttypes.h>
 #include <fcntl.h>
 #include <unistd.h>
+#include "system.h"
 
 
 int
diff --git a/libdwfl/dwfl_module_getdwarf.c b/libdwfl/dwfl_module_getdwarf.c
index 0e8810b..46caece 100644
--- a/libdwfl/dwfl_module_getdwarf.c
+++ b/libdwfl/dwfl_module_getdwarf.c
@@ -33,6 +33,7 @@
 #include <unistd.h>
 #include "../libdw/libdwP.h"	/* DWARF_E_* values are here.  */
 #include "../libelf/libelfP.h"
+#include "system.h"
 
 static inline Dwfl_Error
 open_elf_file (Elf **elf, int *fd, char **name)
diff --git a/libdwfl/libdwfl_crc32_file.c b/libdwfl/libdwfl_crc32_file.c
index 6b6b7d3..f849128 100644
--- a/libdwfl/libdwfl_crc32_file.c
+++ b/libdwfl/libdwfl_crc32_file.c
@@ -31,6 +31,5 @@
 
 #define crc32_file attribute_hidden __libdwfl_crc32_file
 #define crc32 __libdwfl_crc32
-#define LIB_SYSTEM_H	1
 #include <libdwflP.h>
 #include "../lib/crc32_file.c"
-- 
2.9.3

