aboutsummaryrefslogtreecommitdiff
path: root/lib/getopt.h.patch
diff options
context:
space:
mode:
Diffstat (limited to 'lib/getopt.h.patch')
-rw-r--r--lib/getopt.h.patch70
1 files changed, 70 insertions, 0 deletions
diff --git a/lib/getopt.h.patch b/lib/getopt.h.patch
new file mode 100644
index 000000000000..8094b1a65d40
--- /dev/null
+++ b/lib/getopt.h.patch
@@ -0,0 +1,70 @@
+getopt.h is a modified version of the getopt.h found in the glibc snapshot
+on 1998-04-14. Below the patch that has been applied to this file. The glibc
+maintainer has been informed of these patches.
+
+diff -c3 getopt.h.orig getopt.h
+*** getopt.h.orig Sat Jun 21 03:01:53 1997
+--- getopt.h Mon Aug 28 12:36:27 2000
+***************
+*** 1,5 ****
+ /* Declarations for getopt.
+! Copyright (C) 1989,90,91,92,93,94,96,97 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+--- 1,5 ----
+ /* Declarations for getopt.
+! Copyright (C) 1989-1998, 2000 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+***************
+*** 78,84 ****
+
+ struct option
+ {
+! #if defined (__STDC__) && __STDC__
+ const char *name;
+ #else
+ char *name;
+--- 78,84 ----
+
+ struct option
+ {
+! #if (defined (__STDC__) && __STDC__) || defined (__cplusplus)
+ const char *name;
+ #else
+ char *name;
+***************
+*** 96,102 ****
+ #define required_argument 1
+ #define optional_argument 2
+
+! #if defined (__STDC__) && __STDC__
+ #ifdef __GNU_LIBRARY__
+ /* Many other libraries have conflicting prototypes for getopt, with
+ differences in the consts, in stdlib.h. To avoid compilation
+--- 96,108 ----
+ #define required_argument 1
+ #define optional_argument 2
+
+! #if (defined (__STDC__) && __STDC__) || defined (__cplusplus)
+! #ifdef __cplusplus
+! /* SunOS4 declares getopt with the following prototype:
+! extern int getopt (int argc, const char *const *argv, const char *shortopts);
+! We cannot redeclare it when compiling C++ code. */
+! #define getopt(x,y,z) getopt_long(x, y, z, (const struct option *) 0, (int *) 0)
+! #else /* not __cplusplus */
+ #ifdef __GNU_LIBRARY__
+ /* Many other libraries have conflicting prototypes for getopt, with
+ differences in the consts, in stdlib.h. To avoid compilation
+***************
+*** 105,110 ****
+--- 111,117 ----
+ #else /* not __GNU_LIBRARY__ */
+ extern int getopt ();
+ #endif /* __GNU_LIBRARY__ */
++ #endif /* __cplusplus */
+ extern int getopt_long (int argc, char *const *argv, const char *shortopts,
+ const struct option *longopts, int *longind);
+ extern int getopt_long_only (int argc, char *const *argv,