require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&EVENT2_THREAD_H_INCLUDED_)) {
    eval 'sub EVENT2_THREAD_H_INCLUDED_ () {1;}' unless defined(&EVENT2_THREAD_H_INCLUDED_);
    require 'event2/visibility.ph';
    if(defined(&__cplusplus)) {
    }
    require 'event2/event-config.ph';
    eval 'sub EVTHREAD_WRITE () {0x4;}' unless defined(&EVTHREAD_WRITE);
    eval 'sub EVTHREAD_READ () {0x8;}' unless defined(&EVTHREAD_READ);
    eval 'sub EVTHREAD_TRY () {0x10;}' unless defined(&EVTHREAD_TRY);
    if(!defined(&EVENT__DISABLE_THREAD_SUPPORT) || defined(&EVENT_IN_DOXYGEN_)) {
	eval 'sub EVTHREAD_LOCK_API_VERSION () {1;}' unless defined(&EVTHREAD_LOCK_API_VERSION);
	eval 'sub EVTHREAD_LOCKTYPE_RECURSIVE () {1;}' unless defined(&EVTHREAD_LOCKTYPE_RECURSIVE);
	eval 'sub EVTHREAD_LOCKTYPE_READWRITE () {2;}' unless defined(&EVTHREAD_LOCKTYPE_READWRITE);
	eval 'sub EVTHREAD_CONDITION_API_VERSION () {1;}' unless defined(&EVTHREAD_CONDITION_API_VERSION);
	if((defined(&_WIN32)  && !defined(&EVENT__DISABLE_THREAD_SUPPORT)) || defined(&EVENT_IN_DOXYGEN_)) {
	    eval 'sub EVTHREAD_USE_WINDOWS_THREADS_IMPLEMENTED () {1;}' unless defined(&EVTHREAD_USE_WINDOWS_THREADS_IMPLEMENTED);
	}
	if(defined(&EVENT__HAVE_PTHREADS) || defined(&EVENT_IN_DOXYGEN_)) {
	    eval 'sub EVTHREAD_USE_PTHREADS_IMPLEMENTED () {1;}' unless defined(&EVTHREAD_USE_PTHREADS_IMPLEMENTED);
	}
    }
    if(defined(&__cplusplus)) {
    }
}
1;
