From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 54659C433F5 for ; Thu, 6 Oct 2022 17:43:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231814AbiJFRnN (ORCPT ); Thu, 6 Oct 2022 13:43:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43820 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231600AbiJFRnG (ORCPT ); Thu, 6 Oct 2022 13:43:06 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E0A76B40E8; Thu, 6 Oct 2022 10:43:03 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 92CCAB82126; Thu, 6 Oct 2022 17:43:02 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id F0459C433C1; Thu, 6 Oct 2022 17:43:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1665078181; bh=8L4ETKVrJv6anS4RBzHd/U96VBFqskwrKbkT5eLy2Lg=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=LwpzeQQzjm9tuiUHEQXke23UfORLgjnFJs5mYsTMrDIfxJFnOcZqV/iyk6DGjwSJ5 cG+niFpHlrmX8g+T93ukA1wJAzBlJAPQu0YJ6rcRtu1t78gHvC4/dBifVpA+9zy5Ke GhigiDZFhyOLEH41El9uQQE7dl+PEOmbyF3QsPwqMPghYS2wUZG64TF0SpYTILd3Mv 4/IzLrH4zlLacwnMtFqAf2Xa9Gvm/K+r7xEfcOGmeivxXGQtGBXGR07qc3YPXcHeyI naFMeV1nfDMLfDfCy48/xYIYFCZl2HLSfrHTSpEFbcMg6aoJ82Sv3kPlwbCzocA0Op 6SCn53nbnlK2w== Received: by quaco.ghostprotocols.net (Postfix, from userid 1000) id 7C9234062C; Thu, 6 Oct 2022 14:42:58 -0300 (-03) Date: Thu, 6 Oct 2022 14:42:58 -0300 From: Arnaldo Carvalho de Melo To: Leo Yan Cc: carsten.haitzler@foss.arm.com, Jiri Slaby , linux-kernel@vger.kernel.org, coresight@lists.linaro.org, suzuki.poulose@arm.com, mathieu.poirier@linaro.org, mike.leach@linaro.org, linux-perf-users@vger.kernel.org Subject: Re: [PATCH v9 02/13] perf test: Add build infra for perf test tools for CoreSight tests Message-ID: References: <20220909152803.2317006-1-carsten.haitzler@foss.arm.com> <20220909152803.2317006-3-carsten.haitzler@foss.arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Url: http://acmel.wordpress.com Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Thu, Oct 06, 2022 at 02:12:11PM -0300, Arnaldo Carvalho de Melo escreveu: > Em Thu, Oct 06, 2022 at 11:07:19PM +0800, Leo Yan escreveu: > > On Thu, Oct 06, 2022 at 11:22:13AM -0300, Arnaldo Carvalho de Melo wrote: > > > > [...] > > > > > > @@ -1006,7 +1014,10 @@ install-tests: all install-gtk > > > > $(INSTALL) tests/shell/*.sh '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell'; \ > > > > $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'; \ > > > > $(INSTALL) tests/shell/lib/*.sh -m 644 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'; \ > > > > - $(INSTALL) tests/shell/lib/*.py -m 644 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib' > > > > + $(INSTALL) tests/shell/lib/*.py -m 644 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'; \ > > > > + $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/coresight'; \ > > > > + $(INSTALL) tests/shell/coresight/*.sh '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/coresight' > > > > + $(Q)$(MAKE) -C tests/shell/coresight install-tests > > > > > > > > It's deliberately to not add '-m 644' when install coresight test > > > > shell scripts under the folder tests/shell/coresight/ so that we can > > > > keep the executable permission for these scripts. On the other flip, > > > > we set 644 mode for the scripts under tests/shell/lib/ so these > > > > scripts will not be executed directly by perf test framework. > > > > > > > > @Carsten, if have chance could you confirm for above change? > > > > > > If you need for some .sh, coresight test's to have x set while all of > > > the others don't have, and you have a good reason for that, ok, we just > > > add a comment. > > > > Simply to say, all lib scripts are not needed for execute permission. > > Yes, it's good to add a comment for the installation steps. > > > > > > > DESCEND plugins > > > > > GEN /tmp/build/perf/python/perf.so > > > > > INSTALL trace_plugins > > > > > INSTALL binaries > > > > > INSTALL tests > > > > > install: cannot stat 'tests/shell/coresight/*.sh': No such file or directory > > > > > make[2]: *** [Makefile.perf:1007: install-tests] Error 1 > > > > > make[2]: *** Waiting for unfinished jobs.... > > > > > > > > > > I'll add it back when the first .sh gets added to tests/shell/coresight/ > > > > > > > > Sorry for introducing extra efforts for you and thanks! > > > > > > This also has to go, I'll check and fix this loop that doesn't follow > > > the existing output style, happens with ´make install', etc too: > > > > > > ⬢[acme@toolbox perf]$ make -C tools/perf clean > > > make: Entering directory '/var/home/acme/git/perf/tools/perf' > > > CLEAN x86 > > > CLEAN libtraceevent > > > CLEAN libapi > > > CLEAN libbpf > > > CLEAN libsubcmd > > > CLEAN libperf > > > CLEAN fixdep > > > CLEAN feature-detect > > > CLEAN python > > > CLEAN bpf-skel > > > make -C asm_pure_loop clean >/dev/null <------------------- > > > make -C memcpy_thread clean >/dev/null <------------------- > > > make -C thread_loop clean >/dev/null <------------------- > > > make -C unroll_loop_thread clean >/dev/null <------------------- > > > > Ouch, if we can update the file tests/shell/coresight/Makefile as below: > > > > $(CLEANDIRS): > > $(call QUIET_CLEAN, test-$(@:clean-%=%)) $(Q)$(MAKE) -C $(@:clean-%=%) clean >/dev/null > > I had to do it, so far, at the time that the above line is first added > as: > > diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf > index a20b4adb5e3451f1..194e582e70c2c766 100644 > --- a/tools/perf/Makefile.perf > +++ b/tools/perf/Makefile.perf > @@ -635,7 +635,8 @@ tests-coresight-targets: FORCE > $(Q)$(MAKE) -C $(TESTS_CORESIGHT_DIR) > > tests-coresight-targets-clean: > - $(Q)$(MAKE) -C $(TESTS_CORESIGHT_DIR) clean > + $(call QUIET_CLEAN, coresight) > + $(Q)$(MAKE) -C $(TESTS_CORESIGHT_DIR) O=$(OUTPUT) clean >/dev/null > > all: shell_compatibility_test $(ALL_PROGRAMS) $(LANG_BINDINGS) $(OTHER_PROGRAMS) tests-coresight-targets > > diff --git a/tools/perf/tests/shell/coresight/Makefile b/tools/perf/tests/shell/coresight/Makefile > index 3fee05cfcb0e73f6..6baab5cbaa9aa3b1 100644 > --- a/tools/perf/tests/shell/coresight/Makefile > +++ b/tools/perf/tests/shell/coresight/Makefile > @@ -20,6 +20,6 @@ CLEANDIRS = $(SUBDIRS:%=clean-%) > > clean: $(CLEANDIRS) > $(CLEANDIRS): > - $(Q)$(MAKE) -C $(@:clean-%=%) clean >/dev/null > + $(call QUIET_CLEAN, test-$(@:clean-%=%)) $(Q)$(MAKE) -C $(@:clean-%=%) clean >/dev/null > > .PHONY: all clean $(SUBDIRS) $(CLEANDIRS) $(INSTALLDIRS) And for the normal build and install, somehow that $(Q) is not being obeyed there, so I'm using straight @ for now so that we have a clean output, someone more knowledgeable in the Makefile voodoo can then fix it. ⬢[acme@toolbox perf]$ git log --oneline -1 e1700b67a41092a5 (HEAD) perf test: Add build infra for perf test tools for ARM CoreSight tests ⬢[acme@toolbox perf]$ git diff diff --git a/tools/perf/tests/shell/coresight/Makefile b/tools/perf/tests/shell/coresight/Makefile index 6baab5cbaa9aa3b1..6f3b3f07049c2d53 100644 --- a/tools/perf/tests/shell/coresight/Makefile +++ b/tools/perf/tests/shell/coresight/Makefile @@ -8,13 +8,13 @@ SUBDIRS = all: $(SUBDIRS) $(SUBDIRS): - $(Q)$(MAKE) -C $@ + @$(MAKE) -C $@ INSTALLDIRS = $(SUBDIRS:%=install-%) install-tests: $(INSTALLDIRS) $(INSTALLDIRS): - $(Q)$(MAKE) -C $(@:install-%=%) install-tests + @$(MAKE) -C $(@:install-%=%) install-tests >/dev/null CLEANDIRS = $(SUBDIRS:%=clean-%) ⬢[acme@toolbox perf]$