Skip to contentSkip to conversation

perf build: Suppress warning about missing libbabeltrace

PATCH In review Jiri Olsa 4 participants 6 messages Mar 27, 2015 – Apr 2, 2015 perf events

lore
Share & tools
lore

Jiri Olsa

author reviewer
#0 lore raw

PATCH 1/1 perf build: Suppress warning about missing libbabeltrace

Be silent about missing babeltrace library until the needed version (1.3) is pushed into most common distros.

---
 tools/perf/config/Makefile | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
tools/perf/config/Makefile +6 -1
index cd121dfc4de9..2d9142b10cd3 100644
@@ -606,7 +606,12 @@ ifndef NO_LIBBABELTRACE
     EXTLIBS += -lbabeltrace-ctf
     $(call detected,CONFIG_LIBBABELTRACE)
   else
-    msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
+#
+# Be silent about missing babeltrace library
+# until the needed version (1.3) is pushed
+# into most common distros.
+#
+#    msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
     NO_LIBBABELTRACE := 1
   endif
 endif
Signature · 1 line
1.9.3
#1 lore raw
Quoted 18 lines · Jiri Olsa

Be silent about missing babeltrace library until the needed version (1.3) is pushed into most common distros.

---
 tools/perf/config/Makefile | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
tools/perf/config/Makefile +0 -0
index cd121dfc4de9..2d9142b10cd3 100644
@@ -606,7 +606,12 @@ ifndef NO_LIBBABELTRACE
     EXTLIBS += -lbabeltrace-ctf
     $(call detected,CONFIG_LIBBABELTRACE)
   else

tools/perf/config/Makefile ifndef NO_LIBBABELTRACE · line 617

Quoted 10 lines
tools/perf/config/Makefile +6 -1
-    msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
+#
+# Be silent about missing babeltrace library
+# until the needed version (1.3) is pushed
+# into most common distros.
+#
+#    msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
     NO_LIBBABELTRACE := 1
   endif
 endif

But, but ... the feature detection is still executed, and it slows down the regular build on 99.9999% of the systems, right?

I don't mind carrying the code, but could we make it such that it needs some special option to build or so?

Thanks,

Ingo

#2 lore raw
Quoted 26 lines · Ingo Molnar
Quoted 23 lines · Jiri Olsa

Be silent about missing babeltrace library until the needed version (1.3) is pushed into most common distros.

---
 tools/perf/config/Makefile | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
tools/perf/config/Makefile +4 -1
index cd121dfc4de9..2d9142b10cd3 100644
@@ -606,7 +606,12 @@ ifndef NO_LIBBABELTRACE
     EXTLIBS += -lbabeltrace-ctf
     $(call detected,CONFIG_LIBBABELTRACE)
   else
-    msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
+#
+# Be silent about missing babeltrace library
+# until the needed version (1.3) is pushed
+# into most common distros.
Quoted 9 lines

tools/perf/config/Makefile ifndef NO_LIBBABELTRACE · line 617

Quoted 5 lines
tools/perf/config/Makefile +2 -0
+#
+#    msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
     NO_LIBBABELTRACE := 1
   endif
 endif

But, but ... the feature detection is still executed, and it slows down the regular build on 99.9999% of the systems, right?

right, so currently all features are being checked by default and the only way to disable the check is via NO_* make variables

Quoted 2 lines

I don't mind carrying the code, but could we make it such that it needs some special option to build or so?

I thought about this as of generic feature for all checks, but given that this is the only case so far, how about attached patch?

it's changing the NO_LIBBABELTRACE to LIBBABELTRACE so the libbabeltrace check is disabled unless you do:

  $ make LIBBABELTRACE=1

and we'd switch it back once the babeltrace 1.3 is in generic use

jirka

---

tools/perf/Makefile.perf +1 -1
index e9925e6ad1d0..c43a20517591 100644
@@ -69,7 +69,7 @@ include config/utilities.mak
 #
 # Define NO_ZLIB if you do not want to support compressed kernel modules
 #
-# Define NO_LIBBABELTRACE if you do not want libbabeltrace support
+# Define LIBBABELTRACE if you DO want libbabeltrace support
 # for CTF data format.
 #
 # Define NO_LZMA if you do not want to support compressed (xz) kernel modules
tools/perf/config/Makefile +2 -3
index cd121dfc4de9..59a98c643240 100644
@@ -95,7 +95,7 @@ ifndef NO_LIBELF
   FEATURE_CHECK_LDFLAGS-libdw-dwarf-unwind := $(LIBDW_LDFLAGS) -ldw
 endif
 
-ifndef NO_LIBBABELTRACE
+ifdef LIBBABELTRACE
   # for linking with debug library, run like:
   # make DEBUG=1 LIBBABELTRACE_DIR=/opt/libbabeltrace/
   ifdef LIBBABELTRACE_DIR
@@ -598,7 +598,7 @@ else
   NO_PERF_READ_VDSOX32 := 1
 endif
 
-ifndef NO_LIBBABELTRACE
+ifdef LIBBABELTRACE
   $(call feature_check,libbabeltrace)
   ifeq ($(feature-libbabeltrace), 1)
     CFLAGS += -DHAVE_LIBBABELTRACE_SUPPORT $(LIBBABELTRACE_CFLAGS)
@@ -607,7 +607,6 @@ ifndef NO_LIBBABELTRACE
     $(call detected,CONFIG_LIBBABELTRACE)
   else
     msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
-    NO_LIBBABELTRACE := 1
   endif
 endif
 
Acked-by
#3 lore raw
Quoted 46 lines · Jiri Olsa
Quoted 26 lines · Ingo Molnar
Quoted 23 lines · Jiri Olsa

Be silent about missing babeltrace library until the needed version (1.3) is pushed into most common distros.

---
 tools/perf/config/Makefile | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
tools/perf/config/Makefile +4 -1
index cd121dfc4de9..2d9142b10cd3 100644
@@ -606,7 +606,12 @@ ifndef NO_LIBBABELTRACE
     EXTLIBS += -lbabeltrace-ctf
     $(call detected,CONFIG_LIBBABELTRACE)
   else
-    msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
+#
+# Be silent about missing babeltrace library
+# until the needed version (1.3) is pushed
+# into most common distros.
Quoted 9 lines

tools/perf/config/Makefile ifndef NO_LIBBABELTRACE · line 617

Quoted 5 lines
tools/perf/config/Makefile +2 -0
+#
+#    msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
     NO_LIBBABELTRACE := 1
   endif
 endif

But, but ... the feature detection is still executed, and it slows down the regular build on 99.9999% of the systems, right?

right, so currently all features are being checked by default and the only way to disable the check is via NO_* make variables

Quoted 2 lines

I don't mind carrying the code, but could we make it such that it needs some special option to build or so?

I thought about this as of generic feature for all checks, but given that this is the only case so far, how about attached patch?

Quoted 6 lines

it's changing the NO_LIBBABELTRACE to LIBBABELTRACE so the libbabeltrace check is disabled unless you do:

  $ make LIBBABELTRACE=1

and we'd switch it back once the babeltrace 1.3 is in generic use

That sounds good to me!

Thanks,

Ingo

#4 lore raw

PATCH 1/1 perf build: Disable libbabeltrace check by default

On Sat, Mar 28, 2015 at 10:03:28AM +0100, Ingo Molnar wrote:

SNIP

Quoted 11 lines
Quoted 10 lines

I thought about this as of generic feature for all checks, but given that this is the only case so far, how about attached patch?

it's changing the NO_LIBBABELTRACE to LIBBABELTRACE so the libbabeltrace check is disabled unless you do:

  $ make LIBBABELTRACE=1

and we'd switch it back once the babeltrace 1.3 is in generic use

Quoted 7 lines

That sounds good to me!

Thanks,

Ingo

attached same patch with full changelog

thanks,
jirka

---
Disabling libbabeltrace check by default and replacing the NO_LIBBABELTRACE make variable with LIBBABELTRACE.

Users wanting the libbabeltrace feature need to build via:

  $ make LIBBABELTRACE=1

The reason for this is that the libababeltrace interface we use (version 1.3) hasn't been packaged/released yet, thus the failing feature check only slows down build and confuses other (non CTF) developers.

---
 tools/perf/Makefile.perf   | 2 +-
 tools/perf/config/Makefile | 5 ++---
 2 files changed, 3 insertions(+), 4 deletions(-)
tools/perf/Makefile.perf +1 -1
index e9925e6ad1d0..c43a20517591 100644
@@ -69,7 +69,7 @@ include config/utilities.mak
 #
 # Define NO_ZLIB if you do not want to support compressed kernel modules
 #
-# Define NO_LIBBABELTRACE if you do not want libbabeltrace support
+# Define LIBBABELTRACE if you DO want libbabeltrace support
 # for CTF data format.
 #
 # Define NO_LZMA if you do not want to support compressed (xz) kernel modules
tools/perf/config/Makefile +2 -3
index cd121dfc4de9..59a98c643240 100644
@@ -95,7 +95,7 @@ ifndef NO_LIBELF
   FEATURE_CHECK_LDFLAGS-libdw-dwarf-unwind := $(LIBDW_LDFLAGS) -ldw
 endif
 
-ifndef NO_LIBBABELTRACE
+ifdef LIBBABELTRACE
   # for linking with debug library, run like:
   # make DEBUG=1 LIBBABELTRACE_DIR=/opt/libbabeltrace/
   ifdef LIBBABELTRACE_DIR
@@ -598,7 +598,7 @@ else
   NO_PERF_READ_VDSOX32 := 1
 endif
 
-ifndef NO_LIBBABELTRACE
+ifdef LIBBABELTRACE
   $(call feature_check,libbabeltrace)
   ifeq ($(feature-libbabeltrace), 1)
     CFLAGS += -DHAVE_LIBBABELTRACE_SUPPORT $(LIBBABELTRACE_CFLAGS)
@@ -607,7 +607,6 @@ ifndef NO_LIBBABELTRACE
     $(call detected,CONFIG_LIBBABELTRACE)
   else
     msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
-    NO_LIBBABELTRACE := 1
   endif
 endif
 
Signature · 1 line
1.9.3
#5 lore raw

[tip:perf/core] perf build: Disable libbabeltrace check by default

perf build: Disable libbabeltrace check by default
Commit-ID:  6ab2b762befd192b90704c5c7898f5abf8ebb387
Gitweb:     http://git.kernel.org/tip/6ab2b762befd192b90704c5c7898f5abf8ebb387
Author:     Jiri Olsa <[email protected]>
AuthorDate: Sat, 28 Mar 2015 11:30:30 +0100
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Mon, 30 Mar 2015 10:24:27 -0300

perf build: Disable libbabeltrace check by default

Disabling libbabeltrace check by default and replacing the NO_LIBBABELTRACE make variable with LIBBABELTRACE.

Users wanting the libbabeltrace feature need to build via:

  $ make LIBBABELTRACE=1

The reason for this is that the libababeltrace interface we use (version 1.3) hasn't been packaged/released yet, thus the failing feature check only slows down build and confuses other (non CTF) developers.

Cc David Ahern <[email protected]>
Cc Frederic Weisbecker <[email protected]>
Cc Jeremie Galarneau <[email protected]>
Cc Jiri Olsa <[email protected]>
Cc Namhyung Kim <[email protected]>
Cc Paul Mackerras <[email protected]>
Cc Peter Zijlstra <[email protected]>
Cc Sebastian Andrzej Siewior <[email protected]>
Cc Tom Zanussi <[email protected]>
Cc Wang Nan <[email protected]>
---
 tools/perf/Makefile.perf   | 2 +-
 tools/perf/config/Makefile | 5 ++---
 2 files changed, 3 insertions(+), 4 deletions(-)
tools/perf/Makefile.perf +1 -1
index e9925e6..c43a205 100644
@@ -69,7 +69,7 @@ include config/utilities.mak
 #
 # Define NO_ZLIB if you do not want to support compressed kernel modules
 #
-# Define NO_LIBBABELTRACE if you do not want libbabeltrace support
+# Define LIBBABELTRACE if you DO want libbabeltrace support
 # for CTF data format.
 #
 # Define NO_LZMA if you do not want to support compressed (xz) kernel modules
tools/perf/config/Makefile +2 -3
index cd121df..59a98c6 100644
@@ -95,7 +95,7 @@ ifndef NO_LIBELF
   FEATURE_CHECK_LDFLAGS-libdw-dwarf-unwind := $(LIBDW_LDFLAGS) -ldw
 endif
 
-ifndef NO_LIBBABELTRACE
+ifdef LIBBABELTRACE
   # for linking with debug library, run like:
   # make DEBUG=1 LIBBABELTRACE_DIR=/opt/libbabeltrace/
   ifdef LIBBABELTRACE_DIR
@@ -598,7 +598,7 @@ else
   NO_PERF_READ_VDSOX32 := 1
 endif
 
-ifndef NO_LIBBABELTRACE
+ifdef LIBBABELTRACE
   $(call feature_check,libbabeltrace)
   ifeq ($(feature-libbabeltrace), 1)
     CFLAGS += -DHAVE_LIBBABELTRACE_SUPPORT $(LIBBABELTRACE_CFLAGS)
@@ -607,7 +607,6 @@ ifndef NO_LIBBABELTRACE
     $(call detected,CONFIG_LIBBABELTRACE)
   else
     msg := $(warning No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev);
-    NO_LIBBABELTRACE := 1
   endif
 endif