# include/Makefile.am for libevent
# Copyright 2000-2007 Niels Provos
# Copyright 2007-2012 Niels Provos and Nick Mathewson
#
# See LICENSE for copying information.

include_event2dir = $(includedir)/event2

EVENT2_EXPORT = \
	include/event2/buffer.h \
	include/event2/buffer_compat.h \
	include/event2/bufferevent.h \
	include/event2/bufferevent_compat.h \
	include/event2/bufferevent_ssl.h \
	include/event2/bufferevent_struct.h \
	include/event2/dns.h \
	include/event2/dns_compat.h \
	include/event2/dns_struct.h \
	include/event2/event.h \
	include/event2/event_compat.h \
	include/event2/event_struct.h \
	include/event2/http.h \
	include/event2/http_compat.h \
	include/event2/http_struct.h \
	include/event2/keyvalq_struct.h \
	include/event2/listener.h \
	include/event2/rpc.h \
	include/event2/rpc_compat.h \
	include/event2/rpc_struct.h \
	include/event2/tag.h \
	include/event2/tag_compat.h \
	include/event2/thread.h \
	include/event2/util.h \
	include/event2/visibility.h

## Without the nobase_ prefixing, Automake would strip "include/event2/" from
## the source header filename to derive the installed header filename.
## With nobase_ the installed path is $(includedir)/include/event2/ev*.h.

if INSTALL_LIBEVENT
include_event2_HEADERS =	$(EVENT2_EXPORT)
nodist_include_event2_HEADERS = include/event2/event-config.h
else
noinst_HEADERS +=		$(EVENT2_EXPORT)
nodist_noinst_HEADERS =		include/event2/event-config.h
endif
