mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-27 07:02:11 +00:00
BUILD: makefile: warn about unknown USE_* variables
William suggested that it would be nice to warn about unknown USE_* variables to more easily catch misspelled ones. The valid ones are present in use_opts, so by appending "=%" to each of them, we can build a series of patterns to exclude from MAKEOVERRIDES and emit a warning for the ones that stand out. Example: $ make TARGET=linux-glibc USE_QUIC_COMPAT_OPENSSL=1 Makefile:338: Warning: ignoring unknown build option: USE_QUIC_COMPAT_OPENSSL=1 CC src/slz.o
This commit is contained in:
parent
1fa6eb2eb9
commit
aa32ab13f0
3
Makefile
3
Makefile
@ -322,6 +322,9 @@ use_opts = USE_EPOLL USE_KQUEUE USE_NETFILTER USE_POLL \
|
||||
# preset all variables for all supported build options among use_opts
|
||||
$(reset_opts_vars)
|
||||
|
||||
# Check that any USE_* variable that was forced actually exist.
|
||||
$(warn_unknown_options)
|
||||
|
||||
#### Target system options
|
||||
|
||||
# poll() is always supported, unless explicitly disabled by passing USE_POLL=""
|
||||
|
@ -50,3 +50,15 @@ endef
|
||||
|
||||
# collect all enabled USE_foo's foo_{C,LD}FLAGS into OPTIONS_{C,LD}FLAGS
|
||||
collect_opts_flags = $(foreach opt,$(enabled_opts),$(eval $(call collect_opt_flags,$(opt))))
|
||||
|
||||
# Check that any USE_* variable that was forced actually exist. For this we'll
|
||||
# build a list of the MAKEOVERRIDES variables that start with USE_*, and keep
|
||||
# the ones that do not match any of the patterns built by appending '=%' to all
|
||||
# use_opts. The outstanding ones are thus unknown and each of them produces a
|
||||
# warning.
|
||||
warn_unknown_options = \
|
||||
$(foreach unknown, \
|
||||
$(filter-out $(foreach opt,$(use_opts),$(opt:==%)), \
|
||||
$(foreach opt,$(MAKEOVERRIDES), \
|
||||
$(strip $(filter USE_%,$(opt))))), \
|
||||
$(warning Warning: ignoring unknown build option: $(unknown)))
|
||||
|
Loading…
Reference in New Issue
Block a user