From 0bc2d60e1f7608925b40963e91a1252e687b63ef Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Mon, 20 Oct 2014 16:34:52 +0100 Subject: [PATCH] Build system: Bodge regress/Makefile.in's .SECONDARY some more The declaration mentioning CLIENTS has an unfortunate side-effect: it `mentions' the file adnshost_c.o, which is not part of the build and is not buildable. According to the rules in `(make)Implicit Rule Search' this causes make to try to build adnshost_playback from adnshost_c.o (rule 5). This is because files whose names are `mentioned' are taken to `ought to exist'. This causes adns to be unbuildable on the make from Debian sid (4.0-8); it is not visible on earlier makes (eg 3.81-8.2) because they don't appear to actually follow the documented algorithm. Bodge this (further) by filtering adnshost out of the client list. It is currently the only client made out of multiple object files. (Cherry-picked from Debian's adns dgit/experimental branch.) Signed-off-by: Ian Jackson --- regress/Makefile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/regress/Makefile.in b/regress/Makefile.in index 2834e83..34be146 100644 --- a/regress/Makefile.in +++ b/regress/Makefile.in @@ -56,7 +56,7 @@ LINK_CMD= $(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@ %_playback: %_c.o hplayback.o $(HARNLOBJS) $(LINK_CMD) -.SECONDARY: $(addsuffix _c.o, $(CLIENTS)) +.SECONDARY: $(addsuffix _c.o, $(filter-out adnshost, $(CLIENTS))) # Without this, make will remove _c.o after building . # This wastes effort. (Debian bug #4073.) # -- 2.30.2