Hi Muhammad,
On 18/01/2022 12:29, Muhammad Usama Anjum wrote:
Out of tree build of this test fails if relative path of the output directory is specified. Remove the un-needed include paths and use KHDR_INCLUDES to correctly reach the headers.
Thank you for looking at that!
Signed-off-by: Muhammad Usama Anjum usama.anjum@collabora.com
tools/testing/selftests/net/mptcp/Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/tools/testing/selftests/net/mptcp/Makefile b/tools/testing/selftests/net/mptcp/Makefile index 0356c4501c99..fed6866d3b73 100644 --- a/tools/testing/selftests/net/mptcp/Makefile +++ b/tools/testing/selftests/net/mptcp/Makefile @@ -1,9 +1,8 @@ # SPDX-License-Identifier: GPL-2.0 -top_srcdir = ../../../../..
Removing this line breaks our CI validating MPTCP selftests. That's because this "top_srcdir" variable is needed in the "lib.mk" file which is included at the end of this Makefile.
But that's maybe a misuse from our side. Indeed to avoid compiling binaries and more from the VM, our CI does that as a preparation job before starting the VM and run MPTCP selftests:
$ make O=(...) INSTALL_HDR_PATH=(...)/kselftest/usr headers_install $ make O=(...) -C tools/testing/selftests/net/mptcp
From the VM, we re-use the same source directory and we can start individual tests without having to compile anything else:
$ cd tools/testing/selftests/net/mptcp $ ./mptcp_connect.sh
We want to do that because some scripts are launched multiple times with different parameters.
With your modifications, we can drop the headers_install instruction but we need to pass new parameters to the last 'make' command:
$ make O=(...) top_srcdir=../../../../.. \ KHDR_INCLUDES=-I(...)/usr/include \ -C tools/testing/selftests/net/mptcp
Or is there a better way to do that? Can we leave the definition of "top_srcdir" like it was or did we miss something else?
KSFT_KHDR_INSTALL := 1 -CFLAGS = -Wall -Wl,--no-as-needed -O2 -g -I$(top_srcdir)/usr/include +CFLAGS = -Wall -Wl,--no-as-needed -O2 -g $(KHDR_INCLUDES) TEST_PROGS := mptcp_connect.sh pm_netlink.sh mptcp_join.sh diag.sh \ simult_flows.sh mptcp_sockopt.sh
Note: I see there is a very long recipients list. If my issue is not directly due to your modifications, we can probably continue the discussion with a restricted audience.
Cheers, Matt