mirror of
https://github.com/libevent/libevent.git
synced 2025-01-20 05:02:55 +08:00
0cc10e419c
Patch from Zack Weinberg. His description: This one might be a little more controversial. Libtool's -release and -version-info options are supposed to be mutually exclusive, but it doesn't either enforce that or make it sufficiently clear in the manual. Using both makes the -version-info switch ineffective; you will get sonames like "libevent-2.0.so.1", "libevent-2.1.so.1", etc., even though version 2.1 will presumably be backward ABI compatible with 2.0. This patch just takes out the -release switches and bumps the -version-info value to 2:0:0 so that people looking at the files in /usr/lib will not be confused (it'll be "libevent.so.2"). This does change the soname, but the current release is labeled an alpha, and it would be better to stop using both switches as soon as possible, before someone over at libtool headquarters decides to enforce the mutual exclusivity here... Note that libevent_pthreads is not being linked with any versioning switches I didn't change that because I wasn't sure whether it was intentional. svn:r1339
153 lines
4.6 KiB
Makefile
153 lines
4.6 KiB
Makefile
AUTOMAKE_OPTIONS = foreign
|
|
ACLOCAL_AMFLAGS = -I m4
|
|
|
|
# This is the version info for the libevent binary API. It has three
|
|
# numbers:
|
|
# Current -- the number of the binary API that we're implementing
|
|
# Revision -- which iteration of the implementation of the binary
|
|
# API are we supplying?
|
|
# Age -- How many previous binary API versions do we also
|
|
# support?
|
|
#
|
|
# If we release a new version that does not change the binary API,
|
|
# increment Revision.
|
|
#
|
|
# If we release a new version that changes the binary API, but does
|
|
# not break programs compiled against the old binary API, increment
|
|
# Current and Age. Set Revision to 0, since this is the first
|
|
# implementation of the new API.
|
|
#
|
|
# Otherwise, we're changing the binary API and breaking bakward
|
|
# compatibility with old binaries. Increment Current. Set Age to 0,
|
|
# since we're backward compatible with no previous APIs. Set Revision
|
|
# to 0 too.
|
|
#
|
|
# ABI version history for this package effectively begins with package
|
|
# version 2.0, because package version 1.4 erroneously applied both
|
|
# -release and -version-info to the same libraries; -release takes
|
|
# precedence, so the -version-info history of 1.4 libraries is moot.
|
|
# We are starting the numbering at 2 rather than 1 to avoid confusion.
|
|
#
|
|
# 2:0:0 -- Libevent 2.0.1-alpha.
|
|
VERSION_INFO = 2:0:0
|
|
|
|
bin_SCRIPTS = event_rpcgen.py
|
|
|
|
pkgconfigdir=$(libdir)/pkgconfig
|
|
pkgconfig_DATA=libevent.pc
|
|
|
|
EXTRA_DIST = \
|
|
autogen.sh evdns.3 \
|
|
event.3 \
|
|
libevent.pc \
|
|
Doxyfile \
|
|
kqueue.c epoll_sub.c epoll.c select.c poll.c signal.c \
|
|
evport.c devpoll.c event_rpcgen.py \
|
|
event_iocp.c buffer_iocp.c iocp-internal.h \
|
|
sample/Makefile.am sample/Makefile.in sample/event-test.c \
|
|
sample/signal-test.c sample/time-test.c \
|
|
test/Makefile.am test/Makefile.in test/bench.c test/regress.c \
|
|
test/test-eof.c test/test-weof.c test/test-time.c \
|
|
test/test-init.c test/test.sh \
|
|
compat/sys/queue.h compat/sys/_time.h \
|
|
evthread_win32.c \
|
|
evthread_pthread.c \
|
|
whatsnew-2.0.txt \
|
|
bufferevent_async.c \
|
|
WIN32-Code/event-config.h \
|
|
WIN32-Code/config.h \
|
|
WIN32-Code/win32.c \
|
|
WIN32-Code/tree.h \
|
|
WIN32-Prj/event_test/event_test.dsp \
|
|
WIN32-Prj/event_test/test.txt WIN32-Prj/libevent.dsp \
|
|
WIN32-Prj/libevent.dsw WIN32-Prj/signal_test/signal_test.dsp \
|
|
WIN32-Prj/time_test/time_test.dsp
|
|
|
|
lib_LTLIBRARIES = libevent.la libevent_core.la libevent_extra.la
|
|
if PTHREADS
|
|
lib_LTLIBRARIES += libevent_pthreads.la
|
|
endif
|
|
|
|
SUBDIRS = . include sample test
|
|
|
|
if BUILD_WIN32
|
|
|
|
SYS_LIBS = -lws2_32
|
|
SYS_SRC = WIN32-Code/win32.c evthread_win32.c buffer_iocp.c event_iocp.c \
|
|
bufferevent_async.c
|
|
SYS_INCLUDES = -IWIN32-Code
|
|
|
|
else
|
|
|
|
SYS_LIBS =
|
|
SYS_SRC =
|
|
SYS_INCLUDES =
|
|
|
|
endif
|
|
|
|
BUILT_SOURCES = event-config.h
|
|
|
|
event-config.h: config.h
|
|
echo '/* event-config.h' > $@
|
|
echo ' *' >> $@
|
|
echo ' * This file was generated by autoconf when libevent was built, and post-' >> $@
|
|
echo ' * processed by Libevent so that its macros would have a uniform prefix.' >> $@
|
|
echo ' *' >> $@
|
|
echo ' * DO NOT EDIT THIS FILE.' >> $@
|
|
echo ' *' >> $@
|
|
echo ' * Do not rely on macros in this file existing in later versions.'>> $@
|
|
echo ' */' >> $@
|
|
echo '#ifndef _EVENT_CONFIG_H_' >> $@
|
|
echo '#define _EVENT_CONFIG_H_' >> $@
|
|
|
|
sed -e 's/#define /#define _EVENT_/' \
|
|
-e 's/#undef /#undef _EVENT_/' \
|
|
-e 's/#ifndef /#ifndef _EVENT_/' < config.h >> $@
|
|
echo "#endif" >> $@
|
|
|
|
CORE_SRC = event.c buffer.c \
|
|
bufferevent.c bufferevent_sock.c bufferevent_filter.c \
|
|
bufferevent_pair.c listener.c \
|
|
evmap.c log.c evutil.c strlcpy.c $(SYS_SRC)
|
|
EXTRA_SRC = event_tagging.c http.c evdns.c evrpc.c
|
|
|
|
|
|
libevent_la_SOURCES = $(CORE_SRC) $(EXTRA_SRC)
|
|
libevent_la_LIBADD = @LTLIBOBJS@ $(SYS_LIBS)
|
|
libevent_la_LDFLAGS = -version-info $(VERSION_INFO)
|
|
|
|
libevent_core_la_SOURCES = $(CORE_SRC)
|
|
libevent_core_la_LIBADD = @LTLIBOBJS@ $(SYS_LIBS)
|
|
libevent_core_la_LDFLAGS = -version-info $(VERSION_INFO)
|
|
|
|
if PTHREADS
|
|
libevent_pthreads_la_SOURCES = evthread_pthread.c
|
|
endif
|
|
|
|
libevent_extra_la_SOURCES = $(EXTRA_SRC)
|
|
libevent_extra_la_LIBADD =
|
|
libevent_extra_la_LDFLAGS = -version-info $(VERSION_INFO)
|
|
|
|
noinst_HEADERS = util-internal.h mm-internal.h ipv6-internal.h \
|
|
evrpc-internal.h strlcpy-internal.h evbuffer-internal.h \
|
|
bufferevent-internal.h http-internal.h event-internal.h \
|
|
evthread-internal.h ht-internal.h defer-internal.h \
|
|
minheap-internal.h log-internal.h evsignal-internal.h evmap-internal.h
|
|
|
|
include_HEADERS = event.h evhttp.h evdns.h evrpc.h evutil.h
|
|
|
|
nodist_include_HEADERS = event-config.h
|
|
|
|
INCLUDES = -I$(srcdir)/compat -I$(srcdir)/include $(SYS_INCLUDES)
|
|
|
|
man_MANS = event.3 evdns.3
|
|
|
|
verify: libevent.la
|
|
cd test && make verify
|
|
|
|
doxygen: FORCE
|
|
doxygen $(srcdir)/Doxyfile
|
|
FORCE:
|
|
|
|
DISTCLEANFILES = *~ event-config.h libevent.pc
|