From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755225AbbAFNld (ORCPT ); Tue, 6 Jan 2015 08:41:33 -0500 Received: from mx1.redhat.com ([209.132.183.28]:54332 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751492AbbAFNlc (ORCPT ); Tue, 6 Jan 2015 08:41:32 -0500 Date: Tue, 6 Jan 2015 11:41:08 -0200 From: Arnaldo Carvalho de Melo To: Jiri Olsa Cc: Borislav Petkov , Jiri Olsa , linux-kernel@vger.kernel.org, Alexis Berlemont , Corey Ashford , David Ahern , Frederic Weisbecker , Ingo Molnar , Namhyung Kim , Paul Mackerras , Peter Zijlstra , Stephane Eranian Subject: Re: [PATCH 01/30] perf tools: Add new build framework support Message-ID: <20150106134108.GB2517@redhat.com> References: <1420212972-21595-1-git-send-email-jolsa@kernel.org> <1420212972-21595-2-git-send-email-jolsa@kernel.org> <20150105105751.GB19655@pd.tnic> <20150105111335.GB21260@krava.brq.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150105111335.GB21260@krava.brq.redhat.com> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.5.20 (2009-12-10) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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