# USE_OT : enable the OpenTracing filter # OT_DEBUG : compile the OpenTracing filter in debug mode # OT_INC : force the include path to libopentracing-c-wrapper # OT_LIB : force the lib path to libopentracing-c-wrapper # OT_RUNPATH : add libopentracing-c-wrapper RUNPATH to haproxy executable # OT_USE_VARS : allows the use of variables for the OpenTracing context OT_DEFINE = OT_CFLAGS = OT_LDFLAGS = OT_DEBUG_EXT = OT_PKGSTAT = OTC_WRAPPER = opentracing-c-wrapper ifneq ($(OT_DEBUG),) OT_DEBUG_EXT = _dbg OT_DEFINE = -DDEBUG_OT endif ifeq ($(OT_INC),) OT_PKGSTAT = $(shell pkg-config --exists $(OTC_WRAPPER)$(OT_DEBUG_EXT); echo $$?) OT_CFLAGS = $(shell pkg-config --silence-errors --cflags $(OTC_WRAPPER)$(OT_DEBUG_EXT)) else ifneq ($(wildcard $(OT_INC)/$(OTC_WRAPPER)/.*),) OT_CFLAGS = -I$(OT_INC) $(if $(OT_DEBUG),-DOTC_DBG_MEM) endif endif ifeq ($(OT_PKGSTAT),) ifeq ($(OT_CFLAGS),) $(error OpenTracing C wrapper : can't find headers) endif else ifneq ($(OT_PKGSTAT),0) $(error OpenTracing C wrapper : can't find package) endif endif ifeq ($(OT_LIB),) OT_LDFLAGS = $(shell pkg-config --silence-errors --libs $(OTC_WRAPPER)$(OT_DEBUG_EXT)) else ifneq ($(wildcard $(OT_LIB)/lib$(OTC_WRAPPER).*),) OT_LDFLAGS = -L$(OT_LIB) -l$(OTC_WRAPPER)$(OT_DEBUG_EXT) ifneq ($(OT_RUNPATH),) OT_LDFLAGS += -Wl,--rpath,$(OT_LIB) endif endif endif ifeq ($(OT_LDFLAGS),) $(error OpenTracing C wrapper : can't find library) endif OPTIONS_OBJS += \ addons/ot/src/cli.o \ addons/ot/src/conf.o \ addons/ot/src/event.o \ addons/ot/src/filter.o \ addons/ot/src/group.o \ addons/ot/src/http.o \ addons/ot/src/opentracing.o \ addons/ot/src/parser.o \ addons/ot/src/pool.o \ addons/ot/src/scope.o \ addons/ot/src/util.o ifneq ($(OT_USE_VARS),) OT_DEFINE += -DUSE_OT_VARS OPTIONS_OBJS += \ addons/ot/src/vars.o endif OT_CFLAGS := $(OT_CFLAGS) -Iaddons/ot/include $(OT_DEFINE)