mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-23 04:42:28 +00:00
bc2f3934f9
It happens that a few "if USE_foo" were placed too low in the makefile, and would mostly work by luck thanks to not using variables that were already referenced before. The opentracing include is even trickier because it extends OPTIONS_CFLAGS that was last read a few lines before being included, but it only works because COPTS is defined as a macro and not a variable, so it will be evaluated later. At least now it doesn't touch OPTIONS_* anymore and since it's cleanly arranged, it will work by default via the flags collector. Let's just move these late USE_* handlers upper and place a visible delimiter after them reminding not to add any after.
74 lines
1.9 KiB
Makefile
74 lines
1.9 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
|
|
|
|
OT_CFLAGS := $(OT_CFLAGS) -Iaddons/ot/include $(OT_DEFINE)
|