Update hardening rules.
[awesomized/libmemcached] / memcached / Makefile.am
1 bin_PROGRAMS = memcached
2 pkginclude_HEADERS = protocol_binary.h
3 noinst_PROGRAMS = memcached-debug sizes testapp timedrun
4
5 BUILT_SOURCES=
6
7 testapp_SOURCES = testapp.c util.c util.h
8
9 timedrun_SOURCES = timedrun.c
10
11 memcached_SOURCES = memcached.c memcached.h \
12 hash.c hash.h \
13 slabs.c slabs.h \
14 items.c items.h \
15 assoc.c assoc.h \
16 thread.c daemon.c \
17 stats.c stats.h \
18 util.c util.h \
19 trace.h cache.h sasl_defs.h
20
21 if BUILD_CACHE
22 memcached_SOURCES += cache.c
23 testapp_SOURCES += cache.c
24 endif
25
26 if BUILD_SOLARIS_PRIVS
27 memcached_SOURCES += solaris_priv.c
28 endif
29
30 if ENABLE_SASL
31 memcached_SOURCES += sasl_defs.c
32 endif
33
34 memcached_debug_SOURCES = $(memcached_SOURCES)
35 memcached_CPPFLAGS = -DNDEBUG
36 memcached_debug_LDADD = @PROFILER_LDFLAGS@
37 memcached_debug_CFLAGS = @PROFILER_FLAGS@
38
39 memcached_LDADD =
40 memcached_DEPENDENCIES =
41 memcached_debug_DEPENDENCIES =
42 CLEANFILES=
43
44 if BUILD_DTRACE
45 BUILT_SOURCES += memcached_dtrace.h
46 CLEANFILES += memcached_dtrace.h
47 endif
48
49 if DTRACE_INSTRUMENT_OBJ
50 memcached_LDADD += memcached_dtrace.o
51 memcached_DEPENDENCIES += memcached_dtrace.o
52 memcached_debug_LDADD += memcached_debug_dtrace.o
53 memcached_debug_DEPENDENCIES += memcached_debug_dtrace.o
54 CLEANFILES += memcached_dtrace.o memcached_debug_dtrace.o
55 endif
56
57 memcached_dtrace.h: memcached_dtrace.d
58 ${DTRACE} -h -s memcached_dtrace.d
59 sed -e 's,void \*,const void \*,g' memcached_dtrace.h | \
60 sed -e 's,char \*,const char \*,g' | tr '\t' ' ' > mmc_dtrace.tmp
61 mv mmc_dtrace.tmp memcached_dtrace.h
62
63 memcached_dtrace.o: $(memcached_OBJECTS)
64 $(DTRACE) $(DTRACEFLAGS) -G -o memcached_dtrace.o -s ${srcdir}/memcached_dtrace.d $(memcached_OBJECTS)
65
66 memcached_debug_dtrace.o: $(memcached_debug_OBJECTS)
67 $(DTRACE) $(DTRACEFLAGS) -G -o memcached_debug_dtrace.o -s ${srcdir}/memcached_dtrace.d $(memcached_debug_OBJECTS)
68
69
70 SUBDIRS = doc
71 DIST_DIRS = scripts
72 EXTRA_DIST = doc scripts t memcached.spec memcached_dtrace.d version.m4
73
74 MOSTLYCLEANFILES = *.gcov *.gcno *.gcda *.tcov
75
76 test: memcached-debug sizes testapp
77 $(srcdir)/sizes
78 $(srcdir)/testapp
79 prove $(srcdir)/t
80 @if test `basename $(PROFILER)` = "gcov"; then \
81 for file in memcached_debug-*.gc??; do \
82 mv -f $$file `echo $$file | sed 's/memcached_debug-//'`; \
83 done && \
84 for file in *.gcda; do \
85 srcfile=`echo $$file | sed 's/.gcda/.c/'`; \
86 if test -n "`echo $(memcached_debug_SOURCES) | grep $$srcfile`"; then \
87 echo `$(PROFILER) $$srcfile` | sed 's/'$$srcfile':.*//'; \
88 fi \
89 done \
90 elif test `basename $(PROFILER)` = "tcov"; then \
91 files=`grep SRCFILE memcached-debug.profile/tcovd | sed 's/SRCFILE://' | sort | uniq` && \
92 $(PROFILER) -x memcached-debug.profile $$files 2>&1; \
93 for file in *.tcov; do \
94 srcfile=`echo $$file | sed 's/.tcov//'`; \
95 if test -n "`echo $(memcached_debug_SOURCES) | grep $$srcfile`"; then \
96 echo $$srcfile : `grep 'Percent of the file executed' $$file`; \
97 fi \
98 done \
99 else :; fi
100
101 docs:
102 (cat Doxyfile ; echo "PROJECT_NUMBER=`cat version.num`") | doxygen -
103
104 dist-hook:
105 rm -f $(distdir)/*/*~ $(distdir)/t/lib/*~ $(distdir)/*~