]> git.llucax.com Git - software/libev.git/blobdiff - import_libevent
the dreaded fork
[software/libev.git] / import_libevent
index 2765caeb4f02ca6093c84b2ed589a875c81224c3..f8db3c17712219eb9e89d8b940587e27ae199fd0 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-LE=../libevent-1.3e
+LE=../libevent-1.4.0-beta
 
 cp $LE/evdns.h .
 
@@ -14,15 +14,27 @@ perl -ne '
       print "#ifndef EV_STANDALONE\n$_#endif\n";
       next;
    }
+   if (/#include "(unistd.h|sys\/time.h)"/) {
+      print "#ifndef WIN32\n$_#endif\n";
+      next;
+   }
    next if /#include "log.h"/;
 
    print;
 ' <$LE/evdns.c >evdns.c
 
+cp $LE/autogen.sh .
 cp $LE/epoll_sub.c .
 cp $LE/evbuffer.c .
 cp $LE/buffer.c .
 cp $LE/evhttp.h .
+cp $LE/evutil.h .
+cp $LE/evutil.c .
+cp $LE/event-config.h .
+cp $LE/event-internal.h .
+cp $LE/evrpc.h .
+cp $LE/evrpc.c .
+cp $LE/evrpc-internal.h .
 cp $LE/http.c .
 cp $LE/event_tagging.c .
 cp $LE/http-internal.h .
@@ -33,7 +45,7 @@ cp $LE/strlcpy.c .
 rsync -a $LE/WIN32* $LE/sample $LE/test $LE/compat . --del
 rename 's/libevent/libev/' WIN32-Prj/lib*
 cp $LE/aclocal.m4 .
-cp $LE/acconfig.h .
+#cp $LE/acconfig.h .
 cp $LE/config.h.in .
 cp $LE/event_rpcgen.py .
 cp $LE/*.3 .
@@ -47,12 +59,16 @@ perl -i -ne '
    next if /"event-internal.h"/;
    s/base\d?->sig.ev_signal_added/0/;
    s/base\d?->sig.ev_signal_pair\[0\]/-1/;
-   next if /test_signal_(dealloc|pipeloss|switchbase)\(\)/;
+   s/base->sig.evsignal_caught/0/;
+   next if /^\ttest_signal_(dealloc|pipeloss|switchbase|assert|restore)\(\)/;
+   next if /^\ttest_simplesignal\(\)/; # non-default-loop
+   next if /^\ttest_immediatesignal\(\)/; # non-default-loop
    next if /test_priorities\(\d\)/;
    print;
 ' test/regress.c
 
 perl -ne '
+   s/\bmin_heap.h\b//g;
    s/\bsignal.c\b//g;
    s/\bevport.c\b//g;
    s/\bkqueue.c\b//g;
@@ -64,10 +80,12 @@ perl -ne '
    s/\bepoll_sub.c\b//g;
    s/\bevent-internal.h\b//g;
    s/\bevsignal.h\b//g;
-   s/^(EXTRA_DIST\s*=\s*)/$1 ev.h ev_vars.h ev_wrap.h event_compat.h ev_epoll.c ev_select.c ev_poll.c ev_kqueue.c /;
-   s/^(include_HEADERS\s*=\s*)/$1 ev.h event_compat.h /;
-   s/^(libevent_la_SOURCES\s*=\s*)/$1 ev.c /;
-   s/^(libevent_la_LIBADD\s*=\s*)/$1 -lm /;
+   s/-Wall//;
+   s/^(man_MANS\s*=)/$1 ev.3 /;
+   s/^(EXTRA_DIST\s*=)/$1 libev.m4 ev.h ev_vars.h ev_wrap.h event_compat.h ev_epoll.c ev_select.c ev_poll.c ev_kqueue.c ev_port.c ev_win32.c ev.3 ev.pod ev.html /;
+   s/^(include_HEADERS\s*=)/$1 ev.h event_compat.h /;
+   s/^(CORE_SRC\s*=)/$1 ev.c /;
+   s/^(SYS_LIBS\s*=)/$1 -lm /;
    s/libevent/libev/g;
    print;
 ' <$LE/Makefile.am >Makefile.am
@@ -82,12 +100,14 @@ perl -ne '
    s/AC_LIBOBJ\(evport\)/: ;/g;
    s/AC_LIBOBJ\(signal\)/: ;/g;
    s/AC_LIBOBJ\(rtsig\)/: ;/g;
+   print "m4_include([libev.m4])\n" if /^AC_OUTPUT/;
    print;
 ' <$LE/configure.in >configure.in
 
 aclocal-1.7
 automake-1.7 --add-missing
 autoconf
+autoheader
 libtoolize
 CC="ccache gcc" ./configure --prefix=/opt/libev --disable-shared "$@"