import Options def set_options(opt): pass #opt.tool_options('compiler_cc') def configure(conf): print "--- libev ---" #conf.check_tool('compiler_cc') platform_string = "__" + Options.platform if Options.platform == "linux2": platform_string = "__linux" conf.define(platform_string, 1) conf.check_cc(header_name="sys/inotify.h") conf.check_cc(header_name="sys/epoll.h") conf.check_cc(header_name="sys/event.h") conf.check_cc(header_name="sys/queue.h") conf.check_cc(header_name="port.h") conf.check_cc(header_name="poll.h") conf.check_cc(header_name="sys/select.h") conf.check_cc(header_name="sys/eventfd.h") conf.check_cc(header_name="sys/inotify.h", function_name="inotify_init") conf.check_cc(header_name="sys/epoll.h", function_name="epoll_ctl") conf.check_cc(header_name="sys/queue.h", function_name="kqueue") conf.check_cc(header_name="port.h", function_name="port_create") conf.check_cc(header_name="poll.h", function_name="poll") conf.check_cc(header_name="sys/select.h", function_name="select") conf.check_cc(header_name="sys/eventfd.h", function_name="eventfd") code = """ #include #include int main() { struct timespec ts; int status = syscall (SYS_clock_gettime, CLOCK_REALTIME, &ts); return 0; } """ conf.check_cc(fragment=code, define_name="HAVE_CLOCK_SYSCALL") conf.check_cc(lib="rt", header_name="time.h", function_name="clock_gettime") conf.check_cc(lib="rt", header_name="time.h", function_name="nanosleep") conf.check_cc(lib="m", header_name="math.h", function_name="ceil") conf.define("HAVE_CONFIG_H", 1) conf.write_config_header('config.h') def build(bld): libev = bld.new_task_gen("cc", "staticlib") libev.source = 'ev.c' libev.target = 'ev' libev.name = 'ev' libev.includes = '. ../..' if bld.env["USE_DEBUG"]: libev.clone("debug");