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 / bits / sigset.ph < prev    next >
Encoding:
Text File  |  2006-07-07  |  3.1 KB  |  55 lines

  1. require '_h2ph_pre.ph';
  2.  
  3. no warnings 'redefine';
  4.  
  5. unless(defined(&_SIGSET_H_types)) {
  6.     eval 'sub _SIGSET_H_types () {1;}' unless defined(&_SIGSET_H_types);
  7.     eval 'sub _SIGSET_NWORDS () {(1024/ (8* $sizeof{\'unsigned long int\'}));}' unless defined(&_SIGSET_NWORDS);
  8. }
  9. if(!defined (defined(&_SIGSET_H_fns) ? &_SIGSET_H_fns : 0)  && defined (defined(&_SIGNAL_H) ? &_SIGNAL_H : 0)) {
  10.     eval 'sub _SIGSET_H_fns () {1;}' unless defined(&_SIGSET_H_fns);
  11.     unless(defined(&_EXTERN_INLINE)) {
  12.     eval 'sub _EXTERN_INLINE () { &extern  &__inline;}' unless defined(&_EXTERN_INLINE);
  13.     }
  14.     eval 'sub __sigmask {
  15.         my($sig) = @_;
  16.         eval q((( 1) << ((($sig) - 1) % (8* $sizeof{\'unsigned long int\'}))));
  17.     }' unless defined(&__sigmask);
  18.     eval 'sub __sigword {
  19.         my($sig) = @_;
  20.         eval q(((($sig) - 1) / (8* $sizeof{\'unsigned long int\'})));
  21.     }' unless defined(&__sigword);
  22.     if(defined (defined(&__GNUC__) ? &__GNUC__ : 0)  && (defined(&__GNUC__) ? &__GNUC__ : 0) >= 2) {
  23.     eval 'sub __sigemptyset {
  24.         my($set) = @_;
  25.             eval q(( &__extension__ ({ \'int\'  &__cnt =  &_SIGSET_NWORDS;  &sigset_t * &__set = ($set);  &while (-- &__cnt >= 0)  ($__set->{__val[&__cnt]}) = 0; 0; })));
  26.     }' unless defined(&__sigemptyset);
  27.     eval 'sub __sigfillset {
  28.         my($set) = @_;
  29.             eval q(( &__extension__ ({ \'int\'  &__cnt =  &_SIGSET_NWORDS;  &sigset_t * &__set = ($set);  &while (-- &__cnt >= 0)  ($__set->{__val[&__cnt]}) = ~0; 0; })));
  30.     }' unless defined(&__sigfillset);
  31.     if(defined(&__USE_GNU)) {
  32.         eval 'sub __sigisemptyset {
  33.             my($set) = @_;
  34.             eval q(( &__extension__ ({ \'int\'  &__cnt =  &_SIGSET_NWORDS;  &const  &sigset_t * &__set = ($set); \'int\'  &__ret =  ($__set->{__val[&}--__cnt]);  &while (! &__ret  && -- &__cnt >= 0)  &__ret =  ($__set->{__val[&__cnt]});  &__ret == 0; })));
  35.         }' unless defined(&__sigisemptyset);
  36.         eval 'sub __sigandset {
  37.             my($dest, $left, $right) = @_;
  38.             eval q(( &__extension__ ({ \'int\'  &__cnt =  &_SIGSET_NWORDS;  &sigset_t * &__dest = ($dest);  &const  &sigset_t * &__left = ($left);  &const  &sigset_t * &__right = ($right);  &while (-- &__cnt >= 0)  ($__dest->{__val[&__cnt]}) = ( ($__left->{__val[&__cnt]})     &  ($__right->{__val[&__cnt]})); 0; })));
  39.         }' unless defined(&__sigandset);
  40.         eval 'sub __sigorset {
  41.             my($dest, $left, $right) = @_;
  42.             eval q(( &__extension__ ({ \'int\'  &__cnt =  &_SIGSET_NWORDS;  &sigset_t * &__dest = ($dest);  &const  &sigset_t * &__left = ($left);  &const  &sigset_t * &__right = ($right);  &while (-- &__cnt >= 0)  ($__dest->{__val[&__cnt]}) = ( ($__left->{__val[&__cnt]})     |  ($__right->{__val[&__cnt]})); 0; })));
  43.         }' unless defined(&__sigorset);
  44.     }
  45.     }
  46.     if(defined(&__USE_EXTERN_INLINES)) {
  47.     eval 'sub __SIGSETFN {
  48.         my($NAME, $BODY, $CONST) = @_;
  49.             eval q( &_EXTERN_INLINE \'int\' $NAME ($CONST  &__sigset_t * &__set, \'int\'  &__sig) { \'unsigned long int __mask\' =  &__sigmask ( &__sig); \'unsigned long int __word\' =  &__sigword ( &__sig);  &return $BODY; });
  50.     }' unless defined(&__SIGSETFN);
  51.     undef(&__SIGSETFN) if defined(&__SIGSETFN);
  52.     }
  53. }
  54. 1;
  55.