inclhack.def (AAB_aix_fcntl): New fix.
* inclhack.def (AAB_aix_fcntl): New fix. * fixincl.x: Regenerate. From-SVN: r191859
This commit is contained in:
parent
b64ca2cebd
commit
31d206662a
@ -1,3 +1,8 @@
|
||||
2012-09-29 David Edelsohn <dje.gcc@gmail.com>
|
||||
|
||||
* inclhack.def (AAB_aix_fcntl): New fix.
|
||||
* fixincl.x: Regenerate.
|
||||
|
||||
2012-06-19 David Edelsohn <dje.gcc@gmail.com>
|
||||
|
||||
* inclhack.def (aix_mutex_initializer_1): New fix.
|
||||
|
@ -2,11 +2,11 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (fixincl.x)
|
||||
*
|
||||
* It has been AutoGen-ed June 19, 2012 at 09:23:54 AM by AutoGen 5.10
|
||||
* It has been AutoGen-ed Saturday September 29, 2012 at 01:58:03 PM PDT
|
||||
* From the definitions inclhack.def
|
||||
* and the template file fixincl
|
||||
*/
|
||||
/* DO NOT SVN-MERGE THIS FILE, EITHER Tue Jun 19 09:23:54 EDT 2012
|
||||
/* DO NOT SVN-MERGE THIS FILE, EITHER Sat Sep 29 13:58:03 PDT 2012
|
||||
*
|
||||
* 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 215 fixup descriptions.
|
||||
* This file contains 216 fixup descriptions.
|
||||
*
|
||||
* See README for more information.
|
||||
*
|
||||
@ -99,6 +99,60 @@ extern off64_t ftello(FILE *) __asm__(\"ftello64\");\n\
|
||||
#endif\n",
|
||||
(char*)NULL };
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Description of Aab_Aix_Fcntl fix
|
||||
*/
|
||||
tSCC zAab_Aix_FcntlName[] =
|
||||
"AAB_aix_fcntl";
|
||||
|
||||
/*
|
||||
* File name selection pattern
|
||||
*/
|
||||
tSCC zAab_Aix_FcntlList[] =
|
||||
"fcntl.h\0";
|
||||
/*
|
||||
* Machine/OS name selection pattern
|
||||
*/
|
||||
tSCC* apzAab_Aix_FcntlMachs[] = {
|
||||
"*-*-aix*",
|
||||
(const char*)NULL };
|
||||
|
||||
/*
|
||||
* content selection pattern - do fix if pattern found
|
||||
*/
|
||||
tSCC zAab_Aix_FcntlSelect0[] =
|
||||
"define open[ \t]open64";
|
||||
|
||||
#define AAB_AIX_FCNTL_TEST_CT 1
|
||||
static tTestDesc aAab_Aix_FcntlTests[] = {
|
||||
{ TT_EGREP, zAab_Aix_FcntlSelect0, (regex_t*)NULL }, };
|
||||
|
||||
/*
|
||||
* Fix Command Arguments for Aab_Aix_Fcntl
|
||||
*/
|
||||
static const char* apzAab_Aix_FcntlPatch[] = {
|
||||
"wrap",
|
||||
"",
|
||||
"\n\
|
||||
#if defined __GNUG__ && defined _LARGE_FILES && defined __cplusplus\n\
|
||||
#define __need__aix_fcntl_h_fix\n\
|
||||
#ifdef __need__aix_fcntl_h_fix\n\
|
||||
#undef open\n\
|
||||
#undef creat\n\
|
||||
#undef openat\n\
|
||||
/* Alias the symbols using asm */\n\
|
||||
extern \"C\" {\n\
|
||||
extern int open(const char *, int, ...) __asm__(\"open64\");\n\
|
||||
extern int creat(const char *, mode_t) __asm__(\"creat64\");\n\
|
||||
#if (_XOPEN_SOURCE >= 700)\n\
|
||||
extern int openat(int, const char *, int, ...) __asm__(\"open64at\");\n\
|
||||
#endif\n\
|
||||
}\n\
|
||||
#endif\n\
|
||||
#endif\n",
|
||||
(char*)NULL };
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Description of Aab_Darwin7_9_Long_Double_Funcs fix
|
||||
@ -8746,15 +8800,16 @@ static const char* apzX11_SprintfPatch[] = {
|
||||
*
|
||||
* List of all fixes
|
||||
*/
|
||||
#define REGEX_COUNT 258
|
||||
#define REGEX_COUNT 259
|
||||
#define MACH_LIST_SIZE_LIMIT 181
|
||||
#define FIX_COUNT 215
|
||||
#define FIX_COUNT 216
|
||||
|
||||
/*
|
||||
* Enumerate the fixes
|
||||
*/
|
||||
typedef enum {
|
||||
AAB_AIX_STDIO_FIXIDX,
|
||||
AAB_AIX_FCNTL_FIXIDX,
|
||||
AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_FIXIDX,
|
||||
AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_FIXIDX,
|
||||
AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
|
||||
@ -8977,6 +9032,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
|
||||
AAB_AIX_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
|
||||
aAab_Aix_StdioTests, apzAab_Aix_StdioPatch, 0 },
|
||||
|
||||
{ zAab_Aix_FcntlName, zAab_Aix_FcntlList,
|
||||
apzAab_Aix_FcntlMachs,
|
||||
AAB_AIX_FCNTL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
|
||||
aAab_Aix_FcntlTests, apzAab_Aix_FcntlPatch, 0 },
|
||||
|
||||
{ zAab_Darwin7_9_Long_Double_FuncsName, zAab_Darwin7_9_Long_Double_FuncsList,
|
||||
apzAab_Darwin7_9_Long_Double_FuncsMachs,
|
||||
AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
|
||||
|
@ -65,6 +65,45 @@ fix = {
|
||||
};
|
||||
|
||||
|
||||
/* On AIX when _LARGE_FILES is defined fcntl.h defines open to
|
||||
* open64 and creat to creat64. This fixes fcntl.h to
|
||||
* undef those defines and use __asm__ to alias the symbols if
|
||||
* building with g++ and -D_LARGE_FILES
|
||||
*/
|
||||
fix = {
|
||||
hackname = AAB_aix_fcntl;
|
||||
files = fcntl.h;
|
||||
select = "define open[ \t]open64";
|
||||
mach = "*-*-aix*";
|
||||
test-text = ''; /* no way to test */
|
||||
|
||||
c_fix = wrap;
|
||||
|
||||
c_fix_arg = "";
|
||||
|
||||
c_fix_arg = <<- _EOArg_
|
||||
|
||||
#if defined __GNUG__ && defined _LARGE_FILES && defined __cplusplus
|
||||
#define __need__aix_fcntl_h_fix
|
||||
#ifdef __need__aix_fcntl_h_fix
|
||||
#undef open
|
||||
#undef creat
|
||||
#undef openat
|
||||
/* Alias the symbols using asm */
|
||||
extern "C" {
|
||||
extern int open(const char *, int, ...) __asm__("open64");
|
||||
extern int creat(const char *, mode_t) __asm__("creat64");
|
||||
#if (_XOPEN_SOURCE >= 700)
|
||||
extern int openat(int, const char *, int, ...) __asm__("open64at");
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
_EOArg_;
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* On Mac OS 10.3.9, the 'long double' functions are available in
|
||||
* libSystem, but are not prototyped in math.h.
|
||||
|
Loading…
Reference in New Issue
Block a user