public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@redhat.com>
To: Jiri Olsa <jolsa@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>, Jiri Olsa <jolsa@kernel.org>,
	linux-kernel@vger.kernel.org,
	Alexis Berlemont <alexis.berlemont@gmail.com>,
	Corey Ashford <cjashfor@linux.vnet.ibm.com>,
	David Ahern <dsahern@gmail.com>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Ingo Molnar <mingo@kernel.org>,
	Namhyung Kim <namhyung@kernel.org>,
	Paul Mackerras <paulus@samba.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Stephane Eranian <eranian@google.com>
Subject: Re: [PATCH 01/30] perf tools: Add new build framework support
Date: Tue, 6 Jan 2015 11:41:08 -0200	[thread overview]
Message-ID: <20150106134108.GB2517@redhat.com> (raw)
In-Reply-To: <20150105111335.GB21260@krava.brq.redhat.com>

Em Mon, Jan 05, 2015 at 12:13:35PM +0100, Jiri Olsa escreveu:
> On Mon, Jan 05, 2015 at 11:57:51AM +0100, Borislav Petkov wrote:
> > On Fri, Jan 02, 2015 at 04:35:43PM +0100, Jiri Olsa wrote:
> > > +a) Build makefiles
> > > +------------------
> > > +User supplies 'Build' makefiles that contains objects summary,
> > > +like for example following 'krava/Build' file:
> > > +
> > > +  perf-y += a.o
> > > +  perf-y += b.o
> > > +
> > > +The build framework is triggered by:
> > > +  $ make -f Makefile.build dir=krava obj=perf
> > > +
> > > +which produces 'krava/perf-in.o' object file that has both
> > > +a.o and b.o objects compiled in linked together.
> > > +
> > > +The 'Build' makefile can contains multiple objects definitions
> > > +to allow building separated binaries, like:
> > > +
> > > +  perf-y += a.o
> > > +  perf-y += b.o
> > > +
> > > +  libperf-y += c.o
> > > +  libperf-y += d.o
> > > +
> > > +If the build framework is triggered by:
> > > +  $ make -f Makefile.build dir=krava obj=libperf
> > > +
> > > +it produces 'krava/libperf-in.o' object file that has both
> > > +a.o and b.o objects compiled in linked together.
> > 
> > Ok, question: you say those "Build" files are supplied by the user. Does
> > that mean that everyone has to go and write their own or are we still
> > using Kconfig and doing it in a more user-friendly manner?
> 
> there's no Kconfig involved in perf build at this moment..
> 
> the 'Build' Makefiles are equivalents of Kbuild/Makefile makefiles
> within the kernel build system.. I just move the 'K' out
> 
> > 
> > I've probably missed this in the whole perf fastlane development... :)
> 
> the reason for this switch is to have a first step towards
> easy config support 'kernel Kconfig style like' in build
> 
> also with this change it's easier to see how the perf binary
> is build and what flags were used for particular object..
> at least for kernel developer used to kbuild ;-)
> 
> I also believe that the support to allow just part of the perf
> code in perf binary will force the less spaghetti code ;-)

Right, making it possible for us to build a minimalistic perf will have
manifold good implications :-)

But perhaps we could continue calling it the same way as in the kernel?
I.e. we would then be using the "Kbuild" build configuration mechanism,
the K would be there just for historic reasons.

- Arnaldo

  reply	other threads:[~2015-01-06 13:41 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-02 15:35 [RFC/PATCHSET 00/30] perf tools: New build framework Jiri Olsa
2015-01-02 15:35 ` [PATCH 01/30] perf tools: Add new build framework support Jiri Olsa
2015-01-05 10:57   ` Borislav Petkov
2015-01-05 11:13     ` Jiri Olsa
2015-01-06 13:41       ` Arnaldo Carvalho de Melo [this message]
2015-01-06 14:06         ` Jiri Olsa
2015-01-08  6:18   ` Namhyung Kim
2015-01-08 14:45     ` Jiri Olsa
2015-01-02 15:35 ` [PATCH 02/30] perf build: Add detected config " Jiri Olsa
2015-01-02 15:35 ` [PATCH 03/30] perf build: Add subdir " Jiri Olsa
2015-01-02 15:35 ` [PATCH 04/30] perf build: Add bench objects building Jiri Olsa
2015-01-02 15:35 ` [PATCH 05/30] perf build: Add tests " Jiri Olsa
2015-01-02 15:35 ` [PATCH 06/30] perf build: Add builtin " Jiri Olsa
2015-01-02 15:35 ` [PATCH 07/30] perf build: Add libperf " Jiri Olsa
2015-01-08  6:15   ` Namhyung Kim
2015-01-08 14:45     ` Jiri Olsa
2015-01-02 15:35 ` [PATCH 08/30] perf build: Add probe " Jiri Olsa
2015-01-02 15:35 ` [PATCH 09/30] perf build: Add dwarf " Jiri Olsa
2015-01-02 15:35 ` [PATCH 10/30] perf build: Add dwarf unwind " Jiri Olsa
2015-01-02 15:35 ` [PATCH 11/30] perf build: Add ui " Jiri Olsa
2015-01-02 15:35 ` [PATCH 12/30] perf build: Add slang " Jiri Olsa
2015-01-02 15:35 ` [PATCH 13/30] perf build: Add gtk " Jiri Olsa
2015-01-02 15:35 ` [PATCH 14/30] perf build: Add scripts " Jiri Olsa
2015-01-02 15:35 ` [PATCH 15/30] perf build: Add perf regs " Jiri Olsa
2015-01-02 15:35 ` [PATCH 16/30] perf build: Add zlib " Jiri Olsa
2015-01-02 15:35 ` [PATCH 17/30] perf build: Add perf.o object building Jiri Olsa
2015-01-02 15:36 ` [PATCH 18/30] perf build: Add arch x86 objects building Jiri Olsa
2015-01-02 15:36 ` [PATCH 19/30] perf build: Add arch arm " Jiri Olsa
2015-01-02 15:36 ` [PATCH 20/30] perf build: Add arch arm64 " Jiri Olsa
2015-01-02 15:36 ` [PATCH 21/30] perf build: Add arch powerpc " Jiri Olsa
2015-01-02 15:36 ` [PATCH 22/30] perf build: Add arch s390 " Jiri Olsa
2015-01-02 15:36 ` [PATCH 23/30] perf build: Add arch sh " Jiri Olsa
2015-01-02 15:36 ` [PATCH 24/30] perf build: Add arch sparc " Jiri Olsa
2015-01-02 15:36 ` [PATCH 25/30] perf build: Add single target build framework support Jiri Olsa
2015-01-02 15:36 ` [PATCH 26/30] perf make: Remove directory dependency rules Jiri Olsa
2015-01-02 15:36 ` [PATCH 27/30] perf make: Remove uneeded variables Jiri Olsa
2015-01-02 15:36 ` [PATCH 28/30] perf make: Remove PERF-CFLAGS file Jiri Olsa
2015-01-02 15:36 ` [PATCH 29/30] perf tools: Add support to configure builtin commands inclusion Jiri Olsa
2015-01-08  7:15   ` Namhyung Kim
2015-01-08 14:44     ` Jiri Olsa
2015-01-02 15:36 ` [PATCH 30/30] perf tools: Disable test code Jiri Olsa
2015-01-02 16:29   ` David Ahern
2015-01-02 17:36 ` [RFC/PATCHSET 00/30] perf tools: New build framework Ingo Molnar
2015-01-04 15:49   ` Jiri Olsa

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=20150106134108.GB2517@redhat.com \
    --to=acme@redhat.com \
    --cc=alexis.berlemont@gmail.com \
    --cc=bp@alien8.de \
    --cc=cjashfor@linux.vnet.ibm.com \
    --cc=dsahern@gmail.com \
    --cc=eranian@google.com \
    --cc=fweisbec@gmail.com \
    --cc=jolsa@kernel.org \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=namhyung@kernel.org \
    --cc=paulus@samba.org \
    --cc=peterz@infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox