summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-devel/flex/files/flex-2.5.34-isatty.patch')
-rw-r--r--sys-devel/flex/files/flex-2.5.34-isatty.patch53
1 files changed, 53 insertions, 0 deletions
diff --git a/sys-devel/flex/files/flex-2.5.34-isatty.patch b/sys-devel/flex/files/flex-2.5.34-isatty.patch
new file mode 100644
index 000000000000..b397433c5c57
--- /dev/null
+++ b/sys-devel/flex/files/flex-2.5.34-isatty.patch
@@ -0,0 +1,53 @@
+Declare the isatty prototype all the time ... otherwise packages like
+doxygen and ttmkfdir fail to build.
+
+http://bugs.gentoo.org/119598
+
+--- flex/scan.c
++++ flex/scan.c
+@@ -4179,9 +4179,19 @@
+ yyfree((void *) b );
+ }
+
++#ifndef _UNISTD_H /* assume unistd.h has isatty() for us */
+-#ifndef __cplusplus
++#ifdef __cplusplus
++extern "C" {
++#endif
++#ifdef __THROW /* this is a gnuism */
++extern int isatty (int ) __THROW;
++#else
+ extern int isatty (int );
++#endif
+-#endif /* __cplusplus */
++#ifdef __cplusplus
++}
++#endif
++#endif
+
+ /* Initializes or reinitializes a buffer.
+ * This function is sometimes called more than once on the same buffer,
+--- flex/skel.c
++++ flex/skel.c
+@@ -2183,9 +2183,19 @@
+ "[[",
+ " m4_ifdef( [[M4_YY_NEVER_INTERACTIVE]],,",
+ " [[",
++ "#ifndef _UNISTD_H /* assume unistd.h has isatty() for us */",
+- "#ifndef __cplusplus",
++ "#ifdef __cplusplus",
++ "extern \"C\" {",
++ "#endif",
++ "#ifdef __THROW /* this is a gnuism */",
++ "extern int isatty M4_YY_PARAMS( int ) __THROW;",
++ "#else",
+ "extern int isatty M4_YY_PARAMS( int );",
++ "#endif",
+- "#endif /* __cplusplus */",
++ "#ifdef __cplusplus",
++ "}",
++ "#endif",
++ "#endif",
+ " ]])",
+ "]])",
+ "%endif",