All of lore.kernel.org
 help / color / mirror / Atom feed
From: <bamvor.zhangjian@huawei.com>
To: <shuahkh@osg.samsung.com>
Cc: <linux-api@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<khilman@kernel.org>, <broonie@kernel.org>, <mpe@ellerman.id.au>
Subject: [PATCH v2 0/6] enable O and KBUILD_OUTPUT for kselftest
Date: Tue, 29 Nov 2016 19:55:46 +0800	[thread overview]
Message-ID: <20161129115552.8148-1-bamvor.zhangjian@huawei.com> (raw)

From: Bamvor Jian Zhang <bamvor.zhangjian@linaro.org>

Here is my second version for enabling the KBUILD_OUTPUT for kselftest.
The first version could be found here[1]. I fix and test all the TARGET
in tools/testing/selftest/Makefile. For ppc, I test through fake target.

There are six patches in these series. And five of them clean up the
existing code. I split the clean up patches into five, hope it is easy
to review.

  selftests: remove duplicated all and clean target
  selftests: remove useless TEST_DIRS
a selftests: add pattern rules
A selftests: remove CROSS_COMPILE in dedicated Makefile
A selftests: add EXTRA_CLEAN for clean target
  selftests: enable O and KBUILD_OUTPUT

Notes:
  A: Ack by Michael.
  a: ack by Michael. Minor update after rebase.

In the first patch, I split the test files into two types:
TEST_GEN_XXX means such file is generated during compiling. TEST_XXX
means there is no need to compile before use. The main reason of this
is the enablement of KBUILD_OUTPUT only need to care about TEST_GEN_XXX.
I wanted to copy all the TEST_XXX with TEST_GEN_XXX, but I give up this
idea in the end. Because people may puzzle why copy the file before
installation.

Because of the introducing of TEST_GEN_XXX, I update the top-level
Makefile and lib.mk selftests directory. After introduce TEST_GEN_XXX, I
could remove all the unnecessary all and clean targets.

The second patch remove TEST_DIRS variable. And third patch add the
pattern for compiling the c sourc code. The fourth patch remove the
useless CROSS_COMPILE variable as it aleady exists in
"tools/testing/selftests/lib.mk".

Further more, The fifth patch add the EXTRA_CLEAN variable to clean up
the duplicated clean target

The last patch introduce the KBUILD_OUTPUT and O for kselftest instead
using the existing kbuild system because user may compile kselftest
directly (make -C tools/testing/selftests).

Changes:
1.  remove the useless *.o target in the following file suggested by
    Michael:
    tools/testing/selftests/powerpc/benchmarks/Makefile
    tools/testing/selftests/powerpc/copyloops/Makefile
    tools/testing/selftests/powerpc/dscr/Makefile
    tools/testing/selftests/powerpc/math/Makefile
    tools/testing/selftests/powerpc/primitives/Makefile
    tools/testing/selftests/powerpc/stringloops/Makefile
    tools/testing/selftests/powerpc/syscalls/Makefile
    tools/testing/selftests/powerpc/tm/Makefile

2.  remove the useless "all" and "clean" target in bpf and nsfs which
    are added after my previous patch.

3.  Improve the commit message.

[1] http://www.spinics.net/lists/linux-api/msg20789.html

Bamvor Jian Zhang (6):
  selftests: remove duplicated all and clean target
  selftests: remove useless TEST_DIRS
  selftests: add default rules for c source file
  selftests: remove CROSS_COMPILE in dedicated Makefile
  selftests: add EXTRA_CLEAN for clean target
  selftests: enable O and KBUILD_OUTPUT

 Documentation/kselftest.txt                        | 12 +++++++
 tools/testing/selftests/Makefile                   | 36 ++++++++++++++-----
 tools/testing/selftests/bpf/Makefile               | 10 ++----
 tools/testing/selftests/breakpoints/Makefile       | 10 ++----
 tools/testing/selftests/capabilities/Makefile      | 11 ++----
 tools/testing/selftests/efivarfs/Makefile          |  8 +----
 tools/testing/selftests/exec/Makefile              | 32 ++++++++---------
 tools/testing/selftests/ftrace/Makefile            |  6 ++--
 tools/testing/selftests/futex/Makefile             | 21 ++++++++---
 tools/testing/selftests/futex/functional/Makefile  | 12 ++-----
 tools/testing/selftests/ipc/Makefile               |  7 +---
 tools/testing/selftests/kcmp/Makefile              |  6 ++--
 tools/testing/selftests/lib.mk                     | 36 +++++++++++++++----
 tools/testing/selftests/membarrier/Makefile        |  6 +---
 tools/testing/selftests/memfd/Makefile             | 15 ++------
 tools/testing/selftests/mount/Makefile             |  7 +---
 tools/testing/selftests/mqueue/Makefile            |  6 +---
 tools/testing/selftests/net/Makefile               | 15 +++-----
 tools/testing/selftests/nsfs/Makefile              |  9 +----
 tools/testing/selftests/powerpc/Makefile           | 15 ++++----
 tools/testing/selftests/powerpc/alignment/Makefile |  9 ++---
 .../testing/selftests/powerpc/benchmarks/Makefile  | 15 +++-----
 .../selftests/powerpc/context_switch/Makefile      |  9 ++---
 tools/testing/selftests/powerpc/copyloops/Makefile | 19 ++++------
 tools/testing/selftests/powerpc/dscr/Makefile      | 13 +++----
 tools/testing/selftests/powerpc/math/Makefile      | 25 ++++++-------
 tools/testing/selftests/powerpc/mm/Makefile        | 18 ++++------
 tools/testing/selftests/powerpc/pmu/Makefile       | 26 +++++++-------
 tools/testing/selftests/powerpc/pmu/ebb/Makefile   | 15 +++-----
 .../testing/selftests/powerpc/primitives/Makefile  |  9 ++---
 .../testing/selftests/powerpc/stringloops/Makefile |  9 ++---
 .../selftests/powerpc/switch_endian/Makefile       | 17 ++++-----
 tools/testing/selftests/powerpc/syscalls/Makefile  |  9 ++---
 tools/testing/selftests/powerpc/tm/Makefile        | 17 ++++-----
 tools/testing/selftests/powerpc/vphn/Makefile      | 10 ++----
 tools/testing/selftests/pstore/Makefile            |  4 +--
 tools/testing/selftests/ptrace/Makefile            |  8 +----
 tools/testing/selftests/seccomp/Makefile           |  6 +---
 tools/testing/selftests/sigaltstack/Makefile       |  5 +--
 tools/testing/selftests/size/Makefile              | 10 ++----
 tools/testing/selftests/timers/Makefile            | 10 ++----
 tools/testing/selftests/vm/Makefile                | 41 +++++++++-------------
 tools/testing/selftests/x86/Makefile               | 17 +++++----
 tools/testing/selftests/zram/Makefile              |  3 +-
 44 files changed, 247 insertions(+), 357 deletions(-)

-- 
2.10.0

WARNING: multiple messages have this Message-ID (diff)
From: <bamvor.zhangjian@huawei.com>
To: shuahkh@osg.samsung.com
Cc: linux-api@vger.kernel.org, linux-kernel@vger.kernel.org,
	khilman@kernel.org, broonie@kernel.org, mpe@ellerman.id.au
Subject: [PATCH v2 0/6] enable O and KBUILD_OUTPUT for kselftest
Date: Tue, 29 Nov 2016 19:55:46 +0800	[thread overview]
Message-ID: <20161129115552.8148-1-bamvor.zhangjian@huawei.com> (raw)

From: Bamvor Jian Zhang <bamvor.zhangjian@linaro.org>

Here is my second version for enabling the KBUILD_OUTPUT for kselftest.
The first version could be found here[1]. I fix and test all the TARGET
in tools/testing/selftest/Makefile. For ppc, I test through fake target.

There are six patches in these series. And five of them clean up the
existing code. I split the clean up patches into five, hope it is easy
to review.

  selftests: remove duplicated all and clean target
  selftests: remove useless TEST_DIRS
a selftests: add pattern rules
A selftests: remove CROSS_COMPILE in dedicated Makefile
A selftests: add EXTRA_CLEAN for clean target
  selftests: enable O and KBUILD_OUTPUT

Notes:
  A: Ack by Michael.
  a: ack by Michael. Minor update after rebase.

In the first patch, I split the test files into two types:
TEST_GEN_XXX means such file is generated during compiling. TEST_XXX
means there is no need to compile before use. The main reason of this
is the enablement of KBUILD_OUTPUT only need to care about TEST_GEN_XXX.
I wanted to copy all the TEST_XXX with TEST_GEN_XXX, but I give up this
idea in the end. Because people may puzzle why copy the file before
installation.

Because of the introducing of TEST_GEN_XXX, I update the top-level
Makefile and lib.mk selftests directory. After introduce TEST_GEN_XXX, I
could remove all the unnecessary all and clean targets.

The second patch remove TEST_DIRS variable. And third patch add the
pattern for compiling the c sourc code. The fourth patch remove the
useless CROSS_COMPILE variable as it aleady exists in
"tools/testing/selftests/lib.mk".

Further more, The fifth patch add the EXTRA_CLEAN variable to clean up
the duplicated clean target

The last patch introduce the KBUILD_OUTPUT and O for kselftest instead
using the existing kbuild system because user may compile kselftest
directly (make -C tools/testing/selftests).

Changes:
1.  remove the useless *.o target in the following file suggested by
    Michael:
    tools/testing/selftests/powerpc/benchmarks/Makefile
    tools/testing/selftests/powerpc/copyloops/Makefile
    tools/testing/selftests/powerpc/dscr/Makefile
    tools/testing/selftests/powerpc/math/Makefile
    tools/testing/selftests/powerpc/primitives/Makefile
    tools/testing/selftests/powerpc/stringloops/Makefile
    tools/testing/selftests/powerpc/syscalls/Makefile
    tools/testing/selftests/powerpc/tm/Makefile

2.  remove the useless "all" and "clean" target in bpf and nsfs which
    are added after my previous patch.

3.  Improve the commit message.

[1] http://www.spinics.net/lists/linux-api/msg20789.html

Bamvor Jian Zhang (6):
  selftests: remove duplicated all and clean target
  selftests: remove useless TEST_DIRS
  selftests: add default rules for c source file
  selftests: remove CROSS_COMPILE in dedicated Makefile
  selftests: add EXTRA_CLEAN for clean target
  selftests: enable O and KBUILD_OUTPUT

 Documentation/kselftest.txt                        | 12 +++++++
 tools/testing/selftests/Makefile                   | 36 ++++++++++++++-----
 tools/testing/selftests/bpf/Makefile               | 10 ++----
 tools/testing/selftests/breakpoints/Makefile       | 10 ++----
 tools/testing/selftests/capabilities/Makefile      | 11 ++----
 tools/testing/selftests/efivarfs/Makefile          |  8 +----
 tools/testing/selftests/exec/Makefile              | 32 ++++++++---------
 tools/testing/selftests/ftrace/Makefile            |  6 ++--
 tools/testing/selftests/futex/Makefile             | 21 ++++++++---
 tools/testing/selftests/futex/functional/Makefile  | 12 ++-----
 tools/testing/selftests/ipc/Makefile               |  7 +---
 tools/testing/selftests/kcmp/Makefile              |  6 ++--
 tools/testing/selftests/lib.mk                     | 36 +++++++++++++++----
 tools/testing/selftests/membarrier/Makefile        |  6 +---
 tools/testing/selftests/memfd/Makefile             | 15 ++------
 tools/testing/selftests/mount/Makefile             |  7 +---
 tools/testing/selftests/mqueue/Makefile            |  6 +---
 tools/testing/selftests/net/Makefile               | 15 +++-----
 tools/testing/selftests/nsfs/Makefile              |  9 +----
 tools/testing/selftests/powerpc/Makefile           | 15 ++++----
 tools/testing/selftests/powerpc/alignment/Makefile |  9 ++---
 .../testing/selftests/powerpc/benchmarks/Makefile  | 15 +++-----
 .../selftests/powerpc/context_switch/Makefile      |  9 ++---
 tools/testing/selftests/powerpc/copyloops/Makefile | 19 ++++------
 tools/testing/selftests/powerpc/dscr/Makefile      | 13 +++----
 tools/testing/selftests/powerpc/math/Makefile      | 25 ++++++-------
 tools/testing/selftests/powerpc/mm/Makefile        | 18 ++++------
 tools/testing/selftests/powerpc/pmu/Makefile       | 26 +++++++-------
 tools/testing/selftests/powerpc/pmu/ebb/Makefile   | 15 +++-----
 .../testing/selftests/powerpc/primitives/Makefile  |  9 ++---
 .../testing/selftests/powerpc/stringloops/Makefile |  9 ++---
 .../selftests/powerpc/switch_endian/Makefile       | 17 ++++-----
 tools/testing/selftests/powerpc/syscalls/Makefile  |  9 ++---
 tools/testing/selftests/powerpc/tm/Makefile        | 17 ++++-----
 tools/testing/selftests/powerpc/vphn/Makefile      | 10 ++----
 tools/testing/selftests/pstore/Makefile            |  4 +--
 tools/testing/selftests/ptrace/Makefile            |  8 +----
 tools/testing/selftests/seccomp/Makefile           |  6 +---
 tools/testing/selftests/sigaltstack/Makefile       |  5 +--
 tools/testing/selftests/size/Makefile              | 10 ++----
 tools/testing/selftests/timers/Makefile            | 10 ++----
 tools/testing/selftests/vm/Makefile                | 41 +++++++++-------------
 tools/testing/selftests/x86/Makefile               | 17 +++++----
 tools/testing/selftests/zram/Makefile              |  3 +-
 44 files changed, 247 insertions(+), 357 deletions(-)

-- 
2.10.0

             reply	other threads:[~2016-11-29 11:54 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-29 11:55 bamvor.zhangjian [this message]
2016-11-29 11:55 ` [PATCH v2 0/6] enable O and KBUILD_OUTPUT for kselftest bamvor.zhangjian
2016-11-29 11:55 ` [PATCH v2 1/6] selftests: remove duplicated all and clean target bamvor.zhangjian
2016-11-29 11:55   ` bamvor.zhangjian
2016-11-29 11:55 ` [PATCH v2 2/6] selftests: remove useless TEST_DIRS bamvor.zhangjian
2016-11-29 11:55   ` bamvor.zhangjian-hv44wF8Li93QT0dZR+AlfA
2016-11-29 11:55 ` [PATCH v2 3/6] selftests: add default rules for c source file bamvor.zhangjian
2016-11-29 11:55   ` bamvor.zhangjian-hv44wF8Li93QT0dZR+AlfA
2016-11-29 11:55 ` [PATCH v2 4/6] selftests: remove CROSS_COMPILE in dedicated Makefile bamvor.zhangjian
2016-11-29 11:55   ` bamvor.zhangjian
2016-11-29 11:55 ` [PATCH v2 5/6] selftests: add EXTRA_CLEAN for clean target bamvor.zhangjian
2016-11-29 11:55   ` bamvor.zhangjian-hv44wF8Li93QT0dZR+AlfA
2016-11-29 11:55 ` [PATCH v2 6/6] selftests: enable O and KBUILD_OUTPUT bamvor.zhangjian
2016-11-29 11:55   ` bamvor.zhangjian-hv44wF8Li93QT0dZR+AlfA
2017-03-20 21:39   ` Andy Lutomirski
2017-03-20 21:39     ` Andy Lutomirski
2017-03-21  8:35     ` Michael Ellerman
2017-03-21  8:35       ` Michael Ellerman
2017-03-21  9:00       ` Bamvor Zhang Jian
2017-03-21  9:00         ` Bamvor Zhang Jian
2017-03-21 13:54         ` Shuah Khan
2017-03-21 16:09           ` Bamvor Zhang Jian
2017-03-21 18:02             ` Shuah Khan
2017-03-21 18:02               ` Shuah Khan
2017-03-22 12:55               ` Bamvor Zhang Jian
2017-03-22 12:55                 ` Bamvor Zhang Jian
2017-03-22 11:35             ` Michael Ellerman
2017-03-22 11:35               ` Michael Ellerman
2017-03-22 11:46           ` Michael Ellerman
2017-03-22 11:46             ` Michael Ellerman
2017-03-22 11:38         ` Michael Ellerman
2017-03-22 11:38           ` Michael Ellerman
2017-03-22 12:52           ` Bamvor Zhang Jian
2017-03-22 12:52             ` Bamvor Zhang Jian
2016-11-30 14:17 ` [PATCH v2 0/6] enable O and KBUILD_OUTPUT for kselftest Shuah Khan
2016-11-30 14:17   ` Shuah Khan
2016-11-30 15:32   ` Bamvor Zhang Jian
2016-11-30 15:32     ` Bamvor Zhang Jian
2016-12-01 19:35     ` Shuah Khan
2016-12-01 19:35       ` Shuah Khan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20161129115552.8148-1-bamvor.zhangjian@huawei.com \
    --to=bamvor.zhangjian@huawei.com \
    --cc=broonie@kernel.org \
    --cc=khilman@kernel.org \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mpe@ellerman.id.au \
    --cc=shuahkh@osg.samsung.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.