require '_h2ph_pre.ph';

unless(defined(&_SCSI_SG_H)) {
    eval 'sub _SCSI_SG_H () {1;}' unless defined(&_SCSI_SG_H);
    require 'features.ph';
    eval 'sub SG_DXFER_NONE () {-1;}' unless defined(&SG_DXFER_NONE);
    eval 'sub SG_DXFER_TO_DEV () {-2;}' unless defined(&SG_DXFER_TO_DEV);
    eval 'sub SG_DXFER_FROM_DEV () {-3;}' unless defined(&SG_DXFER_FROM_DEV);
    eval 'sub SG_DXFER_TO_FROM_DEV () {-4;}' unless defined(&SG_DXFER_TO_FROM_DEV);
    eval 'sub SG_FLAG_DIRECT_IO () {1;}' unless defined(&SG_FLAG_DIRECT_IO);
    eval 'sub SG_FLAG_LUN_INHIBIT () {2;}' unless defined(&SG_FLAG_LUN_INHIBIT);
    eval 'sub SG_FLAG_NO_DXFER () {0x10000;}' unless defined(&SG_FLAG_NO_DXFER);
    eval 'sub SG_INFO_OK_MASK () {0x1;}' unless defined(&SG_INFO_OK_MASK);
    eval 'sub SG_INFO_OK () {0x;}' unless defined(&SG_INFO_OK);
    eval 'sub SG_INFO_CHECK () {0x1;}' unless defined(&SG_INFO_CHECK);
    eval 'sub SG_INFO_DIRECT_IO_MASK () {0x6;}' unless defined(&SG_INFO_DIRECT_IO_MASK);
    eval 'sub SG_INFO_INDIRECT_IO () {0x;}' unless defined(&SG_INFO_INDIRECT_IO);
    eval 'sub SG_INFO_DIRECT_IO () {0x2;}' unless defined(&SG_INFO_DIRECT_IO);
    eval 'sub SG_INFO_MIXED_IO () {0x4;}' unless defined(&SG_INFO_MIXED_IO);
    eval 'sub SG_EMULATED_HOST () {0x2203;}' unless defined(&SG_EMULATED_HOST);
    eval 'sub SG_SET_TRANSFORM () {0x2204;}' unless defined(&SG_SET_TRANSFORM);
    eval 'sub SG_GET_TRANSFORM () {0x2205;}' unless defined(&SG_GET_TRANSFORM);
    eval 'sub SG_SET_RESERVED_SIZE () {0x2275;}' unless defined(&SG_SET_RESERVED_SIZE);
    eval 'sub SG_GET_RESERVED_SIZE () {0x2272;}' unless defined(&SG_GET_RESERVED_SIZE);
    eval 'sub SG_GET_SCSI_ID () {0x2276;}' unless defined(&SG_GET_SCSI_ID);
    eval 'sub SG_SET_FORCE_LOW_DMA () {0x2279;}' unless defined(&SG_SET_FORCE_LOW_DMA);
    eval 'sub SG_GET_LOW_DMA () {0x227a;}' unless defined(&SG_GET_LOW_DMA);
    eval 'sub SG_SET_FORCE_PACK_ID () {0x227b;}' unless defined(&SG_SET_FORCE_PACK_ID);
    eval 'sub SG_GET_PACK_ID () {0x227c;}' unless defined(&SG_GET_PACK_ID);
    eval 'sub SG_GET_NUM_WAITING () {0x227d;}' unless defined(&SG_GET_NUM_WAITING);
    eval 'sub SG_GET_SG_TABLESIZE () {0x227f;}' unless defined(&SG_GET_SG_TABLESIZE);
    eval 'sub SG_GET_VERSION_NUM () {0x2282;}' unless defined(&SG_GET_VERSION_NUM);
    eval 'sub SG_SCSI_RESET () {0x2284;}' unless defined(&SG_SCSI_RESET);
    eval 'sub SG_SCSI_RESET_NOTHING () {0;}' unless defined(&SG_SCSI_RESET_NOTHING);
    eval 'sub SG_SCSI_RESET_DEVICE () {1;}' unless defined(&SG_SCSI_RESET_DEVICE);
    eval 'sub SG_SCSI_RESET_BUS () {2;}' unless defined(&SG_SCSI_RESET_BUS);
    eval 'sub SG_SCSI_RESET_HOST () {3;}' unless defined(&SG_SCSI_RESET_HOST);
    eval 'sub SG_IO () {0x2285;}' unless defined(&SG_IO);
    eval 'sub SG_GET_REQUEST_TABLE () {0x2286;}' unless defined(&SG_GET_REQUEST_TABLE);
    eval 'sub SG_SET_KEEP_ORPHAN () {0x2287;}' unless defined(&SG_SET_KEEP_ORPHAN);
    eval 'sub SG_GET_KEEP_ORPHAN () {0x2288;}' unless defined(&SG_GET_KEEP_ORPHAN);
    eval 'sub SG_SCATTER_SZ () {(8* 4096);}' unless defined(&SG_SCATTER_SZ);
    eval 'sub SG_DEFAULT_RETRIES () {1;}' unless defined(&SG_DEFAULT_RETRIES);
    eval 'sub SG_DEF_FORCE_LOW_DMA () {0;}' unless defined(&SG_DEF_FORCE_LOW_DMA);
    eval 'sub SG_DEF_FORCE_PACK_ID () {0;}' unless defined(&SG_DEF_FORCE_PACK_ID);
    eval 'sub SG_DEF_KEEP_ORPHAN () {0;}' unless defined(&SG_DEF_KEEP_ORPHAN);
    eval 'sub SG_DEF_RESERVED_SIZE () { &SG_SCATTER_SZ;}' unless defined(&SG_DEF_RESERVED_SIZE);
    eval 'sub SG_MAX_QUEUE () {16;}' unless defined(&SG_MAX_QUEUE);
    eval 'sub SG_BIG_BUFF () { &SG_DEF_RESERVED_SIZE;}' unless defined(&SG_BIG_BUFF);
    eval 'sub SG_MAX_SENSE () {16;}' unless defined(&SG_MAX_SENSE);
    eval 'sub SG_SET_TIMEOUT () {0x2201;}' unless defined(&SG_SET_TIMEOUT);
    eval 'sub SG_GET_TIMEOUT () {0x2202;}' unless defined(&SG_GET_TIMEOUT);
    eval 'sub SG_GET_COMMAND_Q () {0x2270;}' unless defined(&SG_GET_COMMAND_Q);
    eval 'sub SG_SET_COMMAND_Q () {0x2271;}' unless defined(&SG_SET_COMMAND_Q);
    eval 'sub SG_SET_DEBUG () {0x227e;}' unless defined(&SG_SET_DEBUG);
    eval 'sub SG_NEXT_CMD_LEN () {0x2283;}' unless defined(&SG_NEXT_CMD_LEN);
    eval 'sub SG_DEFAULT_TIMEOUT () {(60* &HZ);}' unless defined(&SG_DEFAULT_TIMEOUT);
    eval 'sub SG_DEF_COMMAND_Q () {0;}' unless defined(&SG_DEF_COMMAND_Q);
    eval 'sub SG_DEF_UNDERRUN_FLAG () {0;}' unless defined(&SG_DEF_UNDERRUN_FLAG);
}
1;
