home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / lib / perl / 5.8.8 / linux / linkage.ph next >
Encoding:
Text File  |  2006-07-07  |  1.5 KB  |  46 lines

  1. require '_h2ph_pre.ph';
  2.  
  3. no warnings 'redefine';
  4.  
  5. unless(defined(&_LINUX_LINKAGE_H)) {
  6.     eval 'sub _LINUX_LINKAGE_H () {1;}' unless defined(&_LINUX_LINKAGE_H);
  7.     require 'asm/linkage.ph';
  8.     if(defined(&__cplusplus)) {
  9.     eval 'sub CPP_ASMLINKAGE () { &extern "C";}' unless defined(&CPP_ASMLINKAGE);
  10.     } else {
  11.     eval 'sub CPP_ASMLINKAGE () {1;}' unless defined(&CPP_ASMLINKAGE);
  12.     }
  13.     unless(defined(&asmlinkage)) {
  14.     eval 'sub asmlinkage () { &CPP_ASMLINKAGE;}' unless defined(&asmlinkage);
  15.     }
  16.     unless(defined(&prevent_tail_call)) {
  17.     eval 'sub prevent_tail_call {
  18.         my($ret) = @_;
  19.             eval q( &do { }  &while (0));
  20.     }' unless defined(&prevent_tail_call);
  21.     }
  22.     unless(defined(&__ALIGN)) {
  23.     eval 'sub __ALIGN () {. &align 4,0x90;}' unless defined(&__ALIGN);
  24.     eval 'sub __ALIGN_STR () {".align 4,0x90";}' unless defined(&__ALIGN_STR);
  25.     }
  26.     if(defined(&__ASSEMBLY__)) {
  27.     eval 'sub ALIGN () { &__ALIGN;}' unless defined(&ALIGN);
  28.     eval 'sub ALIGN_STR () { &__ALIGN_STR;}' unless defined(&ALIGN_STR);
  29.     eval 'sub ENTRY {
  30.         my($name) = @_;
  31.             eval q(. &globl $name;  &ALIGN; $name:);
  32.     }' unless defined(&ENTRY);
  33.     }
  34.     eval 'sub NORET_TYPE () {1;}' unless defined(&NORET_TYPE);
  35.     eval 'sub ATTRIB_NORET () { &__attribute__(( &noreturn));}' unless defined(&ATTRIB_NORET);
  36.     eval 'sub NORET_AND () { &noreturn,;}' unless defined(&NORET_AND);
  37.     unless(defined(&FASTCALL)) {
  38.     eval 'sub FASTCALL {
  39.         my($x) = @_;
  40.             eval q($x);
  41.     }' unless defined(&FASTCALL);
  42.     eval 'sub fastcall () {1;}' unless defined(&fastcall);
  43.     }
  44. }
  45. 1;
  46.