Fixed the support for DTrace so that it also builds on Mac OSX
[awesomized/libmemcached] / libmemcached / Makefile.am
1 EXTRA_DIST = libmemcached_probes.d memcached/README.txt
2
3 BUILT_SOURCES= @DTRACE_HEADER@
4
5 INCLUDES = -I$(top_builddir)
6 LIBS = @LIBS@
7
8 DTRACE = @DTRACE@
9 DTRACEFLAGS = @DTRACEFLAGS@
10 DTRACEFILES = memcached.o \
11 memcached_strerror.o \
12 memcached_connect.o \
13 memcached_response.o \
14 memcached_get.o \
15 memcached_storage.o \
16 memcached_delete.o \
17 memcached_hash.o \
18 memcached_auto.o \
19 memcached_verbosity.o \
20 memcached_quit.o \
21 memcached_flush.o \
22 memcached_string.o \
23 memcached_stats.o
24
25 noinst_HEADERS = libmemcached_probes.h \
26 memcached_io.h \
27 common.h \
28 memcached/protocol_binary.h
29
30 pkginclude_HEADERS= memcached.h \
31 memcached.hh \
32 libmemcached_config.h \
33 memcached_constants.h \
34 memcached_get.h \
35 memcached_result.h \
36 memcached_server.h \
37 memcached_storage.h \
38 memcached_string.h \
39 memcached_types.h \
40 memcached_watchpoint.h
41
42 lib_LTLIBRARIES = libmemcached.la
43
44 libmemcached_la_SOURCES = crc.c \
45 hsieh_hash.c \
46 memcached.c \
47 memcached_auto.c \
48 memcached_behavior.c \
49 memcached_callback.c \
50 memcached_connect.c \
51 memcached_delete.c \
52 memcached_do.c \
53 memcached_fetch.c \
54 memcached_fetch_execute.c \
55 memcached_flush.c \
56 memcached_get.c \
57 memcached_hash.c \
58 memcached_hosts.c \
59 memcached_io.c \
60 memcached_purge.c \
61 md5.c \
62 memcached_key.c \
63 memcached_quit.c \
64 memcached_parse.c \
65 memcached_response.c \
66 memcached_result.c \
67 memcached_server.c \
68 memcached_storage.c \
69 memcached_string.c \
70 memcached_stats.c \
71 memcached_strerror.c \
72 memcached_verbosity.c \
73 memcached_version.c \
74 murmur_hash.c \
75 jenkins_hash.c \
76 byteorder.c
77
78 libmemcached_la_DEPENDENCIES = @DTRACE_OBJ@
79 libmemcached_la_LIBADD = @DTRACE_OBJ@
80 libmemcached_la_LDFLAGS = -version-info $(MEMCACHED_LIBRARY_VERSION)
81
82 dtrace_probes.h: libmemcached_probes.d
83 $(DTRACE) $(DTRACEFLAGS) -o dtrace_probes.tmp -h -s libmemcached_probes.d
84 sed "s/#include <unistd.h>//g" dtrace_probes.tmp > dtrace_probes.h
85 rm dtrace_probes.tmp
86
87
88 # So libtool doesn't support dtrace, but just copy one of the existing
89 # lo-file and replace the file name ;-)
90 libmemcached_probes.lo: libmemcached_probes.o
91 sed "s,jenkins_hash,libmemcached_probes,g" jenkins_hash.lo > libmemcached_probes.tmp
92 mv libmemcached_probes.tmp libmemcached_probes.lo
93
94 libmemcached_probes.o: $(libmemcached_la_OBJECTS)
95 $(DTRACE) $(DTRACEFLAGS) -o .libs/libmemcached_probes.o -G -s libmemcached_probes.d `grep pic_object *.lo | cut -f 2 -d\' | grep -v non_pic_object`
96 $(DTRACE) $(DTRACEFLAGS) -o libmemcached_probes.o -G -s libmemcached_probes.d `grep non_pic_object *.lo | cut -f 2 -d\' `
97