mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-13 15:04:42 +00:00
4cb2c83f46
Due to a recent change in the handling of haproxy variables, their use for OpenTracing context transfer has been excluded from the compilation process. The use of variables can be re-enabled if the newly defined variable OT_USE_VARS is set to 1 when calling the 'make' utility. However, this should not be used for now as the compilation will end in error. This change prevents the use of haproxy variables to convey the OpenTracing context. This means that the 'use-vars' parameter cannot be used in the OpenTracing filter configuration for 'inject' and 'extract' operations. An example configuration that uses this feature is in the test/ctx directory, while the script to run that test is test/run-ctx.sh. Then, the 'sess.ot.uuid' variable is no longer set when initializing the OpenTracing session. This means that this variable can still be used in the OpenTracing configuration, but its contents will be empty.
76 lines
2.0 KiB
Makefile
76 lines
2.0 KiB
Makefile
# 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
|
|
|
|
OPTIONS_CFLAGS += $(OT_CFLAGS) -Iaddons/ot/include
|
|
OPTIONS_LDFLAGS += $(OT_LDFLAGS)
|
|
OPTIONS_CFLAGS += $(OT_DEFINE)
|