inclhack.def (hpux_htonl): New fix.

* inclhack.def (hpux_htonl): New fix.
	* tests/base/netinet/in.h: New test.
	* fixincl.x: Regenerate.

From-SVN: r96522
This commit is contained in:
Joseph Myers 2005-03-15 17:37:03 +00:00 committed by Joseph Myers
parent 6dcd18b9aa
commit 7fbdc950de
4 changed files with 109 additions and 5 deletions

View File

@ -1,3 +1,9 @@
2005-03-15 Joseph S. Myers <joseph@codesourcery.com>
* inclhack.def (hpux_htonl): New fix.
* tests/base/netinet/in.h: New test.
* fixincl.x: Regenerate.
2005-02-23 James E Wilson <wilson@specifixinc.com>
* Makefile.in (full-stamp, test-stamp, $(AF)): Add $(CFLAGS) to link.

View File

@ -2,11 +2,11 @@
*
* DO NOT EDIT THIS FILE (fixincl.x)
*
* It has been AutoGen-ed Friday November 26, 2004 at 09:59:26 PM UTC
* It has been AutoGen-ed Monday March 14, 2005 at 09:43:34 PM UTC
* From the definitions inclhack.def
* and the template file fixincl
*/
/* DO NOT CVS-MERGE THIS FILE, EITHER Fri Nov 26 21:59:26 UTC 2004
/* DO NOT CVS-MERGE THIS FILE, EITHER Mon Mar 14 21:43:34 UTC 2005
*
* 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 177 fixup descriptions.
* This file contains 178 fixup descriptions.
*
* See README for more information.
*
@ -2646,6 +2646,46 @@ static const char* apzHpux_Ctype_MacrosPatch[] = {
"%1(int)%3",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
* Description of Hpux_Htonl fix
*/
tSCC zHpux_HtonlName[] =
"hpux_htonl";
/*
* File name selection pattern
*/
tSCC zHpux_HtonlList[] =
"|netinet/in.h|";
/*
* Machine/OS name selection pattern
*/
#define apzHpux_HtonlMachs (const char**)NULL
/*
* content selection pattern - do fix if pattern found
*/
tSCC zHpux_HtonlSelect0[] =
"#ifndef _XOPEN_SOURCE_EXTENDED\n\
(/\\*\n\
\\* Macros for number representation conversion\\.\n\
\\*/\n\
#ifndef ntohl)";
#define HPUX_HTONL_TEST_CT 1
static tTestDesc aHpux_HtonlTests[] = {
{ TT_EGREP, zHpux_HtonlSelect0, (regex_t*)NULL }, };
/*
* Fix Command Arguments for Hpux_Htonl
*/
static const char* apzHpux_HtonlPatch[] = {
"format",
"#if 1\n\
%1",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
* Description of Hpux_Long_Double fix
@ -7085,9 +7125,9 @@ static const char* apzX11_SprintfPatch[] = {
*
* List of all fixes
*/
#define REGEX_COUNT 207
#define REGEX_COUNT 208
#define MACH_LIST_SIZE_LIMIT 261
#define FIX_COUNT 177
#define FIX_COUNT 178
/*
* Enumerate the fixes
@ -7156,6 +7196,7 @@ typedef enum {
HPUX11_VSNPRINTF_FIXIDX,
HPUX8_BOGUS_INLINES_FIXIDX,
HPUX_CTYPE_MACROS_FIXIDX,
HPUX_HTONL_FIXIDX,
HPUX_LONG_DOUBLE_FIXIDX,
HPUX_SYSTIME_FIXIDX,
INT_ABORT_FREE_AND_EXIT_FIXIDX,
@ -7588,6 +7629,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
HPUX_CTYPE_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aHpux_Ctype_MacrosTests, apzHpux_Ctype_MacrosPatch, 0 },
{ zHpux_HtonlName, zHpux_HtonlList,
apzHpux_HtonlMachs,
HPUX_HTONL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aHpux_HtonlTests, apzHpux_HtonlPatch, 0 },
{ zHpux_Long_DoubleName, zHpux_Long_DoubleList,
apzHpux_Long_DoubleMachs,
HPUX_LONG_DOUBLE_TEST_CT, FD_MACH_ONLY,

View File

@ -1506,6 +1506,34 @@ fix = {
};
/*
* Fix hpux broken #ifndef _XOPEN_SOURCE_EXTENDED conditional on htonl etc.
*/
fix = {
hackname = hpux_htonl;
files = netinet/in.h;
select = "#ifndef _XOPEN_SOURCE_EXTENDED\n"
"(/\\*\n"
" \\* Macros for number representation conversion\\.\n"
" \\*/\n"
"#ifndef ntohl)";
c_fix = format;
c_fix_arg = "#if 1\n%1";
test_text = "#ifndef _XOPEN_SOURCE_EXTENDED\n"
"/*\n"
" * Macros for number representation conversion.\n"
" */\n"
"#ifndef ntohl\n"
"#define ntohl(x) (x)\n"
"#define ntohs(x) (x)\n"
"#define htonl(x) (x)\n"
"#define htons(x) (x)\n"
"#endif\n"
"#endif /* ! _XOPEN_SOURCE_EXTENDED */";
};
/*
* HP-UX long_double
*/

View File

@ -0,0 +1,24 @@
/* DO NOT EDIT THIS FILE.
It has been auto-edited by fixincludes from:
"fixinc/tests/inc/netinet/in.h"
This had to be done to correct non-standard usages in the
original, manufacturer supplied header file. */
#if defined( HPUX_HTONL_CHECK )
#if 1
/*
* Macros for number representation conversion.
*/
#ifndef ntohl
#define ntohl(x) (x)
#define ntohs(x) (x)
#define htonl(x) (x)
#define htons(x) (x)
#endif
#endif /* ! _XOPEN_SOURCE_EXTENDED */
#endif /* HPUX_HTONL_CHECK */