Skip to content
This repository
Browse code

Add libev, more changes

  • Loading branch information...
commit 151e2a8f0daa0c83913f7953ee3be95a3284bd36 1 parent cb17a5e
ry authored March 28, 2011
12  Makefile
... ...
@@ -0,0 +1,12 @@
  1
+test/echo-server: test/echo-server.c ol.a
  2
+	gcc -o test/echo-server test/echo-server.c ol.a
  3
+
  4
+ol.a: ol-unix.o
  5
+	ar rcs ol.a ol-unix.o
  6
+
  7
+ol-unix.o: ol-unix.c ol.h ol-unix.h
  8
+	gcc -c ol-unix.c -o ol-unix.o -lm
  9
+
  10
+ev/libev.a: ol-unix.c ol.h ol-unix.h
  11
+	gcc -c ol-unix.c -o ol-unix.o -lm
  12
+
388  ev/Changes
... ...
@@ -0,0 +1,388 @@
  1
+Revision history for libev, a high-performance and full-featured event loop.
  2
+
  3
+4.04 Wed Feb 16 09:01:51 CET 2011
  4
+	- fix two problems in the native win32 backend, where reuse of fd's
  5
+          with different underlying handles caused handles not to be removed
  6
+          or added to the select set (analyzed and tested by Bert Belder).
  7
+	- do no rely on ceil() in ev_e?poll.c.
  8
+        - backport libev to HP-UX versions before 11 v3.
  9
+        - configure did not detect nanosleep and clock_gettime properly when
  10
+          they are available in the libc (as opposed to -lrt).
  11
+
  12
+4.03 Tue Jan 11 14:37:25 CET 2011
  13
+	- officially support polling files with all backends.
  14
+	- support files, /dev/zero etc. the same way as select in the epoll
  15
+          backend, by generating events on our own.
  16
+        - ports backend: work around solaris bug 6874410 and many related ones
  17
+          (EINTR, maybe more), with no performance loss (note that the solaris
  18
+          bug report is actually wrong, reality is far more bizarre and broken
  19
+          than that).
  20
+	- define EV_READ/EV_WRITE as macros in event.h, as some programs use
  21
+          #ifdef to test for them.
  22
+        - new (experimental) function: ev_feed_signal.
  23
+        - new (to become default) EVFLAG_NOSIGMASK flag.
  24
+        - new EVBACKEND_MASK symbol.
  25
+        - updated COMMON IDIOMS SECTION.
  26
+
  27
+4.01 Fri Nov  5 21:51:29 CET 2010
  28
+        - automake fucked it up, apparently, --add-missing -f is not quite enough
  29
+          to make it update its files, so 4.00 didn't install ev++.h and
  30
+          event.h on make install. grrr.
  31
+        - ev_loop(count|depth) didn't return anything (Robin Haberkorn).
  32
+        - change EV_UNDEF to 0xffffffff to silence some overzealous compilers.
  33
+        - use "(libev) " prefix for all libev error messages now.
  34
+
  35
+4.00 Mon Oct 25 12:32:12 CEST 2010
  36
+	- "PORTING FROM LIBEV 3.X TO 4.X" (in ev.pod) is recommended reading.
  37
+	- ev_embed_stop did not correctly stop the watcher (very good
  38
+          testcase by Vladimir Timofeev).
  39
+        - ev_run will now always update the current loop time - it erroneously
  40
+          didn't when idle watchers were active, causing timers not to fire.
  41
+        - fix a bug where a timeout of zero caused the timer not to fire
  42
+          in the libevent emulation (testcase by Péter Szabó).
  43
+	- applied win32 fixes by Michael Lenaghan (also James Mansion).
  44
+	- replace EV_MINIMAL by EV_FEATURES.
  45
+        - prefer EPOLL_CTL_ADD over EPOLL_CTL_MOD in some more cases, as it
  46
+          seems the former is *much* faster than the latter.
  47
+        - linux kernel version detection (for inotify bug workarounds)
  48
+          did not work properly.
  49
+        - reduce the number of spurious wake-ups with the ports backend.
  50
+        - remove dependency on sys/queue.h on freebsd (patch by Vanilla Hsu).
  51
+        - do async init within ev_async_start, not ev_async_set, which avoids
  52
+          an API quirk where the set function must be called in the C++ API
  53
+          even when there is nothing to set.
  54
+        - add (undocumented) EV_ENABLE when adding events with kqueue,
  55
+          this might help with OS X, which seems to need it despite documenting
  56
+          not to need it (helpfully pointed out by Tilghman Lesher).
  57
+        - do not use poll by default on freebsd, it's broken (what isn't
  58
+          on freebsd...).
  59
+        - allow to embed epoll on kernels >= 2.6.32.
  60
+        - configure now prepends -O3, not appends it, so one can still
  61
+          override it.
  62
+        - ev.pod: greatly expanded the portability section, added a porting
  63
+          section, a description of watcher states and made lots of minor fixes.
  64
+        - disable poll backend on AIX, the poll header spams the namespace
  65
+          and it's not worth working around dead platforms (reported
  66
+          and analyzed by Aivars Kalvans).
  67
+        - improve header file compatibility of the standalone eventfd code
  68
+          in an obscure case.
  69
+        - implement EV_AVOID_STDIO option.
  70
+        - do not use sscanf to parse linux version number (smaller, faster,
  71
+          no sscanf dependency).
  72
+        - new EV_CHILD_ENABLE and EV_SIGNAL_ENABLE configurable settings.
  73
+        - update libev.m4 HAVE_CLOCK_SYSCALL test for newer glibcs.
  74
+        - add section on accept() problems to the manpage.
  75
+        - rename EV_TIMEOUT to EV_TIMER.
  76
+        - rename ev_loop_count/depth/verify/loop/unloop.
  77
+        - remove ev_default_destroy and ev_default_fork.
  78
+        - switch to two-digit minor version.
  79
+        - work around an apparent gentoo compiler bug.
  80
+        - define _DARWIN_UNLIMITED_SELECT. just so.
  81
+        - use enum instead of #define for most constants.
  82
+        - improve compatibility to older C++ compilers.
  83
+        - (experimental) ev_run/ev_default_loop/ev_break/ev_loop_new have now
  84
+          default arguments when compiled as C++.
  85
+        - enable automake dependency tracking.
  86
+        - ev_loop_new no longer leaks memory when loop creation failed.
  87
+        - new ev_cleanup watcher type.
  88
+
  89
+3.9  Thu Dec 31 07:59:59 CET 2009
  90
+	- signalfd is no longer used by default and has to be requested
  91
+          explicitly - this means that easy to catch bugs become hard to
  92
+          catch race conditions, but the users have spoken.
  93
+        - point out the unspecified signal mask in the documentation, and
  94
+          that this is a race condition regardless of EV_SIGNALFD.
  95
+	- backport inotify code to C89.
  96
+        - inotify file descriptors could leak into child processes.
  97
+        - ev_stat watchers could keep an errornous extra ref on the loop,
  98
+          preventing exit when unregistering all watchers (testcases
  99
+          provided by ry@tinyclouds.org).
  100
+        - implement EV_WIN32_HANDLE_TO_FD and EV_WIN32_CLOSE_FD configuration
  101
+          symbols to make it easier for apps to do their own fd management.
  102
+        - support EV_IDLE_ENABLE being disabled in ev++.h
  103
+          (patch by Didier Spezia).
  104
+        - take advantage of inotify_init1, if available, to set cloexec/nonblock
  105
+          on fd creation, to avoid races.
  106
+        - the signal handling pipe wasn't always initialised under windows
  107
+          (analysed by lekma).
  108
+        - changed minimum glibc requirement from glibc 2.9 to 2.7, for
  109
+          signalfd.
  110
+        - add missing string.h include (Denis F. Latypoff).
  111
+        - only replace ev_stat.prev when we detect an actual difference,
  112
+          so prev is (almost) always different to attr. this might
  113
+          have caused the problems with 04_stat.t.
  114
+        - add ev::timer->remaining () method to C++ API.
  115
+
  116
+3.8  Sun Aug  9 14:30:45 CEST 2009
  117
+	- incompatible change: do not necessarily reset signal handler
  118
+          to SIG_DFL when a sighandler is stopped.
  119
+        - ev_default_destroy did not properly free or zero some members,
  120
+          potentially causing crashes and memory corruption on repeated
  121
+          ev_default_destroy/ev_default_loop calls.
  122
+	- take advantage of signalfd on GNU/Linux systems.
  123
+	- document that the signal mask might be in an unspecified
  124
+          state when using libev's signal handling.
  125
+        - take advantage of some GNU/Linux calls to set cloexec/nonblock
  126
+          on fd creation, to avoid race conditions.
  127
+
  128
+3.7  Fri Jul 17 16:36:32 CEST 2009
  129
+	- ev_unloop and ev_loop wrongly used a global variable to exit loops,
  130
+          instead of using a per-loop variable (bug caught by accident...).
  131
+	- the ev_set_io_collect_interval interpretation has changed.
  132
+        - add new functionality: ev_set_userdata, ev_userdata,
  133
+          ev_set_invoke_pending_cb, ev_set_loop_release_cb,
  134
+          ev_invoke_pending, ev_pending_count, together with a long example
  135
+          about thread locking.
  136
+        - add ev_timer_remaining (as requested by Denis F. Latypoff).
  137
+        - add ev_loop_depth.
  138
+        - calling ev_unloop in fork/prepare watchers will no longer poll
  139
+          for new events.
  140
+	- Denis F. Latypoff corrected many typos in example code snippets.
  141
+        - honor autoconf detection of EV_USE_CLOCK_SYSCALL, also double-
  142
+          check that the syscall number is available before trying to
  143
+          use it (reported by ry@tinyclouds).
  144
+        - use GetSystemTimeAsFileTime instead of _timeb on windows, for
  145
+          slightly higher accuracy.
  146
+        - properly declare ev_loop_verify and ev_now_update even when
  147
+          !EV_MULTIPLICITY.
  148
+        - do not compile in any priority code when EV_MAXPRI == EV_MINPRI.
  149
+        - support EV_MINIMAL==2 for a reduced API.
  150
+        - actually 0-initialise struct sigaction when installing signals.
  151
+        - add section on hibernate and stopped processes to ev_timer docs.
  152
+
  153
+3.6  Tue Apr 28 02:49:30 CEST 2009
  154
+	- multiple timers becoming ready within an event loop iteration
  155
+          will be invoked in the "correct" order now.
  156
+	- do not leave the event loop early just because we have no active
  157
+          watchers, fixing a problem when embedding a kqueue loop
  158
+          that has active kernel events but no registered watchers
  159
+          (reported by blacksand blacksand).
  160
+	- correctly zero the idx values for arrays, so destroying and
  161
+          reinitialising the default loop actually works (patch by
  162
+          Malek Hadj-Ali).
  163
+        - implement ev_suspend and ev_resume.
  164
+        - new EV_CUSTOM revents flag for use by applications.
  165
+        - add documentation section about priorites.
  166
+        - add a glossary to the dcoumentation.
  167
+        - extend the ev_fork description slightly.
  168
+        - optimize a jump out of call_pending.
  169
+
  170
+3.53 Sun Feb 15 02:38:20 CET 2009
  171
+	- fix a bug in event pipe creation on win32 that would cause a
  172
+          failed assertion on event loop creation (patch by Malek Hadj-Ali).
  173
+	- probe for CLOCK_REALTIME support at runtime as well and fall
  174
+          back to gettimeofday if there is an error, to support older
  175
+          operating systems with newer header files/libraries.
  176
+        - prefer gettimeofday over clock_gettime with USE_CLOCK_SYSCALL
  177
+          (default most everywhere), otherwise not.
  178
+
  179
+3.52 Wed Jan  7 21:43:02 CET 2009
  180
+	- fix compilation of select backend in fd_set mode when NFDBITS is
  181
+          missing (to get it to compile on QNX, reported by Rodrigo Campos).
  182
+        - better select-nfds handling when select backend is in fd_set mode.
  183
+        - diagnose fd_set overruns when select backend is in fd_set mode.
  184
+        - due to a thinko, instead of disabling everything but
  185
+          select on the borked OS X platform, everything but select was
  186
+          allowed (reported by Emanuele Giaquinta).
  187
+        - actually verify that local and remote port are matching in
  188
+          libev's socketpair emulation, which makes denial-of-service
  189
+          attacks harder (but not impossible - it's windows). Make sure
  190
+          it even works under vista, which thinks that getpeer/sockname
  191
+          should return fantasy port numbers.
  192
+        - include "libev" in all assertion messages for potentially
  193
+          clearer diagnostics.
  194
+        - event_get_version (libevent compatibility) returned
  195
+          a useless string instead of the expected version string
  196
+          (patch by W.C.A. Wijngaards).
  197
+
  198
+3.51 Wed Dec 24 23:00:11 CET 2008
  199
+        - fix a bug where an inotify watcher was added twice, causing
  200
+          freezes on hash collisions (reported and analysed by Graham Leggett).
  201
+	- new config symbol, EV_USE_CLOCK_SYSCALL, to make libev use
  202
+          a direct syscall - slower, but no dependency on librt et al.
  203
+        - assume negative return values != -1 signals success of port_getn
  204
+          (http://cvs.epicsol.org/cgi/viewcvs.cgi/epic5/source/newio.c?rev=1.52)
  205
+          (no known failure reports, but it doesn't hurt).
  206
+        - fork detection in ev_embed now stops and restarts the watcher
  207
+          automatically.
  208
+        - EXPERIMENTAL: default the method to operator () in ev++.h,
  209
+          to make it nicer to use functors (requested by Benedek László).
  210
+        - fixed const object callbacks in ev++.h.
  211
+        - replaced loop_ref argument of watcher.set (loop) by a direct
  212
+          ev_loop * in ev++.h, to avoid clashes with functor patch.
  213
+        - do not try to watch the empty string via inotify.
  214
+        - inotify watchers could be leaked under certain circumstances.
  215
+        - OS X 10.5 is actually even more broken than earlier versions,
  216
+          so fall back to select on that piece of garbage.
  217
+        - fixed some weirdness in the ev_embed documentation.
  218
+
  219
+3.49 Wed Nov 19 11:26:53 CET 2008
  220
+	- ev_stat watchers will now use inotify as a mere hint on
  221
+          kernels <2.6.25, or if the filesystem is not in the
  222
+          "known to be good" list.
  223
+        - better mingw32 compatibility (it's not as borked as native win32)
  224
+          (analysed by Roger Pack).
  225
+        - include stdio.h in the example program, as too many people are
  226
+          confused by the weird C language otherwise. I guess the next thing
  227
+          I get told is that the "..." ellipses in the examples don't compile
  228
+          with their C compiler.
  229
+
  230
+3.48 Thu Oct 30 09:02:37 CET 2008
  231
+	- further optimise away the EPOLL_CTL_ADD/MOD combo in the epoll
  232
+          backend by assuming the kernel event mask hasn't changed if
  233
+          ADD fails with EEXIST.
  234
+        - work around spurious event notification bugs in epoll by using
  235
+          a 32-bit generation counter. recreate kernel state if we receive
  236
+          spurious notifications or unwanted events. this is very costly,
  237
+          but I didn't come up with this horrible design.
  238
+        - use memset to initialise most arrays now and do away with the
  239
+          init functions.
  240
+        - expand time-out strategies into a "Be smart about timeouts" section.
  241
+        - drop the "struct" from all ev_watcher declarations in the
  242
+          documentation and did other clarifications (yeah, it was a mistake
  243
+          to have a struct AND a function called ev_loop).
  244
+	- fix a bug where ev_default would not initialise the default
  245
+          loop again after it was destroyed with ev_default_destroy.
  246
+        - rename syserr to ev_syserr to avoid name clashes when embedding,
  247
+          do similar changes for event.c.
  248
+
  249
+3.45 Tue Oct 21 21:59:26 CEST 2008
  250
+	- disable inotify usage on linux <2.6.25, as it is broken
  251
+          (reported by Yoann Vandoorselaere).
  252
+        - ev_stat erroneously would try to add inotify watchers
  253
+          even when inotify wasn't available (this should only
  254
+          have a performance impact).
  255
+	- ev_once now passes both timeout and io to the callback if both
  256
+          occur concurrently, instead of giving timeouts precedence.
  257
+	- disable EV_USE_INOTIFY when sys/inotify.h is too old.
  258
+
  259
+3.44 Mon Sep 29 05:18:39 CEST 2008
  260
+	- embed watchers now automatically invoke ev_loop_fork on the
  261
+          embedded loop when the parent loop forks.
  262
+	- new function: ev_now_update (loop).
  263
+	- verify_watcher was not marked static.
  264
+        - improve the "associating..." manpage section.
  265
+        - documentation tweaks here and there.
  266
+
  267
+3.43 Sun Jul  6 05:34:41 CEST 2008
  268
+	- include more include files on windows to get struct _stati64
  269
+          (reported by Chris Hulbert, but doesn't quite fix his issue).
  270
+	- add missing #include <io.h> in ev.c on windows (reported by
  271
+          Matt Tolton).
  272
+
  273
+3.42 Tue Jun 17 12:12:07 CEST 2008
  274
+	- work around yet another windows bug: FD_SET actually adds fd's
  275
+          multiple times to the fd_*SET*, despite official MSN docs claiming
  276
+          otherwise. Reported and well-analysed by Matt Tolton.
  277
+	- define NFDBITS to 0 when EV_SELECT_IS_WINSOCKET to make it compile
  278
+          (reported any analysed by Chris Hulbert).
  279
+        - fix a bug in ev_ebadf (this function is only used to catch
  280
+          programming errors in the libev user). reported by Matt Tolton.
  281
+        - fix a bug in fd_intern on win32 (could lead to compile errors
  282
+          under some circumstances, but would work correctly if it compiles).
  283
+          reported by Matt Tolton.
  284
+        - (try to) work around missing lstat on windows.
  285
+	- pass in the write fd set as except fd set under windows. windows
  286
+          is so uncontrollably lame that it requires this. this means that
  287
+          switching off oobinline is not supported (but tcp/ip doesn't
  288
+          have oob, so that would be stupid anyways.
  289
+        - use posix module symbol to auto-detect monotonic clock presence
  290
+          and some other default values.
  291
+
  292
+3.41 Fri May 23 18:42:54 CEST 2008
  293
+	- work around an obscure bug in winsocket select: if you
  294
+          provide only empty fd sets then select returns WSAEINVAL. how sucky.
  295
+        - improve timer scheduling stability and reduce use of time_epsilon.
  296
+        - use 1-based 2-heap for EV_MINIMAL, simplifies code, reduces
  297
+          codesize and makes for better cache-efficiency.
  298
+        - use 3-based 4-heap for !EV_MINIMAL. this makes better use
  299
+          of cpu cache lines and gives better growth behaviour than
  300
+          2-based heaps.
  301
+        - cache timestamp within heap for !EV_MINIMAL, to avoid random
  302
+          memory accesses.
  303
+        - document/add EV_USE_4HEAP and EV_HEAP_CACHE_AT.
  304
+        - fix a potential aliasing issue in ev_timer_again.
  305
+        - add/document ev_periodic_at, retract direct access to ->at.
  306
+        - improve ev_stat docs.
  307
+        - add portability requirements section.
  308
+	- fix manpage headers etc.
  309
+        - normalise WSA error codes to lower range on windows.
  310
+        - add consistency check code that can be called automatically
  311
+          or on demand to check for internal structures (ev_loop_verify).
  312
+
  313
+3.31 Wed Apr 16 20:45:04 CEST 2008
  314
+	- added last minute fix for ev_poll.c by Brandon Black.
  315
+
  316
+3.3  Wed Apr 16 19:04:10 CEST 2008
  317
+        - event_base_loopexit should return 0 on success
  318
+          (W.C.A. Wijngaards).
  319
+	- added linux eventfd support.
  320
+        - try to autodetect epoll and inotify support
  321
+          by libc header version if not using autoconf.
  322
+        - new symbols: EV_DEFAULT_UC and EV_DEFAULT_UC_.
  323
+        - declare functions defined in ev.h as inline if
  324
+          C99 or gcc are available.
  325
+        - enable inlining with gcc versions 2 and 3.
  326
+        - work around broken poll implementations potentially
  327
+          not clearing revents field in ev_poll (Brandon Black)
  328
+          (no such systems are known at this time).
  329
+        - work around a bug in realloc on openbsd and darwin,
  330
+          also makes the erroneous valgrind complaints
  331
+          go away (noted by various people).
  332
+        - fix ev_async_pending, add c++ wrapper for ev_async
  333
+          (based on patch sent by Johannes Deisenhofer).
  334
+        - add sensible set method to ev::embed.
  335
+        - made integer constants type int in ev.h.
  336
+
  337
+3.2  Wed Apr  2 17:11:19 CEST 2008
  338
+	- fix a 64 bit overflow issue in the select backend,
  339
+          by using fd_mask instead of int for the mask.
  340
+        - rename internal sighandler to avoid clash with very old perls.
  341
+        - entering ev_loop will not clear the ONESHOT or NONBLOCKING
  342
+          flags of any outer loops anymore.
  343
+        - add ev_async_pending.
  344
+
  345
+3.1  Thu Mar 13 13:45:22 CET 2008
  346
+	- implement ev_async watchers.
  347
+        - only initialise signal pipe on demand.
  348
+	- make use of sig_atomic_t configurable.
  349
+        - improved documentation.
  350
+
  351
+3.0  Mon Jan 28 13:14:47 CET 2008
  352
+	- API/ABI bump to version 3.0.
  353
+	- ev++.h includes "ev.h" by default now, not <ev.h>.
  354
+	- slightly improved documentation.
  355
+	- speed up signal detection after a fork.
  356
+        - only optionally return trace status changed in ev_child
  357
+          watchers.
  358
+        - experimental (and undocumented) loop wrappers for ev++.h.
  359
+
  360
+2.01 Tue Dec 25 08:04:41 CET 2007
  361
+	- separate Changes file.
  362
+	- fix ev_path_set => ev_stat_set typo.
  363
+        - remove event_compat.h from the libev tarball.
  364
+        - change how include files are found.
  365
+        - doc updates.
  366
+        - update licenses, explicitly allow for GPL relicensing.
  367
+
  368
+2.0  Sat Dec 22 17:47:03 CET 2007
  369
+        - new ev_sleep, ev_set_(io|timeout)_collect_interval.
  370
+        - removed epoll from embeddable fd set.
  371
+        - fix embed watchers.
  372
+	- renamed ev_embed.loop to other.
  373
+	- added exported Symbol tables.
  374
+        - undefine member wrapper macros at the end of ev.c.
  375
+        - respect EV_H in ev++.h.
  376
+
  377
+1.86 Tue Dec 18 02:36:57 CET 2007
  378
+	- fix memleak on loop destroy (not relevant for perl).
  379
+
  380
+1.85 Fri Dec 14 20:32:40 CET 2007
  381
+        - fix some aliasing issues w.r.t. timers and periodics
  382
+          (not relevant for perl).
  383
+
  384
+(for historic versions refer to EV/Changes, found in the Perl interface)
  385
+
  386
+0.1  Wed Oct 31 21:31:48 CET 2007
  387
+	- original version; hacked together in <24h.
  388
+
36  ev/LICENSE
... ...
@@ -0,0 +1,36 @@
  1
+All files in libev are Copyright (C)2007,2008,2009 Marc Alexander Lehmann.
  2
+
  3
+Redistribution and use in source and binary forms, with or without
  4
+modification, are permitted provided that the following conditions are
  5
+met:
  6
+
  7
+    * Redistributions of source code must retain the above copyright
  8
+      notice, this list of conditions and the following disclaimer.
  9
+
  10
+    * Redistributions in binary form must reproduce the above
  11
+      copyright notice, this list of conditions and the following
  12
+      disclaimer in the documentation and/or other materials provided
  13
+      with the distribution.
  14
+
  15
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  16
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  17
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  18
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  19
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  20
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  21
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  22
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  23
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  24
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  25
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  26
+
  27
+Alternatively, the contents of this package may be used under the terms
  28
+of the GNU General Public License ("GPL") version 2 or any later version,
  29
+in which case the provisions of the GPL are applicable instead of the
  30
+above. If you wish to allow the use of your version of this package only
  31
+under the terms of the GPL and not to allow others to use your version of
  32
+this file under the BSD license, indicate your decision by deleting the
  33
+provisions above and replace them with the notice and other provisions
  34
+required by the GPL in this and the other files of this package. If you do
  35
+not delete the provisions above, a recipient may use your version of this
  36
+file under either the BSD or the GPL.
18  ev/Makefile.am
... ...
@@ -0,0 +1,18 @@
  1
+AUTOMAKE_OPTIONS = foreign
  2
+
  3
+VERSION_INFO = 4:0:0
  4
+
  5
+EXTRA_DIST = LICENSE Changes libev.m4 autogen.sh \
  6
+	     ev_vars.h ev_wrap.h \
  7
+	     ev_epoll.c ev_select.c ev_poll.c ev_kqueue.c ev_port.c ev_win32.c \
  8
+	     ev.3 ev.pod
  9
+
  10
+man_MANS = ev.3
  11
+
  12
+include_HEADERS = ev.h ev++.h event.h
  13
+
  14
+lib_LTLIBRARIES = libev.la
  15
+
  16
+libev_la_SOURCES = ev.c event.c
  17
+libev_la_LDFLAGS = -version-info $(VERSION_INFO)
  18
+
771  ev/Makefile.in
... ...
@@ -0,0 +1,771 @@
  1
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
  2
+# @configure_input@
  3
+
  4
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
  5
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
  6
+# Inc.
  7
+# This Makefile.in is free software; the Free Software Foundation
  8
+# gives unlimited permission to copy and/or distribute it,
  9
+# with or without modifications, as long as this notice is preserved.
  10
+
  11
+# This program is distributed in the hope that it will be useful,
  12
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
  13
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
  14
+# PARTICULAR PURPOSE.
  15
+
  16
+@SET_MAKE@
  17
+
  18
+
  19
+VPATH = @srcdir@
  20
+pkgdatadir = $(datadir)/@PACKAGE@
  21
+pkgincludedir = $(includedir)/@PACKAGE@
  22
+pkglibdir = $(libdir)/@PACKAGE@
  23
+pkglibexecdir = $(libexecdir)/@PACKAGE@
  24
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
  25
+install_sh_DATA = $(install_sh) -c -m 644
  26
+install_sh_PROGRAM = $(install_sh) -c
  27
+install_sh_SCRIPT = $(install_sh) -c
  28
+INSTALL_HEADER = $(INSTALL_DATA)
  29
+transform = $(program_transform_name)
  30
+NORMAL_INSTALL = :
  31
+PRE_INSTALL = :
  32
+POST_INSTALL = :
  33
+NORMAL_UNINSTALL = :
  34
+PRE_UNINSTALL = :
  35
+POST_UNINSTALL = :
  36
+build_triplet = @build@
  37
+host_triplet = @host@
  38
+subdir = .
  39
+DIST_COMMON = README $(am__configure_deps) $(include_HEADERS) \
  40
+	$(srcdir)/Makefile.am $(srcdir)/Makefile.in \
  41
+	$(srcdir)/config.h.in $(top_srcdir)/configure config.guess \
  42
+	config.sub depcomp install-sh ltmain.sh missing mkinstalldirs
  43
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
  44
+am__aclocal_m4_deps = $(top_srcdir)/libev.m4 \
  45
+	$(top_srcdir)/configure.ac
  46
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
  47
+	$(ACLOCAL_M4)
  48
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  49
+ configure.lineno config.status.lineno
  50
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
  51
+CONFIG_HEADER = config.h
  52
+CONFIG_CLEAN_FILES =
  53
+CONFIG_CLEAN_VPATH_FILES =
  54
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
  55
+am__vpath_adj = case $$p in \
  56
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
  57
+    *) f=$$p;; \
  58
+  esac;
  59
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
  60
+am__install_max = 40
  61
+am__nobase_strip_setup = \
  62
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
  63
+am__nobase_strip = \
  64
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
  65
+am__nobase_list = $(am__nobase_strip_setup); \
  66
+  for p in $$list; do echo "$$p $$p"; done | \
  67
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
  68
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
  69
+    if (++n[$$2] == $(am__install_max)) \
  70
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
  71
+    END { for (dir in files) print dir, files[dir] }'
  72
+am__base_list = \
  73
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
  74
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
  75
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(man3dir)" \
  76
+	"$(DESTDIR)$(includedir)"
  77
+LTLIBRARIES = $(lib_LTLIBRARIES)
  78
+libev_la_LIBADD =
  79
+am_libev_la_OBJECTS = ev.lo event.lo
  80
+libev_la_OBJECTS = $(am_libev_la_OBJECTS)
  81
+libev_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
  82
+	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(libev_la_LDFLAGS) \
  83
+	$(LDFLAGS) -o $@
  84
+DEFAULT_INCLUDES = -I.@am__isrc@
  85
+depcomp = $(SHELL) $(top_srcdir)/depcomp
  86
+am__depfiles_maybe = depfiles
  87
+am__mv = mv -f
  88
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
  89
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
  90
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
  91
+	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
  92
+	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
  93
+CCLD = $(CC)
  94
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
  95
+	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
  96
+	$(LDFLAGS) -o $@
  97
+SOURCES = $(libev_la_SOURCES)
  98
+DIST_SOURCES = $(libev_la_SOURCES)
  99
+man3dir = $(mandir)/man3
  100
+NROFF = nroff
  101
+MANS = $(man_MANS)
  102
+HEADERS = $(include_HEADERS)
  103
+ETAGS = etags
  104
+CTAGS = ctags
  105
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
  106
+distdir = $(PACKAGE)-$(VERSION)
  107
+top_distdir = $(distdir)
  108
+am__remove_distdir = \
  109
+  { test ! -d "$(distdir)" \
  110
+    || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
  111
+         && rm -fr "$(distdir)"; }; }
  112
+DIST_ARCHIVES = $(distdir).tar.gz
  113
+GZIP_ENV = --best
  114
+distuninstallcheck_listfiles = find . -type f -print
  115
+distcleancheck_listfiles = find . -type f -print
  116
+ACLOCAL = @ACLOCAL@
  117
+AMTAR = @AMTAR@
  118
+AR = @AR@
  119
+AUTOCONF = @AUTOCONF@
  120
+AUTOHEADER = @AUTOHEADER@
  121
+AUTOMAKE = @AUTOMAKE@
  122
+AWK = @AWK@
  123
+CC = @CC@
  124
+CCDEPMODE = @CCDEPMODE@
  125
+CFLAGS = @CFLAGS@
  126
+CPP = @CPP@
  127
+CPPFLAGS = @CPPFLAGS@
  128
+CYGPATH_W = @CYGPATH_W@
  129
+DEFS = @DEFS@
  130
+DEPDIR = @DEPDIR@
  131
+DSYMUTIL = @DSYMUTIL@
  132
+DUMPBIN = @DUMPBIN@
  133
+ECHO_C = @ECHO_C@
  134
+ECHO_N = @ECHO_N@
  135
+ECHO_T = @ECHO_T@
  136
+EGREP = @EGREP@
  137
+EXEEXT = @EXEEXT@
  138
+FGREP = @FGREP@
  139
+GREP = @GREP@
  140
+INSTALL = @INSTALL@
  141
+INSTALL_DATA = @INSTALL_DATA@
  142
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
  143
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
  144
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
  145
+LD = @LD@
  146
+LDFLAGS = @LDFLAGS@
  147
+LIBOBJS = @LIBOBJS@
  148
+LIBS = @LIBS@
  149
+LIBTOOL = @LIBTOOL@
  150
+LIPO = @LIPO@
  151
+LN_S = @LN_S@
  152
+LTLIBOBJS = @LTLIBOBJS@
  153
+MAINT = @MAINT@
  154
+MAKEINFO = @MAKEINFO@
  155
+MKDIR_P = @MKDIR_P@
  156
+NM = @NM@
  157
+NMEDIT = @NMEDIT@
  158
+OBJDUMP = @OBJDUMP@
  159
+OBJEXT = @OBJEXT@
  160
+OTOOL = @OTOOL@
  161
+OTOOL64 = @OTOOL64@
  162
+PACKAGE = @PACKAGE@
  163
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
  164
+PACKAGE_NAME = @PACKAGE_NAME@
  165
+PACKAGE_STRING = @PACKAGE_STRING@
  166
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
  167
+PACKAGE_URL = @PACKAGE_URL@
  168
+PACKAGE_VERSION = @PACKAGE_VERSION@
  169
+PATH_SEPARATOR = @PATH_SEPARATOR@
  170
+RANLIB = @RANLIB@
  171
+SED = @SED@
  172
+SET_MAKE = @SET_MAKE@
  173
+SHELL = @SHELL@
  174
+STRIP = @STRIP@
  175
+VERSION = @VERSION@
  176
+abs_builddir = @abs_builddir@
  177
+abs_srcdir = @abs_srcdir@
  178
+abs_top_builddir = @abs_top_builddir@
  179
+abs_top_srcdir = @abs_top_srcdir@
  180
+ac_ct_CC = @ac_ct_CC@
  181
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
  182
+am__include = @am__include@
  183
+am__leading_dot = @am__leading_dot@
  184
+am__quote = @am__quote@
  185
+am__tar = @am__tar@
  186
+am__untar = @am__untar@
  187
+bindir = @bindir@
  188
+build = @build@
  189
+build_alias = @build_alias@
  190
+build_cpu = @build_cpu@
  191
+build_os = @build_os@
  192
+build_vendor = @build_vendor@
  193
+builddir = @builddir@
  194
+datadir = @datadir@
  195
+datarootdir = @datarootdir@
  196
+docdir = @docdir@
  197
+dvidir = @dvidir@
  198
+exec_prefix = @exec_prefix@
  199
+host = @host@
  200
+host_alias = @host_alias@
  201
+host_cpu = @host_cpu@
  202
+host_os = @host_os@
  203
+host_vendor = @host_vendor@
  204
+htmldir = @htmldir@
  205
+includedir = @includedir@
  206
+infodir = @infodir@
  207
+install_sh = @install_sh@
  208
+libdir = @libdir@
  209
+libexecdir = @libexecdir@
  210
+localedir = @localedir@
  211
+localstatedir = @localstatedir@
  212
+lt_ECHO = @lt_ECHO@
  213
+mandir = @mandir@
  214
+mkdir_p = @mkdir_p@
  215
+oldincludedir = @oldincludedir@
  216
+pdfdir = @pdfdir@
  217
+prefix = @prefix@
  218
+program_transform_name = @program_transform_name@
  219
+psdir = @psdir@
  220
+sbindir = @sbindir@
  221
+sharedstatedir = @sharedstatedir@
  222
+srcdir = @srcdir@
  223
+sysconfdir = @sysconfdir@
  224
+target_alias = @target_alias@
  225
+top_build_prefix = @top_build_prefix@
  226
+top_builddir = @top_builddir@
  227
+top_srcdir = @top_srcdir@
  228
+AUTOMAKE_OPTIONS = foreign
  229
+VERSION_INFO = 4:0:0
  230
+EXTRA_DIST = LICENSE Changes libev.m4 autogen.sh \
  231
+	     ev_vars.h ev_wrap.h \
  232
+	     ev_epoll.c ev_select.c ev_poll.c ev_kqueue.c ev_port.c ev_win32.c \
  233
+	     ev.3 ev.pod
  234
+
  235
+man_MANS = ev.3
  236
+include_HEADERS = ev.h ev++.h event.h
  237
+lib_LTLIBRARIES = libev.la
  238
+libev_la_SOURCES = ev.c event.c
  239
+libev_la_LDFLAGS = -version-info $(VERSION_INFO)
  240
+all: config.h
  241
+	$(MAKE) $(AM_MAKEFLAGS) all-am
  242
+
  243
+.SUFFIXES:
  244
+.SUFFIXES: .c .lo .o .obj
  245
+am--refresh:
  246
+	@:
  247
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
  248
+	@for dep in $?; do \
  249
+	  case '$(am__configure_deps)' in \
  250
+	    *$$dep*) \
  251
+	      echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
  252
+	      $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
  253
+		&& exit 0; \
  254
+	      exit 1;; \
  255
+	  esac; \
  256
+	done; \
  257
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
  258
+	$(am__cd) $(top_srcdir) && \
  259
+	  $(AUTOMAKE) --foreign Makefile
  260
+.PRECIOUS: Makefile
  261
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
  262
+	@case '$?' in \
  263
+	  *config.status*) \
  264
+	    echo ' $(SHELL) ./config.status'; \
  265
+	    $(SHELL) ./config.status;; \
  266
+	  *) \
  267
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
  268
+	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
  269
+	esac;
  270
+
  271
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
  272
+	$(SHELL) ./config.status --recheck
  273
+
  274
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
  275
+	$(am__cd) $(srcdir) && $(AUTOCONF)
  276
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
  277
+	$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
  278
+$(am__aclocal_m4_deps):
  279
+
  280
+config.h: stamp-h1
  281
+	@if test ! -f $@; then \
  282
+	  rm -f stamp-h1; \
  283
+	  $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
  284
+	else :; fi
  285
+
  286
+stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
  287
+	@rm -f stamp-h1
  288
+	cd $(top_builddir) && $(SHELL) ./config.status config.h
  289
+$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) 
  290
+	($(am__cd) $(top_srcdir) && $(AUTOHEADER))
  291
+	rm -f stamp-h1
  292
+	touch $@
  293
+
  294
+distclean-hdr:
  295
+	-rm -f config.h stamp-h1
  296
+install-libLTLIBRARIES: $(lib_LTLIBRARIES)
  297
+	@$(NORMAL_INSTALL)
  298
+	test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
  299
+	@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
  300
+	list2=; for p in $$list; do \
  301
+	  if test -f $$p; then \
  302
+	    list2="$$list2 $$p"; \
  303
+	  else :; fi; \
  304
+	done; \
  305
+	test -z "$$list2" || { \
  306
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
  307
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
  308
+	}
  309
+
  310
+uninstall-libLTLIBRARIES:
  311
+	@$(NORMAL_UNINSTALL)
  312
+	@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
  313
+	for p in $$list; do \
  314
+	  $(am__strip_dir) \
  315
+	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
  316
+	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
  317
+	done
  318
+
  319
+clean-libLTLIBRARIES:
  320
+	-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
  321
+	@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
  322
+	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
  323
+	  test "$$dir" != "$$p" || dir=.; \
  324
+	  echo "rm -f \"$${dir}/so_locations\""; \
  325
+	  rm -f "$${dir}/so_locations"; \
  326
+	done
  327
+libev.la: $(libev_la_OBJECTS) $(libev_la_DEPENDENCIES) 
  328
+	$(libev_la_LINK) -rpath $(libdir) $(libev_la_OBJECTS) $(libev_la_LIBADD) $(LIBS)
  329
+
  330
+mostlyclean-compile:
  331
+	-rm -f *.$(OBJEXT)
  332
+
  333
+distclean-compile:
  334
+	-rm -f *.tab.c
  335
+
  336
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ev.Plo@am__quote@
  337
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/event.Plo@am__quote@
  338
+
  339
+.c.o:
  340
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
  341
+@am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
  342
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
  343
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
  344
+@am__fastdepCC_FALSE@	$(COMPILE) -c $<
  345
+
  346
+.c.obj:
  347
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
  348
+@am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
  349
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
  350
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
  351
+@am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
  352
+
  353
+.c.lo:
  354
+@am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
  355
+@am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
  356
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
  357
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
  358
+@am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
  359
+
  360
+mostlyclean-libtool:
  361
+	-rm -f *.lo
  362
+
  363
+clean-libtool:
  364
+	-rm -rf .libs _libs
  365
+
  366
+distclean-libtool:
  367
+	-rm -f libtool config.lt
  368
+install-man3: $(man_MANS)
  369
+	@$(NORMAL_INSTALL)
  370
+	test -z "$(man3dir)" || $(MKDIR_P) "$(DESTDIR)$(man3dir)"
  371
+	@list=''; test -n "$(man3dir)" || exit 0; \
  372
+	{ for i in $$list; do echo "$$i"; done; \
  373
+	l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
  374
+	  sed -n '/\.3[a-z]*$$/p'; \
  375
+	} | while read p; do \
  376
+	  if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
  377
+	  echo "$$d$$p"; echo "$$p"; \
  378
+	done | \
  379
+	sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
  380
+	      -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
  381
+	sed 'N;N;s,\n, ,g' | { \
  382
+	list=; while read file base inst; do \
  383
+	  if test "$$base" = "$$inst"; then list="$$list $$file"; else \
  384
+	    echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man3dir)/$$inst'"; \
  385
+	    $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man3dir)/$$inst" || exit $$?; \
  386
+	  fi; \
  387
+	done; \
  388
+	for i in $$list; do echo "$$i"; done | $(am__base_list) | \
  389
+	while read files; do \
  390
+	  test -z "$$files" || { \
  391
+	    echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man3dir)'"; \
  392
+	    $(INSTALL_DATA) $$files "$(DESTDIR)$(man3dir)" || exit $$?; }; \
  393
+	done; }
  394
+
  395
+uninstall-man3:
  396
+	@$(NORMAL_UNINSTALL)
  397
+	@list=''; test -n "$(man3dir)" || exit 0; \
  398
+	files=`{ for i in $$list; do echo "$$i"; done; \
  399
+	l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
  400
+	  sed -n '/\.3[a-z]*$$/p'; \
  401
+	} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
  402
+	      -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
  403
+	test -z "$$files" || { \
  404
+	  echo " ( cd '$(DESTDIR)$(man3dir)' && rm -f" $$files ")"; \
  405
+	  cd "$(DESTDIR)$(man3dir)" && rm -f $$files; }
  406
+install-includeHEADERS: $(include_HEADERS)
  407
+	@$(NORMAL_INSTALL)
  408
+	test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
  409
+	@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
  410
+	for p in $$list; do \
  411
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
  412
+	  echo "$$d$$p"; \
  413
+	done | $(am__base_list) | \
  414
+	while read files; do \
  415
+	  echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includedir)'"; \
  416
+	  $(INSTALL_HEADER) $$files "$(DESTDIR)$(includedir)" || exit $$?; \
  417
+	done
  418
+
  419
+uninstall-includeHEADERS:
  420
+	@$(NORMAL_UNINSTALL)
  421
+	@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
  422
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
  423
+	test -n "$$files" || exit 0; \
  424
+	echo " ( cd '$(DESTDIR)$(includedir)' && rm -f" $$files ")"; \
  425
+	cd "$(DESTDIR)$(includedir)" && rm -f $$files
  426
+
  427
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
  428
+	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
  429
+	unique=`for i in $$list; do \
  430
+	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
  431
+	  done | \
  432
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
  433
+	      END { if (nonempty) { for (i in files) print i; }; }'`; \
  434
+	mkid -fID $$unique
  435
+tags: TAGS
  436
+
  437
+TAGS:  $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
  438
+		$(TAGS_FILES) $(LISP)
  439
+	set x; \
  440
+	here=`pwd`; \
  441
+	list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
  442
+	unique=`for i in $$list; do \
  443
+	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
  444
+	  done | \
  445
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
  446
+	      END { if (nonempty) { for (i in files) print i; }; }'`; \
  447
+	shift; \
  448
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
  449
+	  test -n "$$unique" || unique=$$empty_fix; \
  450
+	  if test $$# -gt 0; then \
  451
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
  452
+	      "$$@" $$unique; \
  453
+	  else \
  454
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
  455
+	      $$unique; \
  456
+	  fi; \
  457
+	fi
  458
+ctags: CTAGS
  459
+CTAGS:  $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
  460
+		$(TAGS_FILES) $(LISP)
  461
+	list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
  462
+	unique=`for i in $$list; do \
  463
+	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
  464
+	  done | \
  465
+	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
  466
+	      END { if (nonempty) { for (i in files) print i; }; }'`; \
  467
+	test -z "$(CTAGS_ARGS)$$unique" \
  468
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
  469
+	     $$unique
  470
+
  471
+GTAGS:
  472
+	here=`$(am__cd) $(top_builddir) && pwd` \
  473
+	  && $(am__cd) $(top_srcdir) \
  474
+	  && gtags -i $(GTAGS_ARGS) "$$here"
  475
+
  476
+distclean-tags:
  477
+	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
  478
+
  479
+distdir: $(DISTFILES)
  480
+	@list='$(MANS)'; if test -n "$$list"; then \
  481
+	  list=`for p in $$list; do \
  482
+	    if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
  483
+	    if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
  484
+	  if test -n "$$list" && \
  485
+	    grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
  486
+	    echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
  487
+	    grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
  488
+	    echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
  489
+	    echo "       typically \`make maintainer-clean' will remove them" >&2; \
  490
+	    exit 1; \
  491
+	  else :; fi; \
  492
+	else :; fi
  493
+	$(am__remove_distdir)
  494
+	test -d "$(distdir)" || mkdir "$(distdir)"
  495
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
  496
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
  497
+	list='$(DISTFILES)'; \
  498
+	  dist_files=`for file in $$list; do echo $$file; done | \
  499
+	  sed -e "s|^$$srcdirstrip/||;t" \
  500
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
  501
+	case $$dist_files in \
  502
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
  503
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
  504
+			   sort -u` ;; \
  505
+	esac; \
  506
+	for file in $$dist_files; do \
  507
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
  508
+	  if test -d $$d/$$file; then \
  509
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
  510
+	    if test -d "$(distdir)/$$file"; then \
  511
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
  512
+	    fi; \
  513
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
  514
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
  515
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
  516
+	    fi; \
  517
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
  518
+	  else \
  519
+	    test -f "$(distdir)/$$file" \
  520
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
  521
+	    || exit 1; \
  522
+	  fi; \
  523
+	done
  524
+	-test -n "$(am__skip_mode_fix)" \
  525
+	|| find "$(distdir)" -type d ! -perm -755 \
  526
+		-exec chmod u+rwx,go+rx {} \; -o \
  527
+	  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
  528
+	  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
  529
+	  ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
  530
+	|| chmod -R a+r "$(distdir)"
  531
+dist-gzip: distdir
  532
+	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
  533
+	$(am__remove_distdir)
  534
+
  535
+dist-bzip2: distdir
  536
+	tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
  537
+	$(am__remove_distdir)
  538
+
  539
+dist-lzma: distdir
  540
+	tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
  541
+	$(am__remove_distdir)
  542
+
  543
+dist-xz: distdir
  544
+	tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
  545
+	$(am__remove_distdir)
  546
+
  547
+dist-tarZ: distdir
  548
+	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
  549
+	$(am__remove_distdir)
  550
+
  551
+dist-shar: distdir
  552
+	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
  553
+	$(am__remove_distdir)
  554
+
  555
+dist-zip: distdir
  556
+	-rm -f $(distdir).zip
  557
+	zip -rq $(distdir).zip $(distdir)
  558
+	$(am__remove_distdir)
  559
+
  560
+dist dist-all: distdir
  561
+	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
  562
+	$(am__remove_distdir)
  563
+
  564
+# This target untars the dist file and tries a VPATH configuration.  Then
  565
+# it guarantees that the distribution is self-contained by making another
  566
+# tarfile.
  567
+distcheck: dist
  568
+	case '$(DIST_ARCHIVES)' in \
  569
+	*.tar.gz*) \
  570
+	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
  571
+	*.tar.bz2*) \
  572
+	  bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
  573
+	*.tar.lzma*) \
  574
+	  lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
  575
+	*.tar.xz*) \
  576
+	  xz -dc $(distdir).tar.xz | $(am__untar) ;;\
  577
+	*.tar.Z*) \
  578
+	  uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
  579
+	*.shar.gz*) \
  580
+	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
  581
+	*.zip*) \
  582
+	  unzip $(distdir).zip ;;\
  583
+	esac
  584
+	chmod -R a-w $(distdir); chmod a+w $(distdir)
  585
+	mkdir $(distdir)/_build
  586
+	mkdir $(distdir)/_inst
  587
+	chmod a-w $(distdir)
  588
+	test -d $(distdir)/_build || exit 0; \
  589
+	dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
  590
+	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
  591
+	  && am__cwd=`pwd` \
  592
+	  && $(am__cd) $(distdir)/_build \
  593
+	  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
  594
+	    $(DISTCHECK_CONFIGURE_FLAGS) \
  595
+	  && $(MAKE) $(AM_MAKEFLAGS) \
  596
+	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
  597
+	  && $(MAKE) $(AM_MAKEFLAGS) check \
  598
+	  && $(MAKE) $(AM_MAKEFLAGS) install \
  599
+	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
  600
+	  && $(MAKE) $(AM_MAKEFLAGS) uninstall \
  601
+	  && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
  602
+	        distuninstallcheck \
  603
+	  && chmod -R a-w "$$dc_install_base" \
  604
+	  && ({ \
  605
+	       (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
  606
+	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
  607
+	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
  608
+	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
  609
+	            distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
  610
+	      } || { rm -rf "$$dc_destdir"; exit 1; }) \
  611
+	  && rm -rf "$$dc_destdir" \
  612
+	  && $(MAKE) $(AM_MAKEFLAGS) dist \
  613
+	  && rm -rf $(DIST_ARCHIVES) \
  614
+	  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
  615
+	  && cd "$$am__cwd" \
  616
+	  || exit 1
  617
+	$(am__remove_distdir)
  618
+	@(echo "$(distdir) archives ready for distribution: "; \
  619
+	  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
  620
+	  sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
  621
+distuninstallcheck:
  622
+	@$(am__cd) '$(distuninstallcheck_dir)' \
  623
+	&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
  624
+	   || { echo "ERROR: files left after uninstall:" ; \
  625
+	        if test -n "$(DESTDIR)"; then \
  626
+	          echo "  (check DESTDIR support)"; \
  627
+	        fi ; \
  628
+	        $(distuninstallcheck_listfiles) ; \
  629
+	        exit 1; } >&2
  630
+distcleancheck: distclean
  631
+	@if test '$(srcdir)' = . ; then \
  632
+	  echo "ERROR: distcleancheck can only run from a VPATH build" ; \
  633
+	  exit 1 ; \
  634
+	fi
  635
+	@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
  636
+	  || { echo "ERROR: files left in build directory after distclean:" ; \
  637
+	       $(distcleancheck_listfiles) ; \
  638
+	       exit 1; } >&2
  639
+check-am: all-am
  640
+check: check-am
  641
+all-am: Makefile $(LTLIBRARIES) $(MANS) $(HEADERS) config.h
  642
+installdirs:
  643
+	for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(includedir)"; do \
  644
+	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
  645
+	done
  646
+install: install-am
  647
+install-exec: install-exec-am
  648
+install-data: install-data-am
  649
+uninstall: uninstall-am
  650
+
  651
+install-am: all-am
  652
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
  653
+
  654
+installcheck: installcheck-am
  655
+install-strip:
  656
+	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
  657
+	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
  658
+	  `test -z '$(STRIP)' || \
  659
+	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
  660
+mostlyclean-generic:
  661
+
  662
+clean-generic:
  663
+
  664
+distclean-generic:
  665
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
  666
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
  667
+
  668
+maintainer-clean-generic:
  669
+	@echo "This command is intended for maintainers to use"
  670
+	@echo "it deletes files that may require special tools to rebuild."
  671
+clean: clean-am
  672
+
  673
+clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
  674
+	mostlyclean-am
  675
+
  676
+distclean: distclean-am
  677
+	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
  678
+	-rm -rf ./$(DEPDIR)
  679
+	-rm -f Makefile
  680
+distclean-am: clean-am distclean-compile distclean-generic \
  681
+	distclean-hdr distclean-libtool distclean-tags
  682
+
  683
+dvi: dvi-am
  684
+
  685
+dvi-am:
  686
+
  687
+html: html-am
  688
+
  689
+html-am:
  690
+
  691
+info: info-am
  692
+
  693
+info-am:
  694
+
  695
+install-data-am: install-includeHEADERS install-man
  696
+
  697
+install-dvi: install-dvi-am
  698
+
  699
+install-dvi-am:
  700
+
  701
+install-exec-am: install-libLTLIBRARIES
  702
+
  703
+install-html: install-html-am
  704
+
  705
+install-html-am:
  706
+
  707
+install-info: install-info-am
  708
+
  709
+install-info-am:
  710
+
  711
+install-man: install-man3
  712
+
  713
+install-pdf: install-pdf-am
  714
+
  715
+install-pdf-am:
  716
+
  717
+install-ps: install-ps-am
  718
+
  719
+install-ps-am:
  720
+
  721
+installcheck-am:
  722
+
  723
+maintainer-clean: maintainer-clean-am
  724
+	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
  725
+	-rm -rf $(top_srcdir)/autom4te.cache
  726
+	-rm -rf ./$(DEPDIR)
  727
+	-rm -f Makefile
  728
+maintainer-clean-am: distclean-am maintainer-clean-generic
  729
+
  730
+mostlyclean: mostlyclean-am
  731
+
  732
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
  733
+	mostlyclean-libtool
  734
+
  735
+pdf: pdf-am
  736
+
  737
+pdf-am:
  738
+
  739
+ps: ps-am
  740
+
  741
+ps-am:
  742
+
  743
+uninstall-am: uninstall-includeHEADERS uninstall-libLTLIBRARIES \