Re: [PATCH 01/30] perf tools: Add new build framework support

Jiri Olsa
2015-01-05T11:14:23Z

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 ;-)

jirka