aboutsummaryrefslogtreecommitdiff
path: root/fixincludes
diff options
context:
space:
mode:
authorJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>2006-10-07 16:35:11 +0000
committerJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>2006-10-07 16:35:11 +0000
commitb2d54260817b7ece86c0f831e497870ba70477b1 (patch)
treed9a1e4e898c98fe587672ec11a57e3eeba05e2ef /fixincludes
parent1ddb92d9da0e4d681ce81b0d7f3b8fe0eef0bdf6 (diff)
PR target/29300
* inclhack.def (hpux_pthread_initializers): New hack. * tests/base/sys/pthread.h: New file. * fixincl.x: Regenerate. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@117537 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'fixincludes')
-rw-r--r--fixincludes/ChangeLog8
-rw-r--r--fixincludes/fixincl.x54
-rw-r--r--fixincludes/inclhack.def41
-rw-r--r--fixincludes/tests/base/sys/pthread.h22
4 files changed, 121 insertions, 4 deletions
diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog
index bcc7652a061..d91b1224f32 100644
--- a/fixincludes/ChangeLog
+++ b/fixincludes/ChangeLog
@@ -1,3 +1,11 @@
+2006-10-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/29300
+ * inclhack.def (hpux_pthread_initializers): New hack.
+ * tests/base/sys/pthread.h: New file.
+
+ * fixincl.x: Regenerate.
+
2006-10-03 Uros Bizjak <uros@kss-loka.si>
* inclhack.def (glibc_mutex_init): Also fix
diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x
index d6957846ff5..3c1716f79ce 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 October 3, 2006 at 07:43:53 AM CEST
+ * It has been AutoGen-ed Saturday October 7, 2006 at 12:32:06 PM EDT
* From the definitions inclhack.def
* and the template file fixincl
*/
-/* DO NOT CVS-MERGE THIS FILE, EITHER Tue Oct 3 07:43:53 CEST 2006
+/* DO NOT CVS-MERGE THIS FILE, EITHER Sat Oct 7 12:32:07 EDT 2006
*
* 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 200 fixup descriptions.
+ * This file contains 201 fixup descriptions.
*
* See README for more information.
*
@@ -3081,6 +3081,46 @@ extern \"C\" {\n\
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Hpux_Pthread_Initializers fix
+ */
+tSCC zHpux_Pthread_InitializersName[] =
+ "hpux_pthread_initializers";
+
+/*
+ * File name selection pattern
+ */
+tSCC zHpux_Pthread_InitializersList[] =
+ "|sys/pthread.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+tSCC* apzHpux_Pthread_InitializersMachs[] = {
+ "*-hp-hpux11.[0-3]*",
+ (const char*)NULL };
+#define HPUX_PTHREAD_INITIALIZERS_TEST_CT 0
+#define aHpux_Pthread_InitializersTests (tTestDesc*)NULL
+
+/*
+ * Fix Command Arguments for Hpux_Pthread_Initializers
+ */
+static const char* apzHpux_Pthread_InitializersPatch[] = { "sed",
+ "-e", "s@^[ \t]*1, 1, 1, 1,[ \t]*\\\\@\t{ 1, 1, 1, 1 },\t\t\t\t\t\t\t\\\\@",
+ "-e", "s@^[ \t]*1,[ \t]*\\\\@\t{ 1, 0 }@",
+ "-e", "/^[ \t]*0$/d",
+ "-e", "s@__PTHREAD_MUTEX_VALID, 0@{ __PTHREAD_MUTEX_VALID, 0 }@",
+ "-e", "s@^[ \t]*0, 0, -1, 0,[ \t]*\\\\@\t{ 0, 0, -1, 0 },\t\t\t\t\t\t\\\\@",
+ "-e", "s@0, __LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\@{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@",
+ "-e", "s@^[ \t]*__LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\@\t{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@",
+ "-e", "s@^[ \t]*0, 0[ \t]*\\\\@\t{ 0, 0 }\t\t\t\t\t\t\t\\\\@",
+ "-e", "s@__PTHREAD_COND_VALID, 0@{ __PTHREAD_COND_VALID, 0 }@",
+ "-e", "s@__LWP_COND_VALID, 0,[ \t]*\\\\@{ __LWP_COND_VALID, 0 },\t\t\t\t\t\\\\@",
+ "-e", "s@__PTHREAD_RWLOCK_VALID, 0@{ __PTHREAD_RWLOCK_VALID, 0 }@",
+ "-e", "s@__LWP_RWLOCK_VALID, 0,[ \t]*\\\\@{ __LWP_RWLOCK_VALID, 0 },\t\t\t\t\t\\\\@",
+ "-e", "s@^[ \t]*0, 0, 0, 0, 0, 0, 0[ \t]*\\\\@\t{ 0, 0, 0, 0, 0 }, { 0, 0}\t\t\t\t\t\\\\@",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Huge_Val_Hex fix
*/
tSCC zHuge_Val_HexName[] =
@@ -8145,7 +8185,7 @@ static const char* apzX11_SprintfPatch[] = {
*/
#define REGEX_COUNT 243
#define MACH_LIST_SIZE_LIMIT 261
-#define FIX_COUNT 200
+#define FIX_COUNT 201
/*
* Enumerate the fixes
@@ -8223,6 +8263,7 @@ typedef enum {
HPUX_SYSTIME_FIXIDX,
HPUX_SPU_INFO_FIXIDX,
HPUX_EXTERN_ERRNO_FIXIDX,
+ HPUX_PTHREAD_INITIALIZERS_FIXIDX,
HUGE_VAL_HEX_FIXIDX,
HUGE_VALF_HEX_FIXIDX,
HUGE_VALL_HEX_FIXIDX,
@@ -8714,6 +8755,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
HPUX_EXTERN_ERRNO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aHpux_Extern_ErrnoTests, apzHpux_Extern_ErrnoPatch, 0 },
+ { zHpux_Pthread_InitializersName, zHpux_Pthread_InitializersList,
+ apzHpux_Pthread_InitializersMachs,
+ HPUX_PTHREAD_INITIALIZERS_TEST_CT, FD_MACH_ONLY,
+ aHpux_Pthread_InitializersTests, apzHpux_Pthread_InitializersPatch, 0 },
+
{ zHuge_Val_HexName, zHuge_Val_HexList,
apzHuge_Val_HexMachs,
HUGE_VAL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def
index a1cdab17b53..015391594f9 100644
--- a/fixincludes/inclhack.def
+++ b/fixincludes/inclhack.def
@@ -1790,6 +1790,47 @@ fix = {
test_text = " extern int errno;\n";
};
+/*
+ * Add missing braces to pthread initializer defines.
+ */
+fix = {
+ hackname = hpux_pthread_initializers;
+ mach = "*-hp-hpux11.[0-3]*";
+ files = sys/pthread.h;
+ sed = "s@^[ \t]*1, 1, 1, 1,[ \t]*\\\\"
+ "@\t{ 1, 1, 1, 1 },\t\t\t\t\t\t\t\\\\@";
+ sed = "s@^[ \t]*1,[ \t]*\\\\"
+ "@\t{ 1, 0 }@";
+ sed = "/^[ \t]*0$/d";
+ sed = "s@__PTHREAD_MUTEX_VALID, 0"
+ "@{ __PTHREAD_MUTEX_VALID, 0 }@";
+ sed = "s@^[ \t]*0, 0, -1, 0,[ \t]*\\\\"
+ "@\t{ 0, 0, -1, 0 },\t\t\t\t\t\t\\\\@";
+ sed = "s@0, __LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\"
+ "@{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@";
+ sed = "s@^[ \t]*__LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\"
+ "@\t{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@";
+ sed = "s@^[ \t]*0, 0[ \t]*\\\\"
+ "@\t{ 0, 0 }\t\t\t\t\t\t\t\\\\@";
+ sed = "s@__PTHREAD_COND_VALID, 0"
+ "@{ __PTHREAD_COND_VALID, 0 }@";
+ sed = "s@__LWP_COND_VALID, 0,[ \t]*\\\\"
+ "@{ __LWP_COND_VALID, 0 },\t\t\t\t\t\\\\@";
+ sed = "s@__PTHREAD_RWLOCK_VALID, 0"
+ "@{ __PTHREAD_RWLOCK_VALID, 0 }@";
+ sed = "s@__LWP_RWLOCK_VALID, 0,[ \t]*\\\\"
+ "@{ __LWP_RWLOCK_VALID, 0 },\t\t\t\t\t\\\\@";
+ sed = "s@^[ \t]*0, 0, 0, 0, 0, 0, 0[ \t]*\\\\"
+ "@\t{ 0, 0, 0, 0, 0 }, { 0, 0}\t\t\t\t\t\\\\@";
+ test_text = "#define PTHREAD_MUTEX_INITIALIZER {\t\t\t\t\t\\\\\n"
+ "\t__PTHREAD_MUTEX_VALID, 0,\t\t\t\t\t\\\\\n"
+ "\t(PTHREAD_MUTEX_DEFAULT | PTHREAD_PROCESS_PRIVATE),\t\t\\\\\n"
+ "\t__SPNLCK_INITIALIZER,\t\t\t\t\t\t\\\\\n"
+ "\t0, 0, -1, 0,\t\t\t\t\t\t\t\\\\\n"
+ "\t0, __LWP_MTX_VALID, 0, 1, 1, 1, 1,\t\t\t\t\\\\\n"
+ "\t0, 0\t\t\t\t\t\t\t\t\\\\\n"
+ "}\n";
+};
/*
* Fix glibc definition of HUGE_VAL in terms of hex floating point constant
diff --git a/fixincludes/tests/base/sys/pthread.h b/fixincludes/tests/base/sys/pthread.h
new file mode 100644
index 00000000000..9948288d92a
--- /dev/null
+++ b/fixincludes/tests/base/sys/pthread.h
@@ -0,0 +1,22 @@
+/* DO NOT EDIT THIS FILE.
+
+ It has been auto-edited by fixincludes from:
+
+ "fixinc/tests/inc/sys/pthread.h"
+
+ This had to be done to correct non-standard usages in the
+ original, manufacturer supplied header file. */
+
+
+
+#if defined( HPUX_PTHREAD_INITIALIZERS_CHECK )
+#define PTHREAD_MUTEX_INITIALIZER { \
+ { __PTHREAD_MUTEX_VALID, 0 }, \
+ (PTHREAD_MUTEX_DEFAULT | PTHREAD_PROCESS_PRIVATE), \
+ __SPNLCK_INITIALIZER, \
+ { 0, 0, -1, 0 }, \
+ { 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 }, \
+ { 0, 0 } \
+}
+
+#endif /* HPUX_PTHREAD_INITIALIZERS_CHECK */