Wed, 08 Aug 2012 20:34:03 +0200
Blind commit, as it seems this is needed to correct building on SVR5.
michael@407 | 1 | Index: fixincludes/fixincl.x |
michael@407 | 2 | diff -Nau fixincludes/fixincl.x.orig fixincludes/fixincl.x |
michael@407 | 3 | --- fixincludes/fixincl.x.orig 2010-11-09 11:26:09.000000000 +0100 |
michael@407 | 4 | +++ fixincludes/fixincl.x 2012-03-18 17:12:11.061364028 +0100 |
michael@407 | 5 | @@ -15,7 +15,7 @@ |
michael@407 | 6 | * certain ANSI-incompatible system header files which are fixed to work |
michael@407 | 7 | * correctly with ANSI C and placed in a directory that GNU C will search. |
michael@407 | 8 | * |
michael@407 | 9 | - * This file contains 210 fixup descriptions. |
michael@407 | 10 | + * This file contains 211 fixup descriptions. |
michael@407 | 11 | * |
michael@407 | 12 | * See README for more information. |
michael@407 | 13 | * |
michael@407 | 14 | @@ -6969,6 +6969,43 @@ |
michael@407 | 15 | |
michael@407 | 16 | /* * * * * * * * * * * * * * * * * * * * * * * * * * |
michael@407 | 17 | * |
michael@407 | 18 | + * Description of Solaris_Posix_Spawn_Restrict fix |
michael@407 | 19 | + */ |
michael@407 | 20 | +tSCC zSolaris_Posix_Spawn_RestrictName[] = |
michael@407 | 21 | + "solaris_posix_spawn_restrict"; |
michael@407 | 22 | + |
michael@407 | 23 | +/* |
michael@407 | 24 | + * File name selection pattern |
michael@407 | 25 | + */ |
michael@407 | 26 | +tSCC zSolaris_Posix_Spawn_RestrictList[] = |
michael@407 | 27 | + "spawn.h\0"; |
michael@407 | 28 | +/* |
michael@407 | 29 | + * Machine/OS name selection pattern |
michael@407 | 30 | + */ |
michael@407 | 31 | +tSCC* apzSolaris_Posix_Spawn_RestrictMachs[] = { |
michael@407 | 32 | + "*-*-solaris2*", |
michael@407 | 33 | + (const char*)NULL }; |
michael@407 | 34 | + |
michael@407 | 35 | +/* |
michael@407 | 36 | + * content selection pattern - do fix if pattern found |
michael@407 | 37 | + */ |
michael@407 | 38 | +tSCC zSolaris_Posix_Spawn_RestrictSelect0[] = |
michael@407 | 39 | + "(.*[ \t]+)([a-z]+)\\[_RESTRICT_KYWD\\](.*)"; |
michael@407 | 40 | + |
michael@407 | 41 | +#define SOLARIS_POSIX_SPAWN_RESTRICT_TEST_CT 1 |
michael@407 | 42 | +static tTestDesc aSolaris_Posix_Spawn_RestrictTests[] = { |
michael@407 | 43 | + { TT_EGREP, zSolaris_Posix_Spawn_RestrictSelect0, (regex_t*)NULL }, }; |
michael@407 | 44 | + |
michael@407 | 45 | +/* |
michael@407 | 46 | + * Fix Command Arguments for Solaris_Posix_Spawn_Restrict |
michael@407 | 47 | + */ |
michael@407 | 48 | +static const char* apzSolaris_Posix_Spawn_RestrictPatch[] = { |
michael@407 | 49 | + "format", |
michael@407 | 50 | + "%1*_RESTRICT_KYWD %2%3", |
michael@407 | 51 | + (char*)NULL }; |
michael@407 | 52 | + |
michael@407 | 53 | +/* * * * * * * * * * * * * * * * * * * * * * * * * * |
michael@407 | 54 | + * |
michael@407 | 55 | * Description of Solaris_Stdio_Tag fix |
michael@407 | 56 | */ |
michael@407 | 57 | tSCC zSolaris_Stdio_TagName[] = |
michael@407 | 58 | @@ -8552,9 +8589,9 @@ |
michael@407 | 59 | * |
michael@407 | 60 | * List of all fixes |
michael@407 | 61 | */ |
michael@407 | 62 | -#define REGEX_COUNT 249 |
michael@407 | 63 | +#define REGEX_COUNT 250 |
michael@407 | 64 | #define MACH_LIST_SIZE_LIMIT 181 |
michael@407 | 65 | -#define FIX_COUNT 210 |
michael@407 | 66 | +#define FIX_COUNT 211 |
michael@407 | 67 | |
michael@407 | 68 | /* |
michael@407 | 69 | * Enumerate the fixes |
michael@407 | 70 | @@ -8731,6 +8768,7 @@ |
michael@407 | 71 | SOLARIS_INT_LIMITS_2_FIXIDX, |
michael@407 | 72 | SOLARIS_INT_LIMITS_3_FIXIDX, |
michael@407 | 73 | SOLARIS_INT_TYPES_FIXIDX, |
michael@407 | 74 | + SOLARIS_POSIX_SPAWN_RESTRICT_FIXIDX, |
michael@407 | 75 | SOLARIS_STDIO_TAG_FIXIDX, |
michael@407 | 76 | SOLARIS_SYS_VA_LIST_FIXIDX, |
michael@407 | 77 | STATSSWTCH_FIXIDX, |
michael@407 | 78 | @@ -9628,6 +9666,11 @@ |
michael@407 | 79 | SOLARIS_INT_TYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, |
michael@407 | 80 | aSolaris_Int_TypesTests, apzSolaris_Int_TypesPatch, 0 }, |
michael@407 | 81 | |
michael@407 | 82 | + { zSolaris_Posix_Spawn_RestrictName, zSolaris_Posix_Spawn_RestrictList, |
michael@407 | 83 | + apzSolaris_Posix_Spawn_RestrictMachs, |
michael@407 | 84 | + SOLARIS_POSIX_SPAWN_RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, |
michael@407 | 85 | + aSolaris_Posix_Spawn_RestrictTests, apzSolaris_Posix_Spawn_RestrictPatch, 0 }, |
michael@407 | 86 | + |
michael@407 | 87 | { zSolaris_Stdio_TagName, zSolaris_Stdio_TagList, |
michael@407 | 88 | apzSolaris_Stdio_TagMachs, |
michael@407 | 89 | SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY, |
michael@407 | 90 | Index: fixincludes/inclhack.def |
michael@407 | 91 | diff -Nau fixincludes/inclhack.def.orig fixincludes/inclhack.def |
michael@407 | 92 | --- fixincludes/inclhack.def.orig 2010-11-09 11:26:09.000000000 +0100 |
michael@407 | 93 | +++ fixincludes/inclhack.def 2012-03-18 17:07:13.464117283 +0100 |
michael@407 | 94 | @@ -3693,6 +3693,23 @@ |
michael@407 | 95 | |
michael@407 | 96 | |
michael@407 | 97 | /* |
michael@407 | 98 | + * Solaris 10+ <spawn.h> uses char *const argv[_RESTRICT_KYWD] in the |
michael@407 | 99 | + * posix_spawn declarations, which doesn't work with C++. |
michael@407 | 100 | + */ |
michael@407 | 101 | +fix = { |
michael@407 | 102 | + hackname = solaris_posix_spawn_restrict; |
michael@407 | 103 | + files = spawn.h; |
michael@407 | 104 | + mach = '*-*-solaris2*'; |
michael@407 | 105 | + c_fix = format; |
michael@407 | 106 | + c_fix_arg = "%1*_RESTRICT_KYWD %2%3"; |
michael@407 | 107 | + select = "(.*[ \t]+)([a-z]+)\\[_RESTRICT_KYWD\\](.*)"; |
michael@407 | 108 | + test_text = |
michael@407 | 109 | + "char *const argv[_RESTRICT_KYWD],\n" |
michael@407 | 110 | + "char *const envp[_RESTRICT_KYWD]);"; |
michael@407 | 111 | +}; |
michael@407 | 112 | + |
michael@407 | 113 | + |
michael@407 | 114 | +/* |
michael@407 | 115 | * Sun Solaris 8 has what appears to be some gross workaround for |
michael@407 | 116 | * some old version of their c++ compiler. G++ doesn't want it |
michael@407 | 117 | * either, but doesn't want to be tied to SunPRO version numbers. |
michael@407 | 118 | Index: fixincludes/tests/base/spawn.h |
michael@407 | 119 | diff -Nau fixincludes/tests/base/spawn.h.orig fixincludes/tests/base/spawn.h |
michael@407 | 120 | --- fixincludes/tests/base/spawn.h.orig 1970-01-01 01:00:00.000000000 +0100 |
michael@407 | 121 | +++ fixincludes/tests/base/spawn.h 2012-03-18 15:28:02.432219498 +0100 |
michael@407 | 122 | @@ -0,0 +1,15 @@ |
michael@407 | 123 | +/* DO NOT EDIT THIS FILE. |
michael@407 | 124 | + |
michael@407 | 125 | + It has been auto-edited by fixincludes from: |
michael@407 | 126 | + |
michael@407 | 127 | + "fixinc/tests/inc/spawn.h" |
michael@407 | 128 | + |
michael@407 | 129 | + This had to be done to correct non-standard usages in the |
michael@407 | 130 | + original, manufacturer supplied header file. */ |
michael@407 | 131 | + |
michael@407 | 132 | + |
michael@407 | 133 | + |
michael@407 | 134 | +#if defined( SOLARIS_POSIX_SPAWN_RESTRICT_CHECK ) |
michael@407 | 135 | +char *const *_RESTRICT_KYWD argv, |
michael@407 | 136 | +char *const *_RESTRICT_KYWD envp); |
michael@407 | 137 | +#endif /* SOLARIS_POSIX_SPAWN_RESTRICT_CHECK */ |