On 2/26/22 2:13 AM, Shuah Khan wrote:
On 2/25/22 11:01 AM, Shuah Khan wrote:
On 2/25/22 10:22 AM, Muhammad Usama Anjum wrote:
Any thoughts about it?
No to post please.
On 2/17/22 3:38 AM, Muhammad Usama Anjum wrote:
Build of bpf and tc-testing selftests fails when the relative path of the build directory is specified.
make -C tools/testing/selftests O=build0 make[1]: Entering directory '/linux_mainline/tools/testing/selftests/bpf' ../../../scripts/Makefile.include:4: *** O=build0 does not exist. Stop. make[1]: Entering directory '/linux_mainline/tools/testing/selftests/tc-testing' ../../../scripts/Makefile.include:4: *** O=build0 does not exist. Stop.
Makefiles of bpf and tc-testing include scripts/Makefile.include file. This file has sanity checking inside it which checks the output path. The output path is not relative to the bpf or tc-testing. The sanity check fails. Expand the output path to get rid of this error. The fix is the same as mentioned in commit 150a27328b68 ("bpf, preload: Fix build when $(O) points to a relative path").
Signed-off-by: Muhammad Usama Anjum usama.anjum@collabora.com
Changes in V2: Add more explaination to the commit message. Support make install as well.
Does the same happen when you use make kselftest-all?
No, this problem doesn't appear when using make kselftest-all.
As separate output directory build was broken in kernel's top most Makefile i.e., make kselftest-all O=dir. (I've sent separate patch to fix this: https://lore.kernel.org/lkml/20220223191016.1658728-1-usama.anjum@collabora....) So people must have been using kselftest's internal Makefile directly to keep object files in separate directory i.e., make -C tools/testing/selftests O=dir and in this way the build of these tests (bpf, tc-testing) fail. This patch is fixing those build errors.
I am unable to reproduce what you are seeing?
make -C tools/testing/selftests O=dir should reproduce this problem.
thanks, -- Shuah