Bug #12021
closedzfs_diff tests missing Makefile deps
100%
Description
After the integration of 11962 build failures of the following form were seen:
build:illumos:upstream_gate% make install /usr/bin/rm -f /data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff/socket; /data/omnios-build/omniosorg/bloody/illumos/usr/src/tools/proto/root_i386-nd/opt/onbld/bin/i386/install -s -m 0555 -f /data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff socket install:file_copy: /data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff/socket failed (2): No such file or directory *** Error code 1 make: Fatal error: Command failed for target `/data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff/socket' Current working directory /data/omnios-build/omniosorg/bloody/illumos/usr/src/test/zfs-tests/tests/functional/cli_root/zfs_diff build:illumos:upstream_gate% build:illumos:upstream_gate% ls /data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff /data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff: No such file or directory
Based on the above, one can see that the socket program was built, but its parent directory was not present. If one inspects the corresponding Makefile, usr/src/test/zfs-tests/tests/functional/cli_root/zfs_diff, then you'll find that there's a missing dependency between the output program in the proto area and its parent directory. While the included Makefile.com has dependencies for the shell scripts that it picks up, it doesn't have any such dependency for programs. The solution is to add an explicit dependency for this case.
Updated by Robert Mustacchi over 3 years ago
To test this I had a situation where dmake -m serial
failed reliably. I added the proposed change into the makefile and it now worked.
Updated by Electric Monk over 3 years ago
- Status changed from New to Closed
- % Done changed from 0 to 100
git commit bb51a979b2badfaa6cf79bcb781b23aa6c1502f2
commit bb51a979b2badfaa6cf79bcb781b23aa6c1502f2 Author: Robert Mustacchi <rm@fingolfin.org> Date: 2019-11-23T22:03:25.000Z 12021 zfs_diff tests missing Makefile deps Reviewed by: Andy Fiddaman <andy@omniosce.org> Reviewed by: Kody Kantor <kody.kantor@joyent.com> Reviewed by: Jason King <jason.king@joyent.com> Reviewed by: Paul Winder <paul@winders.demon.co.uk> Approved by: Dan McDonald <danmcd@joyent.com>