From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754935AbbLGIqw (ORCPT ); Mon, 7 Dec 2015 03:46:52 -0500 Received: from mx1.redhat.com ([209.132.183.28]:34178 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753287AbbLGIqu (ORCPT ); Mon, 7 Dec 2015 03:46:50 -0500 Date: Mon, 7 Dec 2015 09:46:48 +0100 From: Jiri Olsa To: Josh Poimboeuf Cc: Ingo Molnar , Namhyung Kim , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , linux-kernel@vger.kernel.org Subject: Re: [PATCH 00/13] perf tools: Move perf subcommand framework into lib/tools Message-ID: <20151207084648.GA19908@krava.brq.redhat.com> References: <20151206093752.GA4022@gmail.com> <20151206155003.GA11852@krava.brq.redhat.com> <20151206200242.GM11394@treble.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20151206200242.GM11394@treble.redhat.com> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Dec 06, 2015 at 02:02:42PM -0600, Josh Poimboeuf wrote: > On Sun, Dec 06, 2015 at 04:50:06PM +0100, Jiri Olsa wrote: > > On Sun, Dec 06, 2015 at 10:37:52AM +0100, Ingo Molnar wrote: > > > > > > * Josh Poimboeuf wrote: > > > > > > > Ingo suggested that I factor out the perf subcommand functionality > > > > (originally copied from git) into tools/lib so that it can be used by > > > > stacktool[*] and possibly others. > > > > > > > > All the subcommand option handling files have been moved into libapi, > > > > including parse-options.c, run-command.c, exec_cmd.c, help.c, usage.c, > > > > and their dependencies. Since several of the dependencies are more > > > > general-purpose "utilities" which aren't directly related to > > > > subcommands, I put everything in 'tools/lib/api/util'. They're linked > > > > into perf as part of the libapi.a library. > > > > > > > > Patches 1-10 do some cleanups and splitting up of the code in > > > > preparation for the move. > > > > > > > > Patch 11 does the actual moving of the files into tools/lib/api/util. > > > > > > > > [*] https://lkml.kernel.org/r/cover.1445443144.git.jpoimboe@redhat.com > > > > > > > > Josh Poimboeuf (13): > > > > perf: Use -iquote for local include paths > > > > perf: Split up util.h > > > > perf: Move term functions out of util.c > > > > perf: Remove unused pager_use_color variable > > > > perf: Split up cache.h > > > > perf: Remove cache.h > > > > perf: Save cmdline arguments earlier > > > > perf: Remove check for unused PERF_PAGER_IN_USE > > > > perf: Move cmd_version() to builtin-version.c > > > > perf: Move help_unknown_cmd() to its own file > > > > perf tools: Move strlcpy() to tools/lib/string.c > > > > perf tools: Move perf subcommand framework into a library > > > > perf tools: Move subcommand framework and related utils to libapi > > > > > > > 133 files changed, 852 insertions(+), 761 deletions(-) > > > > > > So this split-out looks great to me! > > > > > > A bit of a background: this series is a necessary precondition of me being able to > > > merge 'stacktool' and the frame pointer handling enhancements Josh is working on - > > > but it would be nice if this could all be done via Arnaldo's perf tree to minimize > > > any impact on pending perf work. > > > > > > I've Cc:-ed Namhyung and Jiri as well, who've done a lot of work in perf/util/. > > > > > > > heya, > > got compilation error over this patchset: > > > > [jolsa@krava perf]$ make clean && make JOBS=1 > > > > ... > > > > CC tests/llvm-src-base.o > > tests/llvm-src-base.c:1:24: fatal error: tests/llvm.h: No such file or directory > > compilation terminated. > > mv: cannot stat ‘tests/.llvm-src-base.o.tmp’: No such file or directory > > /home/jolsa/kernel/linux-perf/tools/build/Makefile.build:77: recipe for target 'tests/llvm-src-base.o' failed > > make[3]: *** [tests/llvm-src-base.o] Error 1 > > /home/jolsa/kernel/linux-perf/tools/build/Makefile.build:116: recipe for target 'tests' failed > > make[2]: *** [tests] Error 2 > > Makefile.perf:313: recipe for target 'perf-in.o' failed > > make[1]: *** [perf-in.o] Error 2 > > Makefile:68: recipe for target 'all' failed > > make: *** [all] Error 2 > > I think the problem is that you have a stale version of the > auto-generated file llvm-src-base.c. Looks like "make clean" doesn't > remove it. I'll add a patch to fix it. FYI I switched back to Arnaldo's perf/core and did 'make clean && make' which passed, then switched back to your change and build failed again jirka