All of lore.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 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.