By explicitly specifying the dependency between signals.c and
signames.h.
BUILT_SOURCES only works with the standard targets, so if somebody tries
to build fuser directly he may end up with a build failure. What's
worse, he could do "make -j2 src/signames.h src/fuser" and he could end
up with a broken build using a only partially generated signames.h.
And that "somebody" was me when packaging killall in psmisc 22.21...
so it actually happens.
References:
psmisc/psmisc!16
Changes in 23.2
===============
+ * buildsys: signals.c depends on signames.h !16
* killall: look at all namespaces by default
* killall: Fix -INT option parsing #11
* killall: change to getopt_long without _only #12
grep '^{ 1,"HUP" },$$' $@ >/dev/null || \
{ rm -f $@; exit 1; }
+src/signals.c: src/signames.h
+
install-exec-hook:
cd $(DESTDIR)$(bindir) && \
( [ -h pstree.x11 ] || $(LN_S) pstree pstree.x11)