require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&SECURITY_OPENPAM_ATTR_H_INCLUDED)) {
    eval 'sub SECURITY_OPENPAM_ATTR_H_INCLUDED () {1;}' unless defined(&SECURITY_OPENPAM_ATTR_H_INCLUDED);
    if(defined(&__GNUC__)  && defined(&__GNUC_MINOR__)  && !defined(&__STRICT_ANSI__)) {
	eval 'sub OPENPAM_GNUC_PREREQ {
	    my($maj, $min) = @_;
    	    eval q((( &__GNUC__ << 16) +  &__GNUC_MINOR__ >= (($maj) << 16) + ($min)));
	}' unless defined(&OPENPAM_GNUC_PREREQ);
    } else {
	eval 'sub OPENPAM_GNUC_PREREQ {
	    my($maj, $min) = @_;
    	    eval q(0);
	}' unless defined(&OPENPAM_GNUC_PREREQ);
    }
    if( &OPENPAM_GNUC_PREREQ(2,5)) {
	eval 'sub OPENPAM_FORMAT {
	    my($params) = @_;
    	    eval q( &__attribute__(( &__format__ $params)));
	}' unless defined(&OPENPAM_FORMAT);
    } else {
	eval 'sub OPENPAM_FORMAT {
	    my($params) = @_;
    	    eval q();
	}' unless defined(&OPENPAM_FORMAT);
    }
    if( &OPENPAM_GNUC_PREREQ(3,3)) {
	eval 'sub OPENPAM_NONNULL {
	    my($params) = @_;
    	    eval q( &__attribute__(( &__nonnull__ $params)));
	}' unless defined(&OPENPAM_NONNULL);
    } else {
	eval 'sub OPENPAM_NONNULL {
	    my($params) = @_;
    	    eval q();
	}' unless defined(&OPENPAM_NONNULL);
    }
    if( &OPENPAM_GNUC_PREREQ(2,7)) {
	eval 'sub OPENPAM_UNUSED {
	    my($var) = @_;
    	    eval q($var  &__attribute__(( &__unused__)));
	}' unless defined(&OPENPAM_UNUSED);
    } else {
	eval 'sub OPENPAM_UNUSED {
	    my($var) = @_;
    	    eval q($var);
	}' unless defined(&OPENPAM_UNUSED);
    }
}
1;
