require '_h2ph_pre.ph';

no warnings 'redefine';

unless(defined(&_RF__RF_RAID_H_)) {
    eval 'sub _RF__RF_RAID_H_ () {1;}' unless defined(&_RF__RF_RAID_H_);
    require 'rf_archs.ph';
    require 'rf_types.ph';
    require 'rf_threadstuff.ph';
    if(defined( &__NetBSD__)) {
	require 'rf_netbsd.ph';
    }
 elsif(defined( &__OpenBSD__)) {
	require 'rf_openbsd.ph';
    }
    require 'sys/disklabel.ph';
    require 'sys/types.ph';
    require 'rf_alloclist.ph';
    require 'rf_stripelocks.ph';
    require 'rf_layout.ph';
    require 'rf_disks.ph';
    require 'rf_debugMem.ph';
    require 'rf_diskqueue.ph';
    require 'rf_reconstruct.ph';
    require 'rf_acctrace.ph';
    if((defined(&RF_INCLUDE_PARITYLOGGING) ? &RF_INCLUDE_PARITYLOGGING : 0) > 0) {
	require 'rf_paritylog.ph';
    }
    eval 'sub RF_MAX_DISKS () {128;}' unless defined(&RF_MAX_DISKS);
    eval 'sub RF_DEV2RAIDID {
        my($_dev) = @_;
	    eval q(( &DISKUNIT($_dev)));
    }' unless defined(&RF_DEV2RAIDID);
    eval 'sub RF_COMPONENT_LABEL_VERSION_1 () {1;}' unless defined(&RF_COMPONENT_LABEL_VERSION_1);
    eval 'sub RF_COMPONENT_LABEL_VERSION () {2;}' unless defined(&RF_COMPONENT_LABEL_VERSION);
    eval 'sub RF_RAID_DIRTY () {0;}' unless defined(&RF_RAID_DIRTY);
    eval 'sub RF_RAID_CLEAN () {1;}' unless defined(&RF_RAID_CLEAN);
    eval("sub rf_rs_optimal () { 0; }") unless defined(&rf_rs_optimal);
    eval("sub rf_rs_degraded () { 1; }") unless defined(&rf_rs_degraded);
    eval("sub rf_rs_reconstructing () { 2; }") unless defined(&rf_rs_reconstructing);
    eval("sub rf_rs_reconfigured () { 3; }") unless defined(&rf_rs_reconfigured);
    if(!defined( &_KERNEL)  && !defined( &SIMULATE)) {
    }
    if((defined(&RF_INCLUDE_PARITYLOGGING) ? &RF_INCLUDE_PARITYLOGGING : 0) > 0) {
    }
}
1;
