mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-25 19:59:55 +08:00
9902495604
From-SVN: r18731
152 lines
3.5 KiB
Smarty
152 lines
3.5 KiB
Smarty
[= autogen template -*- Mode: C -*-
|
|
x =]
|
|
/*
|
|
[= _eval "# * " _DNE =]
|
|
*
|
|
* Install modified versions of 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 script contains [=_eval fix _hilim 1 +=] fixup scripts.
|
|
*
|
|
* See README-fixinc for more information.
|
|
*
|
|
[=_eval inclhack "# * " _gpl=]
|
|
*[=
|
|
|
|
|
|
_FOR fix =]
|
|
*
|
|
* Description [=_eval _index 1 + "#%3d -" _printf=] [=hackname _Cap=] fix
|
|
*/
|
|
tSCC z[=hackname _cap=]Name[] =
|
|
[=hackname _cap _str=];
|
|
/*
|
|
* File name selection pattern
|
|
*/[=
|
|
|
|
_IF files _exist=]
|
|
tSCC z[=hackname _cap=]List[] =[=
|
|
_FOR files=]
|
|
"|" [=files _str=][=
|
|
/files=] "|";[=
|
|
|
|
_ELSE =]
|
|
#define z[=hackname _cap=]List (char*)NULL[=
|
|
_ENDIF "files _exist" =][=
|
|
|
|
_IF exesel _exist=]
|
|
|
|
/*
|
|
* content selection pattern
|
|
*/[=
|
|
_FOR exesel =]
|
|
tSCC z[=hackname _cap=]Select[=_eval _index=][] =
|
|
[=exesel _str=];[=
|
|
/exesel =][=
|
|
|
|
_ELIF select _exist=]
|
|
|
|
/*
|
|
* content selection pattern
|
|
*/[=
|
|
_FOR select =]
|
|
tSCC z[=hackname _cap=]Select[=_eval _index=][] =
|
|
[=select _str=];[=
|
|
/select =][=
|
|
_ENDIF =][=
|
|
|
|
_IF bypass _exist=]
|
|
|
|
/*
|
|
* content bypass pattern
|
|
*/[=
|
|
_FOR bypass =]
|
|
tSCC z[=hackname _cap=]Bypass[=_eval _index=][] =
|
|
[=bypass _str=];[=
|
|
/bypass =][=
|
|
_ENDIF =][=
|
|
|
|
_IF test _exist=]
|
|
|
|
/*
|
|
* content test pattern. A shell will deal with it later.
|
|
*/[=
|
|
_FOR test =]
|
|
tSCC z[=hackname _cap=]Test[=_eval _index=][] =
|
|
[=test _str=];[=
|
|
/test =][=
|
|
_ENDIF =][=
|
|
|
|
_IF exesel _exist select _exist bypass _exist test _exist | | |
|
|
=]
|
|
|
|
#define [=hackname _up =]_TEST_CT [=
|
|
_IF exesel _exist =][=
|
|
_eval test _count bypass _count exesel _count + + =][=
|
|
_ELSE =][=
|
|
_eval test _count bypass _count select _count + + =][=
|
|
_ENDIF =]
|
|
tTestDesc a[=hackname _cap=]Tests[] = {[=
|
|
|
|
_IF test _exist =][=
|
|
_FOR test=]
|
|
{ TT_TEST, z[=hackname _cap=]Test[=_eval _index=], 0 /* unused */ },[=
|
|
/test =][=
|
|
_ENDIF =][=
|
|
|
|
_IF bypass _exist =][=
|
|
_FOR bypass=]
|
|
{ TT_NEGREP, z[=hackname _cap=]Bypass[=_eval _index=], (regex_t*)NULL },[=
|
|
/bypass =][=
|
|
_ENDIF =][=
|
|
|
|
_IF exesel _exist =][=
|
|
_FOR exesel ,=]
|
|
{ TT_EGREP, z[=hackname _cap=]Select[=_eval _index=], (regex_t*)NULL }[=
|
|
/exesel =][=
|
|
|
|
_ELIF select _exist =][=
|
|
_FOR select ,=]
|
|
{ TT_EGREP, z[=hackname _cap=]Select[=_eval _index=], (regex_t*)NULL }[=
|
|
/select =][=
|
|
_ENDIF =] };[=
|
|
_ELSE =]
|
|
#define [=hackname _up=]_TEST_CT 0
|
|
#define a[=hackname _cap=]Tests (tTestDesc*)NULL[=
|
|
_ENDIF =]
|
|
|
|
/*
|
|
* Fix Command Arguments for [=hackname _cap=]
|
|
*/
|
|
const char* apz[=hackname _cap=]Patch[] = {[=
|
|
_IF sed _exist =] "sed"[=_FOR sed=],
|
|
"-e" [=sed _str=][=/sed=][=
|
|
_ELIF replacement _exist =] "sed",
|
|
"s@[=select[]=]@[=replacement=]@"[=
|
|
_ELIF shell _exist =] "sh", "-c",
|
|
[=shell _str=][=
|
|
_ELSE =][=_ERROR hackname _get "Error: %s has two fixup specifications"
|
|
_printf =][=
|
|
_ENDIF=],
|
|
(char*)NULL };
|
|
|
|
/* * * * * * * * * * * * * * * * * * * * * * * * * *[=
|
|
/fix=]
|
|
*
|
|
* List of all fixes
|
|
*/
|
|
#define REGEX_COUNT [=_eval fix.select _count
|
|
fix.bypass _count + =]
|
|
#define FIX_COUNT [=_eval fix _count =]
|
|
tFixDesc fixDescList[ [=_eval fix _count =] ] = {[=
|
|
|
|
|
|
_FOR fix ",\n" =]
|
|
{ z[=hackname _cap=]Name, z[=hackname _cap=]List, (regex_t*)NULL,
|
|
[=hackname _up=]_TEST_CT, a[=hackname _cap=]Tests,
|
|
apz[=hackname _cap=]Patch }[=
|
|
|
|
/fix=]
|
|
};
|