-EXTRA_DIST = libmemcached_probes.d
-
-INCLUDES = -I$(top_builddir)
-LIBS =
-
-DTRACE = @DTRACE@
-DTRACEFLAGS = @DTRACEFLAGS@
-DTRACEFILES = memcached.o \
- memcached_strerror.o \
- memcached_connect.o \
- memcached_response.o \
- memcached_get.o \
- memcached_storage.o \
- memcached_delete.o \
- memcached_hash.o \
- memcached_auto.o \
- memcached_verbosity.o \
- memcached_quit.o \
- memcached_flush.o \
- memcached_string.o \
- memcached_stats.o
+EXTRA_DIST = \
+ libmemcached.ver \
+ libmemcached_probes.d \
+ memcached/README.txt \
+ memcached_configure.h.in \
+ protocol/libmemcachedprotocol.ver \
+ util/libmemcachedutil.ver
+
+
+EXTRA_HEADERS =
+BUILT_SOURCES=
noinst_HEADERS = libmemcached_probes.h \
- memcached_io.h \
- common.h
-
-pkginclude_HEADERS= memcached.h \
- memcached.hh \
- libmemcached_config.h \
- memcached_constants.h \
- memcached_result.h \
- memcached_server.h \
- memcached_storage.h \
- memcached_string.h \
- memcached_types.h \
- memcached_watchpoint.h
-
-lib_LTLIBRARIES = libmemcached.la
-
-libmemcached_la_SOURCES = crc.c \
- hsieh_hash.c \
- memcached.c \
- memcached_auto.c \
- memcached_behavior.c \
- memcached_callback.c \
- memcached_connect.c \
- memcached_delete.c \
- memcached_do.c \
- memcached_fetch.c \
- memcached_fetch_execute.c \
- memcached_flush.c \
- memcached_get.c \
- memcached_hash.c \
- memcached_hosts.c \
- memcached_io.c \
+ io.h \
+ internal.h \
+ common.h \
+ memcached/protocol_binary.h \
+ protocol/common.h \
+ protocol/ascii_handler.h \
+ protocol/binary_handler.h
+
+pkginclude_HEADERS= \
+ behavior.h \
+ callback.h \
+ constants.h \
+ exception.hpp \
+ get.h \
+ memcached.h \
+ memcached.hpp \
+ memcached_configure.h \
+ protocol_handler.h \
+ result.h \
+ server.h \
+ storage.h \
+ string.h \
+ types.h \
+ visibility.h \
+ watchpoint.h
+
+nobase_pkginclude_HEADERS = \
+ protocol/cache.h \
+ protocol/callback.h
+
+
+libmemcachedprotocol_la_SOURCES = \
+ protocol/ascii_handler.c \
+ protocol/binary_handler.c \
+ protocol/cache.c \
+ protocol/pedantic.c \
+ protocol/protocol_handler.c
+
+libmemcachedprotocol_la_LDFLAGS= ${AM_LDFLAGS} -version-info 0:0:0
+
+lib_LTLIBRARIES = libmemcached.la libmemcachedprotocol.la
+noinst_LTLIBRARIES = libmemcachedcallbacks.la
+libmemcachedcallbacks_la_CFLAGS = ${AM_CFLAGS} ${NO_STRICT_ALIASING}
+libmemcachedcallbacks_la_SOURCES = callback.c
+
+libmemcached_la_CFLAGS= ${AM_CFLAGS} ${NO_CONVERSION}
+libmemcached_la_SOURCES = \
+ allocators.c \
+ analyze.c \
+ auto.c \
+ behavior.c \
+ connect.c \
+ crc.c \
+ delete.c \
+ do.c \
+ dump.c \
+ fetch.c \
+ flush.c \
+ flush_buffers.c \
+ get.c \
+ hash.c \
+ hosts.c \
+ io.c \
+ jenkins_hash.c \
+ key.c \
md5.c \
- memcached_key.c \
- memcached_quit.c \
- memcached_parse.c \
- memcached_response.c \
- memcached_result.c \
- memcached_server.c \
- memcached_storage.c \
- memcached_string.c \
- memcached_stats.c \
- memcached_strerror.c \
- memcached_verbosity.c \
- memcached_version.c \
- murmur_hash.c
-
-libmemcached_la_LIBADD =
-libmemcached_la_LDFLAGS = -version-info $(MEMCACHED_LIBRARY_VERSION)
+ memcached.c \
+ murmur_hash.c \
+ parse.c \
+ purge.c \
+ quit.c \
+ response.c \
+ result.c \
+ server.c \
+ stats.c \
+ storage.c \
+ strerror.c \
+ string.c \
+ verbosity.c \
+ version.c
+
+
+if INCLUDE_HSIEH_SRC
+libmemcached_la_SOURCES += hsieh_hash.c
+endif
+
+libmemcached_la_DEPENDENCIES= libmemcachedcallbacks.la
+libmemcached_la_LIBADD= $(LIBM) libmemcachedcallbacks.la
+libmemcached_la_LDFLAGS= ${AM_LDFLAGS} -version-info 3:0:0
+
+if BUILD_LIBMEMCACHEDUTIL
+pkginclude_HEADERS+= memcached_util.h pool.h
+lib_LTLIBRARIES+= libmemcachedutil.la
+endif
+
+libmemcachedutil_la_SOURCES= util/pool.c
+libmemcachedutil_la_LIBADD= libmemcached.la
+libmemcachedutil_la_LDFLAGS= ${AM_LDFLAGS} -version-info 0:0:0
+libmemcachedutil_la_DEPENDENCIES=libmemcached.la
+
+if BUILD_BYTEORDER
+noinst_LTLIBRARIES += libbyteorder.la
+libbyteorder_la_SOURCES= byteorder.c byteorder.h
+libmemcached_la_LIBADD += libbyteorder.la
+libmemcached_la_DEPENDENCIES+= libbyteorder.la
+libmemcachedprotocol_la_LIBADD=libbyteorder.la
+libmemcachedprotocol_la_DEPENDENCIES=libbyteorder.la
+endif
if HAVE_DTRACE
- libmemcached_la_LIBADD += libmemcached_probes.o
+BUILT_SOURCES+= dtrace_probes.h
+libmemcached_la_SOURCES += libmemcached_probes.d
+endif
+
+if DTRACE_NEEDS_OBJECTS
+libmemcached_la_DEPENDENCIES += libmemcached_probes.o
endif
-libmemcached_probes.h: libmemcached_probes.d
- $(DTRACE) $(DTRACEFLAGS) -h -s libmemcached_probes.d
- mv libmemcached_probes.h libmemcached_probes.h.bak
- sed "s/#include <unistd.h>//g" libmemcached_probes.h.bak > libmemcached_probes.h
- rm libmemcached_probes.h.bak
+SUFFIXES= .d
+
+dtrace_probes.h: libmemcached_probes.d
+ $(DTRACE) $(DTRACEFLAGS) -h -o dtrace_probes.h -s libmemcached_probes.d
+
+libmemcached_probes.o: libmemcached_probes.d $(libmemcached_la_OBJECTS)
+ $(DTRACE) $(DTRACEFLAGS) -o .libs/libmemcached_probes.o -G -s libmemcached_probes.d `grep '^pic_object' *.lo | cut -f 2 -d\'`
+ $(DTRACE) $(DTRACEFLAGS) -o libmemcached_probes.o -G -s libmemcached_probes.d `grep non_pic_object *.lo | cut -f 2 -d\' `
-libmemcached_probes.o:
- $(DTRACE) $(DTRACEFLAGS) -G -s libmemcached_probes.d $(DTRACEFILES)