use 5.006; use Config; use ExtUtils::MakeMaker; $ENV{CC} = $Config{cc}; $ENV{CFLAGS} = join " ", map $Config{$_}, qw(inc optimize ccflags cccdlflags); system "cd libevent && ./configure --disable-shared --enable-static --disable-maintainer-mode" and die "configure failed."; $LIBS = qx; WriteMakefile( dist => { PREOP => 'pod2text EV.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', COMPRESS => 'gzip -9v', SUFFIX => '.gz', }, MYEXTLIB => 'libevent/.libs/libevent$(LIB_EXT)', NAME => "EV", LIBS => [$LIBS], VERSION_FROM => "EV.pm", PM => { 'EV.pm' => '$(INST_LIBDIR)/EV.pm', 'EV/AnyEvent.pm' => '$(INST_LIBDIR)/EV/AnyEvent.pm', 'EV/DNS.pm' => '$(INST_LIBDIR)/EV/DNS.pm', 'EV/EVAPI.h' => '$(INST_LIBDIR)/EV/EVAPI.h', 'EV/MakeMaker.pm' => '$(INST_LIBDIR)/EV/MakeMaker.pm', 'libevent/event.h' => '$(INST_LIBDIR)/EV/event.h', 'libevent/evdns.h' => '$(INST_LIBDIR)/EV/evdns.h', 'libevent/evhttp.h' => '$(INST_LIBDIR)/EV/evhttp.h', }, ); sub MY::postamble { my $postamble =<<'END'; clean:: -cd libevent && make distclean force: $(MYEXTLIB): force cd libevent && $(MAKE) all END }