Re: [PATCH 2/2] selftests: Add kselftest_install target to main Makefile

From: Masahiro Yamada
Date: Wed Sep 25 2019 - 23:28:11 EST


Hi Shuah,



On Thu, Sep 26, 2019 at 8:05 AM Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx> wrote:
>
> Add kselftest_install target to install tests from the top level
> Makefile. This is to simplify kselftest use-cases for CI and
> distributions where build and test systems are different.
>
> This change addresses requests from developers and testers to add
> support for installing kselftest from the main Makefile.
>
> In addition, make the install directory the same when install is
> run using "make kselftest_install" or by running kselftest_install.sh.
> Also fix the INSTALL_PATH variable conflict between main Makefile.
>
> Signed-off-by: Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx>

So, if these two patches were applied, we would see the following:


PHONY += kselftest_build
kselftest_build:
$(Q)$(MAKE) -C $(srctree)/tools/testing/selftests all

PHONY += kselftest
kselftest:
$(Q)$(MAKE) -C $(srctree)/tools/testing/selftests run_tests

PHONY += kselftest_install
kselftest_install:
$(Q)$(MAKE) -C $(srctree)/tools/testing/selftests install

PHONY += kselftest-clean
kselftest-clean:
$(Q)$(MAKE) -C $(srctree)/tools/testing/selftests clean


I do not want to see this endless crap addition just for
changing the working directory to $(srctree)/tools/testing/selftests



Why don't you use pattern rule?
Those will be reduced into the two rules.



PHONY += kselftest
kselftest:
$(Q)$(MAKE) -C $(srctree)/tools/testing/selftests run_tests

kselftest-%: FORCE
$(Q)$(MAKE) -C $(srctree)/tools/testing/selftests $*



This also avoids your inconsistency about
"kselftest-" vs "kselftest_".


Given the existing "kselftest-clean" and "kselftest-merge",
"kselftest_build" and "kselftest_install"
(using an underscore instead of n hyphen)
would add needless confusion.


--
Best Regards
Masahiro Yamada