TEMP_FAILURE_RETRY chunk taken from Debian via gnubiff
(/usr/include/unistd.h in Debian is LGPL)

Index: include/speechd_types.h
--- include/speechd_types.h.orig
+++ include/speechd_types.h
@@ -119,4 +119,17 @@ typedef struct {
 	SPDVoice voice;
 } SPDMsgSettings;
 
+/* TEMP_FAILURE_RETRY seems to be available only on Linux. For systems that
+ * don't have this macro we provide our own version. This code was taken from
+ * file "/usr/include/unistd.h" from Debian package "libc6-dev"
+ * version 2.3.2.ds1-20. */
+#ifndef TEMP_FAILURE_RETRY
+#define TEMP_FAILURE_RETRY(expression) \
+	(__extension__ \
+	 ({ long int __result; \
+		do __result = (long int) (expression); \
+		while (__result == -1L && errno == EINTR); \
+		__result; }))
+#endif
+
 #endif /* not ifndef SPEECHD_TYPES */
