Re: [PATCHv3 00/36] perf tools: New build framework
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
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
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
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
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
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
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
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
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
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
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
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
* 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
* 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
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
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
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
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
* 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
* 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/