aboutsummaryrefslogtreecommitdiff
path: root/fixincludes
diff options
context:
space:
mode:
authorRainer Orth <ro@TechFak.Uni-Bielefeld.DE>2007-07-05 18:43:16 +0000
committerRainer Orth <ro@gcc.gnu.org>2007-07-05 18:43:16 +0000
commit8919fa4a7720a49af868ba1a9c06806f864e257b (patch)
treea42051c89a8248de5f2c5fe584116500e53c315b /fixincludes
parentbd76921050ba5a4817a8b833b232cb595d2d96e6 (diff)
re PR libgcj/28190 (libjava bootstrap failure on IRIX 6.5: stdint.h misdetection)
PR libgcj/28190 * inclhack.def (irix_stdint_c99): New fix. * fixincl.x: Regenerate. * tests/base/stdint.h: New test. From-SVN: r126377
Diffstat (limited to 'fixincludes')
-rw-r--r--fixincludes/ChangeLog7
-rw-r--r--fixincludes/fixincl.x66
-rw-r--r--fixincludes/inclhack.def18
-rw-r--r--fixincludes/tests/base/stdint.h16
4 files changed, 96 insertions, 11 deletions
diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog
index a51e22d3e63..526e003e43c 100644
--- a/fixincludes/ChangeLog
+++ b/fixincludes/ChangeLog
@@ -1,3 +1,10 @@
+2007-07-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ PR libgcj/28190
+ * inclhack.def (irix_stdint_c99): New fix.
+ * fixincl.x: Regenerate.
+ * tests/base/stdint.h: New test.
+
2007-06-06 Steve Ellcey <sje@cup.hp.com>
PR testsuite/31828
diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x
index 3aeba916e0c..f6288d2661d 100644
--- a/fixincludes/fixincl.x
+++ b/fixincludes/fixincl.x
@@ -2,11 +2,11 @@
*
* DO NOT EDIT THIS FILE (fixincl.x)
*
- * It has been AutoGen-ed Tuesday June 5, 2007 at 02:48:40 PM PDT
+ * It has been AutoGen-ed Friday June 29, 2007 at 06:59:26 PM MEST
* From the definitions inclhack.def
* and the template file fixincl
*/
-/* DO NOT SVN-MERGE THIS FILE, EITHER Tue Jun 5 14:48:40 PDT 2007
+/* DO NOT SVN-MERGE THIS FILE, EITHER Fri Jun 29 18:59:26 MEST 2007
*
* You must regenerate it. Use the ./genfixes script.
*
@@ -15,7 +15,7 @@
* certain ANSI-incompatible system header files which are fixed to work
* correctly with ANSI C and placed in a directory that GNU C will search.
*
- * This file contains 209 fixup descriptions.
+ * This file contains 210 fixup descriptions.
*
* See README for more information.
*
@@ -26,8 +26,7 @@
*
* You may redistribute it and/or modify it under the terms of the
* GNU General Public License, as published by the Free Software
- * Foundation; either version 2 of the License, or (at your option)
- * any later version.
+ * Foundation; either version 2, or (at your option) any later version.
*
* inclhack is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -35,10 +34,10 @@
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with inclhack. If not, write to:
- * The Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor
- * Boston, MA 02110-1301, USA.
+ * along with inclhack. See the file "COPYING". If not,
+ * write to: The Free Software Foundation, Inc.,
+ * 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -3920,6 +3919,45 @@ typedef int socklen_t;\n\
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Irix_Stdint_C99 fix
+ */
+tSCC zIrix_Stdint_C99Name[] =
+ "irix_stdint_c99";
+
+/*
+ * File name selection pattern
+ */
+tSCC zIrix_Stdint_C99List[] =
+ "stdint.h\0";
+/*
+ * Machine/OS name selection pattern
+ */
+tSCC* apzIrix_Stdint_C99Machs[] = {
+ "mips-sgi-irix6.5",
+ (const char*)NULL };
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zIrix_Stdint_C99Select0[] =
+ "(#ifndef __c99\n\
+)(#error This header file is to be used only for c99 mode compilations)";
+
+#define IRIX_STDINT_C99_TEST_CT 1
+static tTestDesc aIrix_Stdint_C99Tests[] = {
+ { TT_EGREP, zIrix_Stdint_C99Select0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Irix_Stdint_C99
+ */
+static const char* apzIrix_Stdint_C99Patch[] = {
+ "format",
+ "#if 0\n\
+%2",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Irix_Stdio_Va_List fix
*/
tSCC zIrix_Stdio_Va_ListName[] =
@@ -8518,9 +8556,9 @@ static const char* apzX11_SprintfPatch[] = {
*
* List of all fixes
*/
-#define REGEX_COUNT 254
+#define REGEX_COUNT 255
#define MACH_LIST_SIZE_LIMIT 261
-#define FIX_COUNT 209
+#define FIX_COUNT 210
/*
* Enumerate the fixes
@@ -8619,6 +8657,7 @@ typedef enum {
IRIX_ASM_APOSTROPHE_FIXIDX,
IRIX_LIMITS_CONST_FIXIDX,
IRIX_SOCKLEN_T_FIXIDX,
+ IRIX_STDINT_C99_FIXIDX,
IRIX_STDIO_VA_LIST_FIXIDX,
IRIX_WCSFTIME_FIXIDX,
ISC_FMOD_FIXIDX,
@@ -9203,6 +9242,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
IRIX_SOCKLEN_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aIrix_Socklen_TTests, apzIrix_Socklen_TPatch, 0 },
+ { zIrix_Stdint_C99Name, zIrix_Stdint_C99List,
+ apzIrix_Stdint_C99Machs,
+ IRIX_STDINT_C99_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aIrix_Stdint_C99Tests, apzIrix_Stdint_C99Patch, 0 },
+
{ zIrix_Stdio_Va_ListName, zIrix_Stdio_Va_ListList,
apzIrix_Stdio_Va_ListMachs,
IRIX_STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def
index dbdabb25c5f..f7f9888969f 100644
--- a/fixincludes/inclhack.def
+++ b/fixincludes/inclhack.def
@@ -2211,6 +2211,24 @@ fix = {
};
/*
+ * IRIX 6.5 <stdint.h> only works with ISO C99 and errors out
+ * otherwise.
+ */
+fix = {
+ hackname = irix_stdint_c99;
+ files = stdint.h;
+ select = "(#ifndef __c99\n)(#error This header file is to be used only for c99 mode compilations)";
+
+ mach = "mips-sgi-irix6.5";
+ c_fix = format;
+ c_fix_arg = "#if 0\n"
+ "%2";
+ test_text =
+ "#ifndef __c99\n#error This header file is to be used only for c99 mode compilations\n#else";
+};
+
+
+/*
* IRIX 5.x's stdio.h and IRIX 6.5's internal/stdio_core.h declare
* some functions that take a va_list as
* taking char *. However, GCC uses void * for va_list, so
diff --git a/fixincludes/tests/base/stdint.h b/fixincludes/tests/base/stdint.h
new file mode 100644
index 00000000000..369b0120118
--- /dev/null
+++ b/fixincludes/tests/base/stdint.h
@@ -0,0 +1,16 @@
+/* DO NOT EDIT THIS FILE.
+
+ It has been auto-edited by fixincludes from:
+
+ "fixinc/tests/inc/stdint.h"
+
+ This had to be done to correct non-standard usages in the
+ original, manufacturer supplied header file. */
+
+
+
+#if defined( IRIX_STDINT_C99_CHECK )
+#if 0
+#error This header file is to be used only for c99 mode compilations
+#else
+#endif /* IRIX_STDINT_C99_CHECK */