lkml.org 
[lkml]   [2014]   [Sep]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 3/3] tools: parallel selftests building & running
    Date
    Now make -jN builds and runs selftests in parallel. Also, if one
    selftest fails to build or run, make will return an error, whereas
    before the error was ignored.

    Signed-off-by: Peter Feiner <pfeiner@google.com>

    ---

    v1 -> v2:
    Moved fix for missing 'make clean' target into separate
    patch.
    ---
    tools/testing/selftests/Makefile | 49 ++++++++++++++++------------------------
    1 file changed, 20 insertions(+), 29 deletions(-)

    diff --git a/tools/testing/selftests/Makefile b/tools/testing/selftests/Makefile
    index 36ff2e4..8c33716 100644
    --- a/tools/testing/selftests/Makefile
    +++ b/tools/testing/selftests/Makefile
    @@ -18,32 +18,23 @@ TARGETS += firmware
    TARGETS_HOTPLUG = cpu-hotplug
    TARGETS_HOTPLUG += memory-hotplug

    -all:
    - for TARGET in $(TARGETS); do \
    - make -C $$TARGET; \
    - done;
    -
    -run_tests: all
    - for TARGET in $(TARGETS); do \
    - make -C $$TARGET run_tests; \
    - done;
    -
    -hotplug:
    - for TARGET in $(TARGETS_HOTPLUG); do \
    - make -C $$TARGET; \
    - done;
    -
    -run_hotplug: hotplug
    - for TARGET in $(TARGETS_HOTPLUG); do \
    - make -C $$TARGET run_full_test; \
    - done;
    -
    -clean_hotplug:
    - for TARGET in $(TARGETS_HOTPLUG); do \
    - make -C $$TARGET clean; \
    - done;
    -
    -clean:
    - for TARGET in $(TARGETS); do \
    - make -C $$TARGET clean; \
    - done;
    +BUILD_TARGETS=$(TARGETS:%=build-%) $(TARGETS_HOTPLUG:%=build-%)
    +TEST_TARGETS=$(TARGETS:%=test-%)
    +CLEAN_TARGETS=$(TARGETS:%=clean-%) $(TARGETS_HOTPLUG:%=clean-%)
    +
    +all: $(BUILD_TARGETS)
    +
    +run_hotplug: test-cpu-hotplug test-memory-hotplug
    +
    +run_tests: $(TEST_TARGETS)
    +
    +clean: $(CLEAN_TARGETS)
    +
    +build-%:
    + $(MAKE) -C $(@:build-%=%)
    +
    +test-%: build-%
    + $(MAKE) -C $(@:test-%=%) run_tests
    +
    +clean-%:
    + $(MAKE) -C $(@:clean-%=%) clean
    --
    2.1.0.rc2.206.gedb03e5


    \
     
     \ /
      Last update: 2014-09-23 22:21    [W:3.150 / U:0.084 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site