X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2FMakefile.am;h=78c2c9a195ab9fb22bf1e2fd5528a987b2824bed;hb=db4741c1f65edf1323e4aa0879c4589244af1971;hp=bb6cfa0bd22d9c6145b62c8a1df01f4745060d48;hpb=2b312deb8b7b3f662b492f94a13e673723387724;p=m6w6%2Flibmemcached diff --git a/libmemcached/Makefile.am b/libmemcached/Makefile.am index bb6cfa0b..78c2c9a1 100644 --- a/libmemcached/Makefile.am +++ b/libmemcached/Makefile.am @@ -1,32 +1,22 @@ EXTRA_DIST = libmemcached_probes.d memcached/README.txt +BUILT_SOURCES= @DTRACE_HEADER@ + INCLUDES = -I$(top_builddir) LIBS = @LIBS@ +EXTRA_HEADERS = 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 noinst_HEADERS = libmemcached_probes.h \ memcached_io.h \ common.h \ - memcached/protocol_binary.h + memcached/protocol_binary.h @DTRACE_HEADER@ pkginclude_HEADERS= memcached.h \ memcached.hh \ + libmemcached_config.h \ memcached_constants.h \ memcached_get.h \ memcached_result.h \ @@ -72,18 +62,22 @@ libmemcached_la_SOURCES = crc.c \ jenkins_hash.c \ byteorder.c -libmemcached_la_LIBADD = +libmemcached_la_DEPENDENCIES = @DTRACE_OBJ@ +libmemcached_la_LIBADD = @DTRACE_OBJ@ libmemcached_la_LDFLAGS = -version-info $(MEMCACHED_LIBRARY_VERSION) -if HAVE_DTRACE - libmemcached_la_LIBADD += libmemcached_probes.o -endif +dtrace_probes.h: libmemcached_probes.d + $(DTRACE) $(DTRACEFLAGS) -o dtrace_probes.tmp -h -s libmemcached_probes.d + sed "s/#include //g" dtrace_probes.tmp > dtrace_probes.h + rm dtrace_probes.tmp + + +# So libtool doesn't support dtrace, but just copy one of the existing +# lo-file and replace the file name ;-) +libmemcached_probes.lo: libmemcached_probes.o + sed "s,jenkins_hash,libmemcached_probes,g" jenkins_hash.lo > libmemcached_probes.lo -libmemcached_probes.h: libmemcached_probes.d - $(DTRACE) $(DTRACEFLAGS) -h -s libmemcached_probes.d - mv libmemcached_probes.h libmemcached_probes.h.bak - sed "s/#include //g" libmemcached_probes.h.bak > libmemcached_probes.h - rm libmemcached_probes.h.bak +libmemcached_probes.o: $(libmemcached_la_OBJECTS) + $(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` + $(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)