[LTP] [PATCH v3 2/2] Add Linux Test eXecutor inside tools

Petr Vorel pvorel@suse.cz
Mon Sep 18 11:17:56 CEST 2023


> From: Andrea Cervesato <andrea.cervesato@suse.com>

> The ltx program runs on the system under test (SUT). It's primary
> purpose is to run test executables in parallel and serialise the
> results.

> Signed-off-by: Andrea Cervesato <andrea.cervesato@suse.com>
> ---
>  .gitmodules        |  3 +++
>  tools/ltx/Makefile | 31 +++++++++++++++++++++++++++++++
>  tools/ltx/ltx-src  |  1 +
>  3 files changed, 35 insertions(+)
>  create mode 100644 tools/ltx/Makefile
>  create mode 160000 tools/ltx/ltx-src

> diff --git a/.gitmodules b/.gitmodules
> index c389186c9..2a8b7a399 100644
> --- a/.gitmodules
> +++ b/.gitmodules
> @@ -10,3 +10,6 @@
>  [submodule "tools/kirk"]
>  	path = tools/kirk
>  	url = https://github.com/linux-test-project/kirk.git
> +[submodule "tools/ltx/ltx-src"]
> +	path = tools/ltx/ltx-src
> +	url = https://github.com/linux-test-project/ltx.git
> diff --git a/tools/ltx/Makefile b/tools/ltx/Makefile
> new file mode 100644
> index 000000000..4810ec8df
> --- /dev/null
> +++ b/tools/ltx/Makefile
> @@ -0,0 +1,31 @@
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +# Copyright (c) 2023 Cyril Hrubis <chrubis@suse.cz>
> +# Copyright (c) 2023 Andrea Cervesato <andrea.cervesato@suse.com>
> +#
> +# Install script for Linux Test eXecutor
> +
> +top_srcdir		?= ../..
> +
> +include $(top_srcdir)/include/mk/env_pre.mk
> +
> +ifneq ($(wildcard $(abs_srcdir)/ltx-src/*),)
> +
> +BINARY=ltx
> +
> +MAKE_TARGETS := $(BINARY)
> +
> +CFLAGS+=-I$(abs_srcdir)/ltx-src/ -I$(abs_srcdir)/ltx-src/msgpack/
> +
> +$(BINARY): $(wildcard $(abs_srcdir)/ltx-src/*.c $(abs_srcdir)/ltx-src/msgpack/*.c)
> +ifdef VERBOSE
> +	$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@
> +else
> +	@echo CC $@
> +	@$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@
> +endif
This works, but why we don't use approach used for sparc, i.e.

$(MAKE) -C ltx-src

That way we would not have to redefine the default rules.

Also it detects missing git clone and runs
git submodule update --init if needed.

I'm asking for a same approach, not only because later we can unify and reuse
the code in some make helper, but also because it'd be more user friendly if our
new git submodules work the same way.

But if there is not enough time before release I would not be against this.

Kind regards,
Petr


More information about the ltp mailing list