Message ID | 20201104100706.659089-1-mpe@ellerman.id.au (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | selftests/exec: Fix building of exec test | expand |
On Wed, Nov 04, 2020 at 09:07:06PM +1100, Michael Ellerman wrote: > Currently the exec test does not build: > > make[1]: Entering directory '/linux/tools/testing/selftests/exec' > ... > make[1]: *** No rule to make target '/output/kselftest/exec/pipe', needed by 'all'. > > This is because pipe is listed in TEST_GEN_FILES, but pipe is not > generated by the Makefile, it's created at runtime. So drop pipe from > TEST_GEN_FILES. Ah, yes, shouldn't it be added to EXTRA_CLEAN though? Fixes: 61016db15b8e ("selftests/exec: Verify execve of non-regular files fail") > > With that fixed, then install fails: > > make[1]: Entering directory '/linux/tools/testing/selftests/exec' > rsync -a binfmt_script non-regular /output/install/exec/ > rsync: link_stat "/linux/tools/testing/selftests/exec/non-regular" failed: No such file or directory (2) > > That's because non-regular hasn't been built, because it's in > TEST_PROGS, it should be part of TEST_GEN_PROGS to indicate that it > needs to be built. Yes, thanks again! Fixes: 0f71241a8e32 ("selftests/exec: add file type errno tests") for both: Acked-by: Kees Cook <keescook@chromium.org>
diff --git a/tools/testing/selftests/exec/Makefile b/tools/testing/selftests/exec/Makefile index cf69b2fcce59..a1e8a7abf576 100644 --- a/tools/testing/selftests/exec/Makefile +++ b/tools/testing/selftests/exec/Makefile @@ -3,9 +3,9 @@ CFLAGS = -Wall CFLAGS += -Wno-nonnull CFLAGS += -D_GNU_SOURCE -TEST_PROGS := binfmt_script non-regular -TEST_GEN_PROGS := execveat load_address_4096 load_address_2097152 load_address_16777216 -TEST_GEN_FILES := execveat.symlink execveat.denatured script subdir pipe +TEST_PROGS := binfmt_script +TEST_GEN_PROGS := execveat non-regular load_address_4096 load_address_2097152 load_address_16777216 +TEST_GEN_FILES := execveat.symlink execveat.denatured script subdir # Makefile is a run-time dependency, since it's accessed by the execveat test TEST_FILES := Makefile
Currently the exec test does not build: make[1]: Entering directory '/linux/tools/testing/selftests/exec' ... make[1]: *** No rule to make target '/output/kselftest/exec/pipe', needed by 'all'. This is because pipe is listed in TEST_GEN_FILES, but pipe is not generated by the Makefile, it's created at runtime. So drop pipe from TEST_GEN_FILES. With that fixed, then install fails: make[1]: Entering directory '/linux/tools/testing/selftests/exec' rsync -a binfmt_script non-regular /output/install/exec/ rsync: link_stat "/linux/tools/testing/selftests/exec/non-regular" failed: No such file or directory (2) That's because non-regular hasn't been built, because it's in TEST_PROGS, it should be part of TEST_GEN_PROGS to indicate that it needs to be built. Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> --- tools/testing/selftests/exec/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) base-commit: cf7cd542d1b538f6e9e83490bc090dd773f4266d