From 509a009c5dd06e680bc2fff6ebc45f7f42aaee3e Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Fri, 29 Mar 2019 17:17:52 +0100 Subject: [PATCH] BUILD: makefile: work around an old bug in GNU make-3.80 GNU make-3.80 fails on the .build_opts target, expecting the closing brace before the first semi-colon in the shell command, it probably uses a more limited parser for dependencies. Actually it appears it's enough to place this command in a variable and reference the variable there. Since it doesn't affect later versions (and the resulting string is always empty anyway), let's apply the minor change to continue to comply with the announced dependencies. This could be backported as far as 1.6. --- Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 55522151fa..fd2d9050d0 100644 --- a/Makefile +++ b/Makefile @@ -810,7 +810,8 @@ help: $(Q)sed -ne "/^[^#]*$$/q;s/^#\(.*\)/\1/p" Makefile # Used only to force a rebuild if some build options change -.build_opts: $(shell rm -f .build_opts.new; echo \'$(TARGET) $(BUILD_OPTIONS) $(VERBOSE_CFLAGS)\' > .build_opts.new; if cmp -s .build_opts .build_opts.new; then rm -f .build_opts.new; else mv -f .build_opts.new .build_opts; fi) +build_opts = $(shell rm -f .build_opts.new; echo \'$(TARGET) $(BUILD_OPTIONS) $(VERBOSE_CFLAGS)\' > .build_opts.new; if cmp -s .build_opts .build_opts.new; then rm -f .build_opts.new; else mv -f .build_opts.new .build_opts; fi) +.build_opts: $(build_opts) haproxy: $(OPTIONS_OBJS) $(OBJS) $(EBTREE_OBJS) $(cmd_LD) $(LDFLAGS) -o $@ $^ $(LDOPTS) -- 2.47.3