1 |
#!/bin/sh |
2 |
|
3 |
LE=../libevent-1.4.3-stable |
4 |
|
5 |
if ! [ -e evbuffer.c ]; then |
6 |
echo do not run this programm unless you know what you are doing |
7 |
exit 1 |
8 |
fi |
9 |
|
10 |
# this program combines libev and libevent into a single package |
11 |
|
12 |
cvs update -AdP libev |
13 |
rsync -avP libev/. . --exclude CVS |
14 |
|
15 |
rm -f configure.ac |
16 |
|
17 |
cp $LE/evdns.h . |
18 |
|
19 |
perl -i -pe 's%^/.libevent-include./%#include "event_compat.h"%' event.h |
20 |
|
21 |
perl -ne ' |
22 |
s/\s+char buf\[64\];/\tchar buf[96];/; |
23 |
if (/#include "event.h"/) { |
24 |
print "#ifndef EV_STANDALONE\n$_#endif\n"; |
25 |
next; |
26 |
} |
27 |
if (/#include "misc.h"/) { |
28 |
print "#ifndef EV_STANDALONE\n$_#endif\n"; |
29 |
next; |
30 |
} |
31 |
if (/#include "(unistd.h|sys\/time.h)"/) { |
32 |
print "#ifndef WIN32\n$_#endif\n"; |
33 |
next; |
34 |
} |
35 |
next if /#include "log.h"/; |
36 |
|
37 |
print; |
38 |
' <$LE/evdns.c >evdns.c |
39 |
|
40 |
cp $LE/autogen.sh . |
41 |
cp $LE/epoll_sub.c . |
42 |
cp $LE/evbuffer.c . |
43 |
cp $LE/buffer.c . |
44 |
cp $LE/evhttp.h . |
45 |
cp $LE/evutil.h . |
46 |
cp $LE/evutil.c . |
47 |
cp $LE/event-config.h . |
48 |
cp $LE/event-internal.h . |
49 |
cp $LE/evrpc.h . |
50 |
cp $LE/evrpc.c . |
51 |
cp $LE/evrpc-internal.h . |
52 |
cp $LE/http.c . |
53 |
cp $LE/event_tagging.c . |
54 |
cp $LE/http-internal.h . |
55 |
cp $LE/strlcpy-internal.h . |
56 |
cp $LE/log.c . |
57 |
cp $LE/log.h . |
58 |
cp $LE/strlcpy.c . |
59 |
rsync -a $LE/WIN32* $LE/sample $LE/test $LE/compat . --del |
60 |
#rename 's/libevent/libev/' WIN32-Prj/lib* |
61 |
cp $LE/aclocal.m4 . |
62 |
#cp $LE/acconfig.h . |
63 |
cp $LE/config.h.in . |
64 |
cp $LE/event_rpcgen.py . |
65 |
cp $LE/*.3 . |
66 |
|
67 |
#perl -i -pe 's/libevent/libev/g' sample/Makefile.am |
68 |
#perl -i -pe 's/libevent/libev/g' test/Makefile.am |
69 |
|
70 |
perl -i -pe 's/#include <event.h>$/#include "event.h"/' test/*.c |
71 |
|
72 |
perl -i -ne ' |
73 |
next if /"event-internal.h"/; |
74 |
s/base\d?->sig.ev_signal_added/0/; |
75 |
s/base\d?->sig.ev_signal_pair\[0\]/-1/; |
76 |
s/base->sig.evsignal_caught/0/; |
77 |
next if /^\ttest_signal_(dealloc|pipeloss|switchbase|assert|restore)\(\)/; |
78 |
next if /^\ttest_simplesignal\(\)/; # non-default-loop |
79 |
next if /^\ttest_immediatesignal\(\)/; # non-default-loop |
80 |
next if /test_priorities\(\d\)/; |
81 |
print; |
82 |
' test/regress.c |
83 |
|
84 |
perl -ne ' |
85 |
s/\bmin_heap.h\b//g; |
86 |
s/\bsignal.c\b//g; |
87 |
s/\bevport.c\b//g; |
88 |
s/\bkqueue.c\b//g; |
89 |
s/\bdevpoll.c\b//g; |
90 |
s/\brtsig.c\b//g; |
91 |
s/\bselect.c\b//g; |
92 |
s/\bpoll.c\b//g; |
93 |
s/\bepoll.c\b//g; |
94 |
s/\bepoll_sub.c\b//g; |
95 |
s/\bevent-internal.h\b//g; |
96 |
s/\bevsignal.h\b//g; |
97 |
s/^(man_MANS\s*=)/$1 ev.3 /; |
98 |
s/^(EXTRA_DIST\s*=)/$1 libev.m4 ev.h ev_vars.h ev_wrap.h event_compat.h ev++.h ev_epoll.c ev_select.c ev_poll.c ev_kqueue.c ev_port.c ev_win32.c ev.3 ev.pod /; |
99 |
s/^(include_HEADERS\s*=)/$1 ev.h event_compat.h ev++.h /; |
100 |
s/^(CORE_SRC\s*=)/$1 ev.c /; |
101 |
s/^(SYS_LIBS\s*=)/$1 -lm /; |
102 |
#s/libevent/libev/g; |
103 |
print; |
104 |
' <$LE/Makefile.am >Makefile.am |
105 |
|
106 |
perl -ne ' |
107 |
#s/-Wall/-Wall -Wno-comment -Wunused-function -Wno-unused-value/; |
108 |
s/-Wall//g; |
109 |
#s/libevent/libev/g; |
110 |
#VERSION |
111 |
s/AM_INIT_AUTOMAKE\s*\(.*,(.*)\)/AM_INIT_AUTOMAKE(libevent-$1+libev,3.1)/; |
112 |
s/AC_LIBOBJ\(select\)/: ;/g; |
113 |
s/AC_LIBOBJ\(poll\)/: ;/g; |
114 |
s/AC_LIBOBJ\(kqueue\)/: ;/g; |
115 |
s/AC_LIBOBJ\(epoll\)/: ;/g; |
116 |
s/AC_LIBOBJ\(devpoll\)/: ;/g; |
117 |
s/AC_LIBOBJ\(evport\)/: ;/g; |
118 |
s/AC_LIBOBJ\(signal\)/: ;/g; |
119 |
s/AC_LIBOBJ\(rtsig\)/: ;/g; |
120 |
print "m4_include([libev.m4])\n" if /^AC_OUTPUT/; |
121 |
print; |
122 |
' <$LE/configure.in >configure.in |
123 |
|
124 |
aclocal-1.7 |
125 |
automake-1.7 --add-missing |
126 |
autoconf |
127 |
autoheader |
128 |
libtoolize |
129 |
CC="ccache gcc" ./configure --prefix=/opt/libev --disable-shared "$@" |
130 |
|
131 |
|