diff options
-rw-r--r-- | README.embed | 6 | ||||
-rw-r--r-- | evdns.c | 2 | ||||
-rwxr-xr-x | import_libevent | 94 |
3 files changed, 101 insertions, 1 deletions
diff --git a/README.embed b/README.embed index b6322d9..1d04427 100644 --- a/README.embed +++ b/README.embed @@ -27,6 +27,12 @@ FILESETS ev.c ev_vars.h ev_wrap.h + ev_select.c only when select backend is enabled (which is by default) + ev_poll.c only when poll backend is enabled (disabled by default) + ev_epoll.c only when the epoll backend is enabled (disabled by default) + ev_kqueue.c only when the kqueue backend is enabled (disabled by default) + + "ev.c" includes the backend files directly when enabled. To include the libevent compatibility API, also include: @@ -1,4 +1,4 @@ -/* $Id: evdns.c,v 1.14 2007-11-05 16:45:43 root Exp $ */ +/* $Id: evdns.c,v 1.15 2007-11-05 17:57:54 root Exp $ */ /* The original version of this module was written by Adam Langley; for * a history of modifications, check out the subversion logs. diff --git a/import_libevent b/import_libevent new file mode 100755 index 0000000..2765cae --- /dev/null +++ b/import_libevent @@ -0,0 +1,94 @@ +#!/bin/sh + +LE=../libevent-1.3e + +cp $LE/evdns.h . + +perl -ne ' + s/\s+char buf\[64\];/\tchar buf[96];/; + if (/#include "event.h"/) { + print "#ifndef EV_STANDALONE\n$_#endif\n"; + next; + } + if (/#include "misc.h"/) { + print "#ifndef EV_STANDALONE\n$_#endif\n"; + next; + } + next if /#include "log.h"/; + + print; +' <$LE/evdns.c >evdns.c + +cp $LE/epoll_sub.c . +cp $LE/evbuffer.c . +cp $LE/buffer.c . +cp $LE/evhttp.h . +cp $LE/http.c . +cp $LE/event_tagging.c . +cp $LE/http-internal.h . +cp $LE/strlcpy-internal.h . +cp $LE/log.c . +cp $LE/log.h . +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/config.h.in . +cp $LE/event_rpcgen.py . +cp $LE/*.3 . + +perl -i -pe 's/libevent/libev/g' sample/Makefile.am +perl -i -pe 's/libevent/libev/g' test/Makefile.am + +perl -i -pe 's/#include <event.h>$/#include "event.h"/' test/*.c + +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)\(\)/; + next if /test_priorities\(\d\)/; + print; +' test/regress.c + +perl -ne ' + s/\bsignal.c\b//g; + s/\bevport.c\b//g; + s/\bkqueue.c\b//g; + s/\bdevpoll.c\b//g; + s/\brtsig.c\b//g; + s/\bselect.c\b//g; + s/\bpoll.c\b//g; + s/\bepoll.c\b//g; + 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/libevent/libev/g; + print; +' <$LE/Makefile.am >Makefile.am + +perl -ne ' + s/libevent/libev/g; + s/AC_LIBOBJ\(select\)/: ;/g; + s/AC_LIBOBJ\(poll\)/: ;/g; + s/AC_LIBOBJ\(kqueue\)/: ;/g; + s/AC_LIBOBJ\(epoll\)/: ;/g; + s/AC_LIBOBJ\(devpoll\)/: ;/g; + s/AC_LIBOBJ\(evport\)/: ;/g; + s/AC_LIBOBJ\(signal\)/: ;/g; + s/AC_LIBOBJ\(rtsig\)/: ;/g; + print; +' <$LE/configure.in >configure.in + +aclocal-1.7 +automake-1.7 --add-missing +autoconf +libtoolize +CC="ccache gcc" ./configure --prefix=/opt/libev --disable-shared "$@" + + |