linux/tools/perf/Documentation/Build.txt
<<
>>
Prefs
   1
   21) perf build
   3=============
   4The perf build process consists of several separated building blocks,
   5which are linked together to form the perf binary:
   6  - libperf library (static)
   7  - perf builtin commands
   8  - traceevent library (static)
   9  - GTK ui library
  10
  11Several makefiles govern the perf build:
  12
  13  - Makefile
  14    top level Makefile working as a wrapper that calls the main
  15    Makefile.perf with a -j option to do parallel builds.
  16
  17  - Makefile.perf
  18    main makefile that triggers build of all perf objects including
  19    installation and documentation processing.
  20
  21  - tools/build/Makefile.build
  22    main makefile of the build framework
  23
  24  - tools/build/Build.include
  25    build framework generic definitions
  26
  27  - Build makefiles
  28    makefiles that defines build objects
  29
  30Please refer to tools/build/Documentation/Build.txt for more
  31information about build framework.
  32
  33
  342) perf build
  35=============
  36The Makefile.perf triggers the build framework for build objects:
  37   perf, libperf, gtk
  38
  39resulting in following objects:
  40  $ ls  *-in.o
  41  gtk-in.o  libperf-in.o  perf-in.o
  42
  43Those objects are then used in final linking:
  44  libperf-gtk.so <- gtk-in.o  libperf-in.o
  45  perf           <- perf-in.o libperf-in.o
  46
  47
  48NOTE this description is omitting other libraries involved, only
  49     focusing on build framework outcomes
  50