Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-26 Thread Jiri Olsa
On Wed, Jan 21, 2015 at 05:25:45PM +, Will Deacon wrote:
> On Tue, Jan 20, 2015 at 04:38:57PM +, Jiri Olsa wrote:
> > hi,
> > I'm following up on latest post from Alexis:
> >   http://marc.info/?l=linux-kernel=141427580405357=2
> > 
> > v3 changes:
> >   - disabling only builtin rules, keeping builtin variables in place
> > because some projects we depends on using them (traceevent) [David]
> >   - fixed empy source list issue that happened on arm [Will, Mark]
> >   - updated to the current Arnaldo's perf/core branch
> >   - added automated tests into: tools/build/tests/
> >   - tested on arm64,ppc64,s390,x86_64,i386
> > 
> > v2 changes:
> >   - build Makefiles librarized and moved to 'tools/build' [Ingo]
> >   - several minor fixies [Namhyung]
> >   - tested on other archs now - x86_64, i386, powerpc
> >   - moved tools/lib/* under new build framework to show
> > that it's possible ;-)
> > included traceevent/lockdep maintainers to get the feedback
> >   - omitted last 2 patches
> > 
> > The patchset is also available in:
> >   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
> >   perf/build
> > 
> > All tests/make tests passed.
> > 
> > Any feedback from ARM guys would be great ;-)
> 
> Works fine native on arm64:
> 
>   Tested-by: Will Deacon 
> 
> Cheers,
> 
> Will

thanks!

jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-26 Thread Jiri Olsa
On Wed, Jan 21, 2015 at 03:30:44PM -0800, Sukadev Bhattiprolu wrote:
> Jiri Olsa [jo...@kernel.org] wrote:
> | 
> | The patchset is also available in:
> |   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
> |   perf/build
> | 
> | All tests/make tests passed.
> | 
> 
> The build and make tests passed on my Power8 system.
> 
> Tested-by: Sukadev Bhattiprolu 
> 

thanks!

jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-26 Thread Jiri Olsa
On Wed, Jan 21, 2015 at 05:25:45PM +, Will Deacon wrote:
 On Tue, Jan 20, 2015 at 04:38:57PM +, Jiri Olsa wrote:
  hi,
  I'm following up on latest post from Alexis:
http://marc.info/?l=linux-kernelm=141427580405357w=2
  
  v3 changes:
- disabling only builtin rules, keeping builtin variables in place
  because some projects we depends on using them (traceevent) [David]
- fixed empy source list issue that happened on arm [Will, Mark]
- updated to the current Arnaldo's perf/core branch
- added automated tests into: tools/build/tests/
- tested on arm64,ppc64,s390,x86_64,i386
  
  v2 changes:
- build Makefiles librarized and moved to 'tools/build' [Ingo]
- several minor fixies [Namhyung]
- tested on other archs now - x86_64, i386, powerpc
- moved tools/lib/* under new build framework to show
  that it's possible ;-)
  included traceevent/lockdep maintainers to get the feedback
- omitted last 2 patches
  
  The patchset is also available in:
git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
perf/build
  
  All tests/make tests passed.
  
  Any feedback from ARM guys would be great ;-)
 
 Works fine native on arm64:
 
   Tested-by: Will Deacon will.dea...@arm.com
 
 Cheers,
 
 Will

thanks!

jirka
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-26 Thread Jiri Olsa
On Wed, Jan 21, 2015 at 03:30:44PM -0800, Sukadev Bhattiprolu wrote:
 Jiri Olsa [jo...@kernel.org] wrote:
 | 
 | The patchset is also available in:
 |   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
 |   perf/build
 | 
 | All tests/make tests passed.
 | 
 
 The build and make tests passed on my Power8 system.
 
 Tested-by: Sukadev Bhattiprolu suka...@linux.vnet.ibm.com
 

thanks!

jirka
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-21 Thread Sukadev Bhattiprolu
Jiri Olsa [jo...@kernel.org] wrote:
| 
| The patchset is also available in:
|   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
|   perf/build
| 
| All tests/make tests passed.
| 

The build and make tests passed on my Power8 system.

Tested-by: Sukadev Bhattiprolu 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-21 Thread Will Deacon
On Tue, Jan 20, 2015 at 04:38:57PM +, Jiri Olsa wrote:
> hi,
> I'm following up on latest post from Alexis:
>   http://marc.info/?l=linux-kernel=141427580405357=2
> 
> v3 changes:
>   - disabling only builtin rules, keeping builtin variables in place
> because some projects we depends on using them (traceevent) [David]
>   - fixed empy source list issue that happened on arm [Will, Mark]
>   - updated to the current Arnaldo's perf/core branch
>   - added automated tests into: tools/build/tests/
>   - tested on arm64,ppc64,s390,x86_64,i386
> 
> v2 changes:
>   - build Makefiles librarized and moved to 'tools/build' [Ingo]
>   - several minor fixies [Namhyung]
>   - tested on other archs now - x86_64, i386, powerpc
>   - moved tools/lib/* under new build framework to show
> that it's possible ;-)
> included traceevent/lockdep maintainers to get the feedback
>   - omitted last 2 patches
> 
> The patchset is also available in:
>   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
>   perf/build
> 
> All tests/make tests passed.
> 
> Any feedback from ARM guys would be great ;-)

Works fine native on arm64:

  Tested-by: Will Deacon 

Cheers,

Will
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-21 Thread Jiri Olsa
On Wed, Jan 21, 2015 at 07:14:40AM +0100, Ingo Molnar wrote:
> 
> * David Ahern  wrote:
> 
> > On 1/20/15 9:38 AM, Jiri Olsa wrote:
> > >The patchset is also available in:
> > >   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
> > >   perf/build
> > 
> > Do I have to guess which branch?
> > 
> > $ git branch -a | grep jirka | grep build
> >   remotes/jirka/perf/build
> >   remotes/jirka/perf/build_1
> >   remotes/jirka/perf/build_3
> >   remotes/jirka/perf/build_4
> >   remotes/jirka/perf/build_6
> >   remotes/jirka/perf/buildid_3
> >   remotes/jirka/perf/buildid_4
> >   remotes/jirka/perf/core_buildid_cache_clean
> >   remotes/jirka/perf/kbuild1
> >   remotes/jirka/perf/kbuild2
> >   remotes/jirka/perf/kbuild3
> >   remotes/jirka/perf/kbuild4
> >   remotes/jirka/perf/kbuild7
> >   remotes/jirka/perf/kbuild9
> 
> I used 'perf/build' as announced, and it gave the same diffstat 
> as the announcement. I guess the rest are WIP branches?

yep, it's the 'perf/build'

I have pushed many devel branches due to testing on all
those architectures.. I'll cleanup to avoid confusions ;-)

jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-21 Thread Jiri Olsa
On Wed, Jan 21, 2015 at 07:13:04AM +0100, Ingo Molnar wrote:
> 
> * Jiri Olsa  wrote:
> 
> > hi,
> > I'm following up on latest post from Alexis:
> >   http://marc.info/?l=linux-kernel=141427580405357=2
> > 
> > v3 changes:
> >   - disabling only builtin rules, keeping builtin variables in place
> > because some projects we depends on using them (traceevent) [David]
> >   - fixed empy source list issue that happened on arm [Will, Mark]
> >   - updated to the current Arnaldo's perf/core branch
> >   - added automated tests into: tools/build/tests/
> >   - tested on arm64,ppc64,s390,x86_64,i386
> > 
> > v2 changes:
> >   - build Makefiles librarized and moved to 'tools/build' [Ingo]
> >   - several minor fixies [Namhyung]
> >   - tested on other archs now - x86_64, i386, powerpc
> >   - moved tools/lib/* under new build framework to show
> > that it's possible ;-)
> > included traceevent/lockdep maintainers to get the feedback
> >   - omitted last 2 patches
> > 
> > The patchset is also available in:
> >   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
> >   perf/build
> > 
> > All tests/make tests passed.
> 
> Very nice! I gave it a quick test and saw no problems, behavior, 
> speed and functionality of the build appears to be identical to 
> the old system.
> 
> > Also now we have the full dependency check ((gcc -Wp,-MD,... 
> > stuff) and build command line is stored/checked automatically 
> > by the build system.
> 
> Btw., another thing that might be nice to extract into 
> tools/build/ [or tools/config/] is the build/OS features 
> detection framework - it goes hand in hand with the build
> system.

right, it's on my TODO list ;-)

jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-21 Thread Will Deacon
On Tue, Jan 20, 2015 at 04:38:57PM +, Jiri Olsa wrote:
 hi,
 I'm following up on latest post from Alexis:
   http://marc.info/?l=linux-kernelm=141427580405357w=2
 
 v3 changes:
   - disabling only builtin rules, keeping builtin variables in place
 because some projects we depends on using them (traceevent) [David]
   - fixed empy source list issue that happened on arm [Will, Mark]
   - updated to the current Arnaldo's perf/core branch
   - added automated tests into: tools/build/tests/
   - tested on arm64,ppc64,s390,x86_64,i386
 
 v2 changes:
   - build Makefiles librarized and moved to 'tools/build' [Ingo]
   - several minor fixies [Namhyung]
   - tested on other archs now - x86_64, i386, powerpc
   - moved tools/lib/* under new build framework to show
 that it's possible ;-)
 included traceevent/lockdep maintainers to get the feedback
   - omitted last 2 patches
 
 The patchset is also available in:
   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
   perf/build
 
 All tests/make tests passed.
 
 Any feedback from ARM guys would be great ;-)

Works fine native on arm64:

  Tested-by: Will Deacon will.dea...@arm.com

Cheers,

Will
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-21 Thread Sukadev Bhattiprolu
Jiri Olsa [jo...@kernel.org] wrote:
| 
| The patchset is also available in:
|   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
|   perf/build
| 
| All tests/make tests passed.
| 

The build and make tests passed on my Power8 system.

Tested-by: Sukadev Bhattiprolu suka...@linux.vnet.ibm.com

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-21 Thread Jiri Olsa
On Wed, Jan 21, 2015 at 07:13:04AM +0100, Ingo Molnar wrote:
 
 * Jiri Olsa jo...@kernel.org wrote:
 
  hi,
  I'm following up on latest post from Alexis:
http://marc.info/?l=linux-kernelm=141427580405357w=2
  
  v3 changes:
- disabling only builtin rules, keeping builtin variables in place
  because some projects we depends on using them (traceevent) [David]
- fixed empy source list issue that happened on arm [Will, Mark]
- updated to the current Arnaldo's perf/core branch
- added automated tests into: tools/build/tests/
- tested on arm64,ppc64,s390,x86_64,i386
  
  v2 changes:
- build Makefiles librarized and moved to 'tools/build' [Ingo]
- several minor fixies [Namhyung]
- tested on other archs now - x86_64, i386, powerpc
- moved tools/lib/* under new build framework to show
  that it's possible ;-)
  included traceevent/lockdep maintainers to get the feedback
- omitted last 2 patches
  
  The patchset is also available in:
git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
perf/build
  
  All tests/make tests passed.
 
 Very nice! I gave it a quick test and saw no problems, behavior, 
 speed and functionality of the build appears to be identical to 
 the old system.
 
  Also now we have the full dependency check ((gcc -Wp,-MD,... 
  stuff) and build command line is stored/checked automatically 
  by the build system.
 
 Btw., another thing that might be nice to extract into 
 tools/build/ [or tools/config/] is the build/OS features 
 detection framework - it goes hand in hand with the build
 system.

right, it's on my TODO list ;-)

jirka
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-21 Thread Jiri Olsa
On Wed, Jan 21, 2015 at 07:14:40AM +0100, Ingo Molnar wrote:
 
 * David Ahern dsah...@gmail.com wrote:
 
  On 1/20/15 9:38 AM, Jiri Olsa wrote:
  The patchset is also available in:
 git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
 perf/build
  
  Do I have to guess which branch?
  
  $ git branch -a | grep jirka | grep build
remotes/jirka/perf/build
remotes/jirka/perf/build_1
remotes/jirka/perf/build_3
remotes/jirka/perf/build_4
remotes/jirka/perf/build_6
remotes/jirka/perf/buildid_3
remotes/jirka/perf/buildid_4
remotes/jirka/perf/core_buildid_cache_clean
remotes/jirka/perf/kbuild1
remotes/jirka/perf/kbuild2
remotes/jirka/perf/kbuild3
remotes/jirka/perf/kbuild4
remotes/jirka/perf/kbuild7
remotes/jirka/perf/kbuild9
 
 I used 'perf/build' as announced, and it gave the same diffstat 
 as the announcement. I guess the rest are WIP branches?

yep, it's the 'perf/build'

I have pushed many devel branches due to testing on all
those architectures.. I'll cleanup to avoid confusions ;-)

jirka
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-20 Thread Ingo Molnar

* David Ahern  wrote:

> On 1/20/15 9:38 AM, Jiri Olsa wrote:
> >The patchset is also available in:
> >   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
> >   perf/build
> 
> Do I have to guess which branch?
> 
> $ git branch -a | grep jirka | grep build
>   remotes/jirka/perf/build
>   remotes/jirka/perf/build_1
>   remotes/jirka/perf/build_3
>   remotes/jirka/perf/build_4
>   remotes/jirka/perf/build_6
>   remotes/jirka/perf/buildid_3
>   remotes/jirka/perf/buildid_4
>   remotes/jirka/perf/core_buildid_cache_clean
>   remotes/jirka/perf/kbuild1
>   remotes/jirka/perf/kbuild2
>   remotes/jirka/perf/kbuild3
>   remotes/jirka/perf/kbuild4
>   remotes/jirka/perf/kbuild7
>   remotes/jirka/perf/kbuild9

I used 'perf/build' as announced, and it gave the same diffstat 
as the announcement. I guess the rest are WIP branches?

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-20 Thread Ingo Molnar

* Jiri Olsa  wrote:

> hi,
> I'm following up on latest post from Alexis:
>   http://marc.info/?l=linux-kernel=141427580405357=2
> 
> v3 changes:
>   - disabling only builtin rules, keeping builtin variables in place
> because some projects we depends on using them (traceevent) [David]
>   - fixed empy source list issue that happened on arm [Will, Mark]
>   - updated to the current Arnaldo's perf/core branch
>   - added automated tests into: tools/build/tests/
>   - tested on arm64,ppc64,s390,x86_64,i386
> 
> v2 changes:
>   - build Makefiles librarized and moved to 'tools/build' [Ingo]
>   - several minor fixies [Namhyung]
>   - tested on other archs now - x86_64, i386, powerpc
>   - moved tools/lib/* under new build framework to show
> that it's possible ;-)
> included traceevent/lockdep maintainers to get the feedback
>   - omitted last 2 patches
> 
> The patchset is also available in:
>   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
>   perf/build
> 
> All tests/make tests passed.

Very nice! I gave it a quick test and saw no problems, behavior, 
speed and functionality of the build appears to be identical to 
the old system.

> Also now we have the full dependency check ((gcc -Wp,-MD,... 
> stuff) and build command line is stored/checked automatically 
> by the build system.

Btw., another thing that might be nice to extract into 
tools/build/ [or tools/config/] is the build/OS features 
detection framework - it goes hand in hand with the build
system.

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-20 Thread David Ahern

On 1/20/15 9:38 AM, Jiri Olsa wrote:

The patchset is also available in:
   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
   perf/build


Do I have to guess which branch?

$ git branch -a | grep jirka | grep build
  remotes/jirka/perf/build
  remotes/jirka/perf/build_1
  remotes/jirka/perf/build_3
  remotes/jirka/perf/build_4
  remotes/jirka/perf/build_6
  remotes/jirka/perf/buildid_3
  remotes/jirka/perf/buildid_4
  remotes/jirka/perf/core_buildid_cache_clean
  remotes/jirka/perf/kbuild1
  remotes/jirka/perf/kbuild2
  remotes/jirka/perf/kbuild3
  remotes/jirka/perf/kbuild4
  remotes/jirka/perf/kbuild7
  remotes/jirka/perf/kbuild9

David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCHv3 00/36] perf tools: New build framework

2015-01-20 Thread Jiri Olsa
hi,
I'm following up on latest post from Alexis:
  http://marc.info/?l=linux-kernel=141427580405357=2

v3 changes:
  - disabling only builtin rules, keeping builtin variables in place
because some projects we depends on using them (traceevent) [David]
  - fixed empy source list issue that happened on arm [Will, Mark]
  - updated to the current Arnaldo's perf/core branch
  - added automated tests into: tools/build/tests/
  - tested on arm64,ppc64,s390,x86_64,i386

v2 changes:
  - build Makefiles librarized and moved to 'tools/build' [Ingo]
  - several minor fixies [Namhyung]
  - tested on other archs now - x86_64, i386, powerpc
  - moved tools/lib/* under new build framework to show
that it's possible ;-)
included traceevent/lockdep maintainers to get the feedback
  - omitted last 2 patches

The patchset is also available in:
  git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
  perf/build

All tests/make tests passed.

Any feedback from ARM guys would be great ;-)


Since it's actually small portion of kbuild that perf needs,
I realized it's actually better to steal it than 'reconfigure'
kbuild to be usable for perf.

Also this patchset is kind of incremental version of the latest:
  perf tools: Add kbuild support into Makefile.kbuild
so it should be easier to review.

NOTE I couldn't find any copyright/credit messages in the kbuild
system, but would be happy to include it if someone suggests one.

The stolen parts are in files:
  Makefile.kbuild
  Build.include

The idea and more details are explained in the 'Documentation/Build'
file. The basic idea is the same as in kbuild system, with some minor
changes to allow for multiple binaries build definitions.

User provides 'Build' files with objects definitions like:
  perf-y += perf.o
  perf-y += builtin-bench.o
  ...

  libperf-y += util/
  ...

and the build framework outputs files:
  perf-in.o
  libperf-in.o

which are then linked into appropriate binaries/libraries.
(perf libperf.a libperf-gtk.so)

Also now we have the full dependency check ((gcc -Wp,-MD,... stuff) and
build command line is stored/checked automatically by the build system.

thanks for comments,
jirka


Signed-off-by: Jiri Olsa 
Cc: Adrian Hunter 
Cc: Alexis Berlemont 
Cc: Andi Kleen 
Cc: Anton Blanchard 
Cc: Arnaldo Carvalho de Melo 
Cc: Borislav Petkov 
Cc: Borislav Petkov 
Cc: Cody P Schafer 
Cc: Corey Ashford 
Cc: David Ahern 
Cc: Florian Fainelli 
Cc: Frederic Weisbecker 
Cc: Ingo Molnar 
Cc: Jan Heylen 
Cc: Mark Salter 
Cc: Namhyung Kim 
Cc: Paul Mackerras 
Cc: Peter Zijlstra 
Cc: S. Lockwood-Childs 
Cc: Sam Ravnborg 
Cc: Sasha Levin 
Cc: Stephane Eranian 
Cc: Steven Rostedt 
Cc: Sukadev Bhattiprolu 
Cc: Will Deacon 
---
Jiri Olsa (36):
  tools build: Add new build support
  tools build: Add detected config support
  tools build: Add subdir support
  perf tools: Remove api fs object from python build
  perf build: Disable make's built-in rules
  perf build: Add bench objects building
  perf build: Add tests objects building
  perf build: Add builtin objects building
  perf build: Add libperf objects building
  perf build: Add probe objects building
  perf build: Add dwarf objects building
  perf build: Add dwarf unwind objects building
  perf build: Add ui objects building
  perf build: Add slang objects building
  perf build: Add gtk objects building
  perf build: Add scripts objects building
  perf build: Add perf regs objects building
  perf build: Add zlib objects building
  perf build: Add perf.o object building
  perf build: Add arch x86 objects building
  perf build: Add arch arm objects building
  perf build: Add arch arm64 objects building
  perf build: Add arch powerpc objects building
  perf build: Add arch s390 objects building
  perf build: Add arch sh objects building
  perf build: Add arch sparc objects building
  perf build: Add single target build framework support
  perf build: Remove directory dependency rules
  perf build: Remove uneeded variables
  perf build: Remove PERF-CFLAGS file
  perf build: Add build documentation
  tools lib api: Use tools build framework
  tools lib api: Rename libapikfs.a to libapi.a
  tools lib traceevent: Use tools build framework
  tools lib lockdep: Use tools build framework
  perf build: Display make commands on V=1

 tools/build/Build.include   |  74 +++
 tools/build/Documentation/Build.txt | 132 ++
 tools/build/Makefile.build  | 125 +
 tools/build/tests/ex/Build  |   8 +
 tools/build/tests/ex/Makefile   |  23 +
 tools/build/tests/ex/a.c|   5 +
 tools/build/tests/ex/arch/Build |   2 +
 tools/build/tests/ex/arch/e.c   |   5 +
 tools/build/tests/ex/arch/f.c   |   5 +
 tools/build/tests/ex/b.c  

[PATCHv3 00/36] perf tools: New build framework

2015-01-20 Thread Jiri Olsa
hi,
I'm following up on latest post from Alexis:
  http://marc.info/?l=linux-kernelm=141427580405357w=2

v3 changes:
  - disabling only builtin rules, keeping builtin variables in place
because some projects we depends on using them (traceevent) [David]
  - fixed empy source list issue that happened on arm [Will, Mark]
  - updated to the current Arnaldo's perf/core branch
  - added automated tests into: tools/build/tests/
  - tested on arm64,ppc64,s390,x86_64,i386

v2 changes:
  - build Makefiles librarized and moved to 'tools/build' [Ingo]
  - several minor fixies [Namhyung]
  - tested on other archs now - x86_64, i386, powerpc
  - moved tools/lib/* under new build framework to show
that it's possible ;-)
included traceevent/lockdep maintainers to get the feedback
  - omitted last 2 patches

The patchset is also available in:
  git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
  perf/build

All tests/make tests passed.

Any feedback from ARM guys would be great ;-)


Since it's actually small portion of kbuild that perf needs,
I realized it's actually better to steal it than 'reconfigure'
kbuild to be usable for perf.

Also this patchset is kind of incremental version of the latest:
  perf tools: Add kbuild support into Makefile.kbuild
so it should be easier to review.

NOTE I couldn't find any copyright/credit messages in the kbuild
system, but would be happy to include it if someone suggests one.

The stolen parts are in files:
  Makefile.kbuild
  Build.include

The idea and more details are explained in the 'Documentation/Build'
file. The basic idea is the same as in kbuild system, with some minor
changes to allow for multiple binaries build definitions.

User provides 'Build' files with objects definitions like:
  perf-y += perf.o
  perf-y += builtin-bench.o
  ...

  libperf-y += util/
  ...

and the build framework outputs files:
  perf-in.o
  libperf-in.o

which are then linked into appropriate binaries/libraries.
(perf libperf.a libperf-gtk.so)

Also now we have the full dependency check ((gcc -Wp,-MD,... stuff) and
build command line is stored/checked automatically by the build system.

thanks for comments,
jirka


Signed-off-by: Jiri Olsa jo...@kernel.org
Cc: Adrian Hunter adrian.hun...@intel.com
Cc: Alexis Berlemont alexis.berlem...@gmail.com
Cc: Andi Kleen a...@linux.intel.com
Cc: Anton Blanchard an...@samba.org
Cc: Arnaldo Carvalho de Melo a...@redhat.com
Cc: Borislav Petkov b...@alien8.de
Cc: Borislav Petkov b...@suse.de
Cc: Cody P Schafer c...@linux.vnet.ibm.com
Cc: Corey Ashford cjash...@linux.vnet.ibm.com
Cc: David Ahern dsah...@gmail.com
Cc: Florian Fainelli flor...@openwrt.org
Cc: Frederic Weisbecker fweis...@gmail.com
Cc: Ingo Molnar mi...@kernel.org
Cc: Jan Heylen heyl...@gmail.com
Cc: Mark Salter msal...@redhat.com
Cc: Namhyung Kim namhy...@kernel.org
Cc: Paul Mackerras pau...@samba.org
Cc: Peter Zijlstra pet...@infradead.org
Cc: S. Lockwood-Childs s...@vctlabs.com
Cc: Sam Ravnborg s...@ravnborg.org
Cc: Sasha Levin sasha.le...@oracle.com
Cc: Stephane Eranian eran...@google.com
Cc: Steven Rostedt rost...@goodmis.org
Cc: Sukadev Bhattiprolu suka...@linux.vnet.ibm.com
Cc: Will Deacon will.dea...@arm.com
---
Jiri Olsa (36):
  tools build: Add new build support
  tools build: Add detected config support
  tools build: Add subdir support
  perf tools: Remove api fs object from python build
  perf build: Disable make's built-in rules
  perf build: Add bench objects building
  perf build: Add tests objects building
  perf build: Add builtin objects building
  perf build: Add libperf objects building
  perf build: Add probe objects building
  perf build: Add dwarf objects building
  perf build: Add dwarf unwind objects building
  perf build: Add ui objects building
  perf build: Add slang objects building
  perf build: Add gtk objects building
  perf build: Add scripts objects building
  perf build: Add perf regs objects building
  perf build: Add zlib objects building
  perf build: Add perf.o object building
  perf build: Add arch x86 objects building
  perf build: Add arch arm objects building
  perf build: Add arch arm64 objects building
  perf build: Add arch powerpc objects building
  perf build: Add arch s390 objects building
  perf build: Add arch sh objects building
  perf build: Add arch sparc objects building
  perf build: Add single target build framework support
  perf build: Remove directory dependency rules
  perf build: Remove uneeded variables
  perf build: Remove PERF-CFLAGS file
  perf build: Add build documentation
  tools lib api: Use tools build framework
  tools lib api: Rename libapikfs.a to libapi.a
  tools lib traceevent: Use tools build framework
  tools lib lockdep: Use tools build framework
  perf build: Display make commands on V=1

 tools/build/Build.include   |  74 +++
 

Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-20 Thread David Ahern

On 1/20/15 9:38 AM, Jiri Olsa wrote:

The patchset is also available in:
   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
   perf/build


Do I have to guess which branch?

$ git branch -a | grep jirka | grep build
  remotes/jirka/perf/build
  remotes/jirka/perf/build_1
  remotes/jirka/perf/build_3
  remotes/jirka/perf/build_4
  remotes/jirka/perf/build_6
  remotes/jirka/perf/buildid_3
  remotes/jirka/perf/buildid_4
  remotes/jirka/perf/core_buildid_cache_clean
  remotes/jirka/perf/kbuild1
  remotes/jirka/perf/kbuild2
  remotes/jirka/perf/kbuild3
  remotes/jirka/perf/kbuild4
  remotes/jirka/perf/kbuild7
  remotes/jirka/perf/kbuild9

David
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-20 Thread Ingo Molnar

* Jiri Olsa jo...@kernel.org wrote:

 hi,
 I'm following up on latest post from Alexis:
   http://marc.info/?l=linux-kernelm=141427580405357w=2
 
 v3 changes:
   - disabling only builtin rules, keeping builtin variables in place
 because some projects we depends on using them (traceevent) [David]
   - fixed empy source list issue that happened on arm [Will, Mark]
   - updated to the current Arnaldo's perf/core branch
   - added automated tests into: tools/build/tests/
   - tested on arm64,ppc64,s390,x86_64,i386
 
 v2 changes:
   - build Makefiles librarized and moved to 'tools/build' [Ingo]
   - several minor fixies [Namhyung]
   - tested on other archs now - x86_64, i386, powerpc
   - moved tools/lib/* under new build framework to show
 that it's possible ;-)
 included traceevent/lockdep maintainers to get the feedback
   - omitted last 2 patches
 
 The patchset is also available in:
   git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
   perf/build
 
 All tests/make tests passed.

Very nice! I gave it a quick test and saw no problems, behavior, 
speed and functionality of the build appears to be identical to 
the old system.

 Also now we have the full dependency check ((gcc -Wp,-MD,... 
 stuff) and build command line is stored/checked automatically 
 by the build system.

Btw., another thing that might be nice to extract into 
tools/build/ [or tools/config/] is the build/OS features 
detection framework - it goes hand in hand with the build
system.

Thanks,

Ingo
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv3 00/36] perf tools: New build framework

2015-01-20 Thread Ingo Molnar

* David Ahern dsah...@gmail.com wrote:

 On 1/20/15 9:38 AM, Jiri Olsa wrote:
 The patchset is also available in:
git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
perf/build
 
 Do I have to guess which branch?
 
 $ git branch -a | grep jirka | grep build
   remotes/jirka/perf/build
   remotes/jirka/perf/build_1
   remotes/jirka/perf/build_3
   remotes/jirka/perf/build_4
   remotes/jirka/perf/build_6
   remotes/jirka/perf/buildid_3
   remotes/jirka/perf/buildid_4
   remotes/jirka/perf/core_buildid_cache_clean
   remotes/jirka/perf/kbuild1
   remotes/jirka/perf/kbuild2
   remotes/jirka/perf/kbuild3
   remotes/jirka/perf/kbuild4
   remotes/jirka/perf/kbuild7
   remotes/jirka/perf/kbuild9

I used 'perf/build' as announced, and it gave the same diffstat 
as the announcement. I guess the rest are WIP branches?

Thanks,

Ingo
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/