* [PATCH v2 01/10] perf parse-events: Use automatic variable for flex input
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 4:33 ` [PATCH v2 02/10] perf parse-events: Use automatic variable for yacc input Ian Rogers
` (10 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
This reduces the command line size slightly.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index 8d18380ecd10..66cf009f78d8 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -193,7 +193,7 @@ CFLAGS_genelf_debug.o += -Wno-packed
$(OUTPUT)util/parse-events-flex.c: util/parse-events.l $(OUTPUT)util/parse-events-bison.c
$(call rule_mkdir)
- $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/parse-events-flex.h $(PARSER_DEBUG_FLEX) util/parse-events.l
+ $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/parse-events-flex.h $(PARSER_DEBUG_FLEX) $<
$(OUTPUT)util/parse-events-bison.c: util/parse-events.y
$(call rule_mkdir)
@@ -201,7 +201,7 @@ $(OUTPUT)util/parse-events-bison.c: util/parse-events.y
$(OUTPUT)util/expr-flex.c: util/expr.l $(OUTPUT)util/expr-bison.c
$(call rule_mkdir)
- $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/expr-flex.h $(PARSER_DEBUG_FLEX) util/expr.l
+ $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/expr-flex.h $(PARSER_DEBUG_FLEX) $<
$(OUTPUT)util/expr-bison.c: util/expr.y
$(call rule_mkdir)
@@ -209,7 +209,7 @@ $(OUTPUT)util/expr-bison.c: util/expr.y
$(OUTPUT)util/pmu-flex.c: util/pmu.l $(OUTPUT)util/pmu-bison.c
$(call rule_mkdir)
- $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/pmu-flex.h util/pmu.l
+ $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/pmu-flex.h $<
$(OUTPUT)util/pmu-bison.c: util/pmu.y
$(call rule_mkdir)
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v2 02/10] perf parse-events: Use automatic variable for yacc input
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
2020-06-19 4:33 ` [PATCH v2 01/10] perf parse-events: Use automatic variable for flex input Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 4:33 ` [PATCH v2 03/10] perf pmu: Add bison debug build flag Ian Rogers
` (9 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
This reduces the command line size slightly.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index 66cf009f78d8..4e1aa52d75a8 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -197,7 +197,7 @@ $(OUTPUT)util/parse-events-flex.c: util/parse-events.l $(OUTPUT)util/parse-event
$(OUTPUT)util/parse-events-bison.c: util/parse-events.y
$(call rule_mkdir)
- $(Q)$(call echo-cmd,bison)$(BISON) -v util/parse-events.y -d $(PARSER_DEBUG_BISON) -o $@ -p parse_events_
+ $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) -o $@ -p parse_events_
$(OUTPUT)util/expr-flex.c: util/expr.l $(OUTPUT)util/expr-bison.c
$(call rule_mkdir)
@@ -205,7 +205,7 @@ $(OUTPUT)util/expr-flex.c: util/expr.l $(OUTPUT)util/expr-bison.c
$(OUTPUT)util/expr-bison.c: util/expr.y
$(call rule_mkdir)
- $(Q)$(call echo-cmd,bison)$(BISON) -v util/expr.y -d $(PARSER_DEBUG_BISON) -o $@ -p expr_
+ $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) -o $@ -p expr_
$(OUTPUT)util/pmu-flex.c: util/pmu.l $(OUTPUT)util/pmu-bison.c
$(call rule_mkdir)
@@ -213,7 +213,7 @@ $(OUTPUT)util/pmu-flex.c: util/pmu.l $(OUTPUT)util/pmu-bison.c
$(OUTPUT)util/pmu-bison.c: util/pmu.y
$(call rule_mkdir)
- $(Q)$(call echo-cmd,bison)$(BISON) -v util/pmu.y -d -o $@ -p perf_pmu_
+ $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d -o $@ -p perf_pmu_
CFLAGS_parse-events-flex.o += -w
CFLAGS_pmu-flex.o += -w
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v2 03/10] perf pmu: Add bison debug build flag
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
2020-06-19 4:33 ` [PATCH v2 01/10] perf parse-events: Use automatic variable for flex input Ian Rogers
2020-06-19 4:33 ` [PATCH v2 02/10] perf parse-events: Use automatic variable for yacc input Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 4:33 ` [PATCH v2 04/10] perf pmu: Add flex " Ian Rogers
` (8 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
Allow pmu parser to be debugged as the parse-events and expr currently are.
Enabling this requires the C code to set perf_pmu_debug.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index 4e1aa52d75a8..3ae4adc8e966 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -213,7 +213,7 @@ $(OUTPUT)util/pmu-flex.c: util/pmu.l $(OUTPUT)util/pmu-bison.c
$(OUTPUT)util/pmu-bison.c: util/pmu.y
$(call rule_mkdir)
- $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d -o $@ -p perf_pmu_
+ $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) -o $@ -p perf_pmu_
CFLAGS_parse-events-flex.o += -w
CFLAGS_pmu-flex.o += -w
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v2 04/10] perf pmu: Add flex debug build flag
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
` (2 preceding siblings ...)
2020-06-19 4:33 ` [PATCH v2 03/10] perf pmu: Add bison debug build flag Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 4:33 ` [PATCH v2 05/10] perf parse-events: Declare flex header file output Ian Rogers
` (7 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
Allow pmu parser's flex to be debugged as the parse-events and
expr currently are. Enabling this requires the C code to call
perf_pmu__flex_debug.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index 3ae4adc8e966..e63bfc46d50f 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -209,7 +209,7 @@ $(OUTPUT)util/expr-bison.c: util/expr.y
$(OUTPUT)util/pmu-flex.c: util/pmu.l $(OUTPUT)util/pmu-bison.c
$(call rule_mkdir)
- $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/pmu-flex.h $<
+ $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/pmu-flex.h $(PARSER_DEBUG_FLEX) $<
$(OUTPUT)util/pmu-bison.c: util/pmu.y
$(call rule_mkdir)
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v2 05/10] perf parse-events: Declare flex header file output
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
` (3 preceding siblings ...)
2020-06-19 4:33 ` [PATCH v2 04/10] perf pmu: Add flex " Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 4:33 ` [PATCH v2 06/10] perf parse-events: Declare bison " Ian Rogers
` (6 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
Declare flex header file output so that bison C files can depend upon
them. As there are multiple output targets $@ is replaced by the target
name.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index e63bfc46d50f..55c78ac53f04 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -191,25 +191,28 @@ CFLAGS_llvm-utils.o += -DPERF_INCLUDE_DIR="BUILD_STR($(perf_include_dir_SQ))"
# avoid compiler warnings in 32-bit mode
CFLAGS_genelf_debug.o += -Wno-packed
-$(OUTPUT)util/parse-events-flex.c: util/parse-events.l $(OUTPUT)util/parse-events-bison.c
+$(OUTPUT)util/parse-events-flex.c $(OUTPUT)util/parse-events-flex.h: util/parse-events.l $(OUTPUT)util/parse-events-bison.c
$(call rule_mkdir)
- $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/parse-events-flex.h $(PARSER_DEBUG_FLEX) $<
+ $(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/parse-events-flex.c \
+ --header-file=$(OUTPUT)util/parse-events-flex.h $(PARSER_DEBUG_FLEX) $<
$(OUTPUT)util/parse-events-bison.c: util/parse-events.y
$(call rule_mkdir)
$(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) -o $@ -p parse_events_
-$(OUTPUT)util/expr-flex.c: util/expr.l $(OUTPUT)util/expr-bison.c
+$(OUTPUT)util/expr-flex.c $(OUTPUT)util/expr-flex.h: util/expr.l $(OUTPUT)util/expr-bison.c
$(call rule_mkdir)
- $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/expr-flex.h $(PARSER_DEBUG_FLEX) $<
+ $(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/expr-flex.c \
+ --header-file=$(OUTPUT)util/expr-flex.h $(PARSER_DEBUG_FLEX) $<
$(OUTPUT)util/expr-bison.c: util/expr.y
$(call rule_mkdir)
$(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) -o $@ -p expr_
-$(OUTPUT)util/pmu-flex.c: util/pmu.l $(OUTPUT)util/pmu-bison.c
+$(OUTPUT)util/pmu-flex.c $(OUTPUT)util/pmu-flex.h: util/pmu.l $(OUTPUT)util/pmu-bison.c
$(call rule_mkdir)
- $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/pmu-flex.h $(PARSER_DEBUG_FLEX) $<
+ $(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/pmu-flex.c \
+ --header-file=$(OUTPUT)util/pmu-flex.h $(PARSER_DEBUG_FLEX) $<
$(OUTPUT)util/pmu-bison.c: util/pmu.y
$(call rule_mkdir)
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v2 06/10] perf parse-events: Declare bison header file output
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
` (4 preceding siblings ...)
2020-06-19 4:33 ` [PATCH v2 05/10] perf parse-events: Declare flex header file output Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 4:33 ` [PATCH v2 07/10] perf parse-events: Disable a subset of flex warnings Ian Rogers
` (5 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
Declare bison header file output so that C files can depend upon
them. As there are multiple output targets $@ is replaced by the
target name.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index 55c78ac53f04..504a6bb991ba 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -196,27 +196,30 @@ $(OUTPUT)util/parse-events-flex.c $(OUTPUT)util/parse-events-flex.h: util/parse-
$(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/parse-events-flex.c \
--header-file=$(OUTPUT)util/parse-events-flex.h $(PARSER_DEBUG_FLEX) $<
-$(OUTPUT)util/parse-events-bison.c: util/parse-events.y
+$(OUTPUT)util/parse-events-bison.c $(OUTPUT)util/parse-events-bison.h: util/parse-events.y
$(call rule_mkdir)
- $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) -o $@ -p parse_events_
+ $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) \
+ -o $(OUTPUT)util/parse-events-bison.c -p parse_events_
$(OUTPUT)util/expr-flex.c $(OUTPUT)util/expr-flex.h: util/expr.l $(OUTPUT)util/expr-bison.c
$(call rule_mkdir)
$(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/expr-flex.c \
--header-file=$(OUTPUT)util/expr-flex.h $(PARSER_DEBUG_FLEX) $<
-$(OUTPUT)util/expr-bison.c: util/expr.y
+$(OUTPUT)util/expr-bison.c $(OUTPUT)util/expr-bison.h: util/expr.y
$(call rule_mkdir)
- $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) -o $@ -p expr_
+ $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) \
+ -o $(OUTPUT)util/expr-bison.c -p expr_
$(OUTPUT)util/pmu-flex.c $(OUTPUT)util/pmu-flex.h: util/pmu.l $(OUTPUT)util/pmu-bison.c
$(call rule_mkdir)
$(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/pmu-flex.c \
--header-file=$(OUTPUT)util/pmu-flex.h $(PARSER_DEBUG_FLEX) $<
-$(OUTPUT)util/pmu-bison.c: util/pmu.y
+$(OUTPUT)util/pmu-bison.c $(OUTPUT)util/pmu-bison.h: util/pmu.y
$(call rule_mkdir)
- $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) -o $@ -p perf_pmu_
+ $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) \
+ -o $(OUTPUT)util/pmu-bison.c -p perf_pmu_
CFLAGS_parse-events-flex.o += -w
CFLAGS_pmu-flex.o += -w
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v2 07/10] perf parse-events: Disable a subset of flex warnings
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
` (5 preceding siblings ...)
2020-06-19 4:33 ` [PATCH v2 06/10] perf parse-events: Declare bison " Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 4:33 ` [PATCH v2 08/10] perf expr: Avoid implicit lex function declaration Ian Rogers
` (4 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
Rather than disable all warnings with -w, disable specific warnings.
Predicate enabling the warnings on more recent flex versions.
Tested with GCC 9.3.0 and clang 9.0.1.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index 504a6bb991ba..53383bd6f4e2 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -221,9 +221,15 @@ $(OUTPUT)util/pmu-bison.c $(OUTPUT)util/pmu-bison.h: util/pmu.y
$(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) \
-o $(OUTPUT)util/pmu-bison.c -p perf_pmu_
-CFLAGS_parse-events-flex.o += -w
-CFLAGS_pmu-flex.o += -w
-CFLAGS_expr-flex.o += -w
+FLEX_GE_264 := $(shell expr $(shell $(FLEX) --version | sed -e 's/flex \([0-9]\+\).\([0-9]\+\).\([0-9]\+\)/\1\2\3/g') \>\= 264)
+ifeq ($(FLEX_GE_264),1)
+ flex_flags := -Wno-switch-enum -Wno-switch-default -Wno-unused-function -Wno-redundant-decls
+else
+ flex_flags := -w
+endif
+CFLAGS_parse-events-flex.o += $(flex_flags)
+CFLAGS_pmu-flex.o += $(flex_flags)
+CFLAGS_expr-flex.o += $(flex_flags)
CFLAGS_parse-events-bison.o += -DYYENABLE_NLS=0 -w
CFLAGS_pmu-bison.o += -DYYENABLE_NLS=0 -DYYLTYPE_IS_TRIVIAL=0 -w
CFLAGS_expr-bison.o += -DYYENABLE_NLS=0 -DYYLTYPE_IS_TRIVIAL=0 -w
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v2 08/10] perf expr: Avoid implicit lex function declaration
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
` (6 preceding siblings ...)
2020-06-19 4:33 ` [PATCH v2 07/10] perf parse-events: Disable a subset of flex warnings Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 4:33 ` [PATCH v2 09/10] perf parse-events: " Ian Rogers
` (3 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
Add include and a dependency.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 2 ++
tools/perf/util/expr.y | 2 ++
2 files changed, 4 insertions(+)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index 53383bd6f4e2..43a9ae712544 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -211,6 +211,8 @@ $(OUTPUT)util/expr-bison.c $(OUTPUT)util/expr-bison.h: util/expr.y
$(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) \
-o $(OUTPUT)util/expr-bison.c -p expr_
+$(OUTPUT)util/expr-bison.o: $(OUTPUT)util/expr-flex.h
+
$(OUTPUT)util/pmu-flex.c $(OUTPUT)util/pmu-flex.h: util/pmu.l $(OUTPUT)util/pmu-bison.c
$(call rule_mkdir)
$(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/pmu-flex.c \
diff --git a/tools/perf/util/expr.y b/tools/perf/util/expr.y
index bf3e898e3055..f34a5e544a41 100644
--- a/tools/perf/util/expr.y
+++ b/tools/perf/util/expr.y
@@ -39,6 +39,8 @@
%type <num> expr if_expr
%{
+#include "expr-flex.h"
+
static void expr_error(double *final_val __maybe_unused,
struct expr_parse_ctx *ctx __maybe_unused,
void *scanner,
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v2 09/10] perf parse-events: Avoid implicit lex function declaration
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
` (7 preceding siblings ...)
2020-06-19 4:33 ` [PATCH v2 08/10] perf expr: Avoid implicit lex function declaration Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 4:33 ` [PATCH v2 10/10] perf parse-events: Disable a subset of bison warnings Ian Rogers
` (2 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
Add include and a dependency.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 2 ++
tools/perf/util/parse-events.y | 1 +
2 files changed, 3 insertions(+)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index 43a9ae712544..935ba132614c 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -201,6 +201,8 @@ $(OUTPUT)util/parse-events-bison.c $(OUTPUT)util/parse-events-bison.h: util/pars
$(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) \
-o $(OUTPUT)util/parse-events-bison.c -p parse_events_
+$(OUTPUT)util/parse-events-bison.o: $(OUTPUT)util/parse-events-flex.h
+
$(OUTPUT)util/expr-flex.c $(OUTPUT)util/expr-flex.h: util/expr.l $(OUTPUT)util/expr-bison.c
$(call rule_mkdir)
$(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/expr-flex.c \
diff --git a/tools/perf/util/parse-events.y b/tools/perf/util/parse-events.y
index acef87d9af58..ae0aa47dbafb 100644
--- a/tools/perf/util/parse-events.y
+++ b/tools/perf/util/parse-events.y
@@ -17,6 +17,7 @@
#include "evsel.h"
#include "parse-events.h"
#include "parse-events-bison.h"
+#include "parse-events-flex.h"
void parse_events_error(YYLTYPE *loc, void *parse_state, void *scanner, char const *msg);
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v2 10/10] perf parse-events: Disable a subset of bison warnings
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
` (8 preceding siblings ...)
2020-06-19 4:33 ` [PATCH v2 09/10] perf parse-events: " Ian Rogers
@ 2020-06-19 4:33 ` Ian Rogers
2020-06-19 11:50 ` [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Arnaldo Carvalho de Melo
2020-06-19 12:15 ` Arnaldo Carvalho de Melo
11 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 4:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
Andi Kleen, Jin Yao, John Garry, Adrian Hunter, linux-kernel
Cc: Stephane Eranian, Ian Rogers
Rather than disable all warnings with -w, disable specific warnings.
Predicate enabling the warnings on a recent version of bison.
Tested with GCC 9.3.0 and clang 9.0.1.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/Build | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/tools/perf/util/Build b/tools/perf/util/Build
index 935ba132614c..c1692076469c 100644
--- a/tools/perf/util/Build
+++ b/tools/perf/util/Build
@@ -234,9 +234,17 @@ endif
CFLAGS_parse-events-flex.o += $(flex_flags)
CFLAGS_pmu-flex.o += $(flex_flags)
CFLAGS_expr-flex.o += $(flex_flags)
-CFLAGS_parse-events-bison.o += -DYYENABLE_NLS=0 -w
-CFLAGS_pmu-bison.o += -DYYENABLE_NLS=0 -DYYLTYPE_IS_TRIVIAL=0 -w
-CFLAGS_expr-bison.o += -DYYENABLE_NLS=0 -DYYLTYPE_IS_TRIVIAL=0 -w
+
+bison_flags := -DYYENABLE_NLS=0
+BISON_GE_353 := $(shell expr $(shell $(BISON) --version | grep bison | sed -e 's/.\+ \([0-9]\+\).\([0-9]\+\).\([0-9]\+\)/\1\2\3/g') \>\= 353)
+ifeq ($(BISON_GE_353),1)
+ bison_flags += -Wno-unused-parameter -Wno-nested-externs -Wno-error=implicit-function-declaration
+else
+ bison_flags += -w
+endif
+CFLAGS_parse-events-bison.o += $(bison_flags)
+CFLAGS_pmu-bison.o += -DYYLTYPE_IS_TRIVIAL=0 $(bison_flags)
+CFLAGS_expr-bison.o += -DYYLTYPE_IS_TRIVIAL=0 $(bison_flags)
$(OUTPUT)util/parse-events.o: $(OUTPUT)util/parse-events-flex.c $(OUTPUT)util/parse-events-bison.c
$(OUTPUT)util/pmu.o: $(OUTPUT)util/pmu-flex.c $(OUTPUT)util/pmu-bison.c
--
2.27.0.111.gc72c7da667-goog
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
` (9 preceding siblings ...)
2020-06-19 4:33 ` [PATCH v2 10/10] perf parse-events: Disable a subset of bison warnings Ian Rogers
@ 2020-06-19 11:50 ` Arnaldo Carvalho de Melo
2020-06-19 12:15 ` Arnaldo Carvalho de Melo
11 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2020-06-19 11:50 UTC (permalink / raw)
To: Ian Rogers
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, Andi Kleen, Jin Yao, John Garry,
Adrian Hunter, linux-kernel, Stephane Eranian
Em Thu, Jun 18, 2020 at 09:33:46PM -0700, Ian Rogers escreveu:
> All C compiler warnings are disabled are disabled by -w. This change
> removes the -w from flex and bison targets. To avoid implicit
> declarations header files are declared as targets and included.
>
> Tested with GCC 9.3.0 and clang 9.0.1.
>
> v2. predicates disabling the warnings on more recent bison and flex
> versions (3.5.3 and 2.6.4 respectively). An alternative would be
> to disabled a large number of warnings to cover the warnings
> generated in older distributions:
> flex_flags := -Wno-switch-enum -Wno-switch-default -Wno-unused-function \
> -Wno-redundant-decls -Wno-sign-compare -Wno-unused-parameter \
> -Wno-missing-prototypes -Wno-misleading-indentation
> bison_flags := -DYYENABLE_NLS=0 -Wno-unused-parameter -Wno-nested-externs \
> -Wno-implicit-function-declaration -Wno-switch-enum
>
> Previously posted as a single change:
> https://lore.kernel.org/lkml/20200609234344.3795-2-irogers@google.com/
So for the parts that you kept unchanged since Jiri acked it, please
next time collect that Acked-by, ok?
Going thru this now.
- Arnaldo
> Ian Rogers (10):
> perf parse-events: Use automatic variable for flex input
> perf parse-events: Use automatic variable for yacc input
> perf pmu: Add bison debug build flag
> perf pmu: Add flex debug build flag
> perf parse-events: Declare flex header file output
> perf parse-events: Declare bison header file output
> perf parse-events: Disable a subset of flex warnings
> perf expr: Avoid implicit lex function declaration
> perf parse-events: Avoid implicit lex function declaration
> perf parse-events: Disable a subset of bison warnings
>
> tools/perf/util/Build | 62 +++++++++++++++++++++++-----------
> tools/perf/util/expr.y | 2 ++
> tools/perf/util/parse-events.y | 1 +
> 3 files changed, 46 insertions(+), 19 deletions(-)
>
> --
> 2.27.0.111.gc72c7da667-goog
>
--
- Arnaldo
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings
2020-06-19 4:33 [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Ian Rogers
` (10 preceding siblings ...)
2020-06-19 11:50 ` [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings Arnaldo Carvalho de Melo
@ 2020-06-19 12:15 ` Arnaldo Carvalho de Melo
2020-06-19 12:20 ` Arnaldo Carvalho de Melo
11 siblings, 1 reply; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2020-06-19 12:15 UTC (permalink / raw)
To: Ian Rogers
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, Andi Kleen, Jin Yao, John Garry,
Adrian Hunter, linux-kernel, Stephane Eranian
Em Thu, Jun 18, 2020 at 09:33:46PM -0700, Ian Rogers escreveu:
> All C compiler warnings are disabled are disabled by -w. This change
> removes the -w from flex and bison targets. To avoid implicit
> declarations header files are declared as targets and included.
>
> Tested with GCC 9.3.0 and clang 9.0.1.
>
> v2. predicates disabling the warnings on more recent bison and flex
> versions (3.5.3 and 2.6.4 respectively). An alternative would be
> to disabled a large number of warnings to cover the warnings
> generated in older distributions:
> flex_flags := -Wno-switch-enum -Wno-switch-default -Wno-unused-function \
> -Wno-redundant-decls -Wno-sign-compare -Wno-unused-parameter \
> -Wno-missing-prototypes -Wno-misleading-indentation
> bison_flags := -DYYENABLE_NLS=0 -Wno-unused-parameter -Wno-nested-externs \
> -Wno-implicit-function-declaration -Wno-switch-enum
So, it is failing with older versions of alpine Linux, but then at
alpine 3.8 I noticed that the problem is happening only when building
with this following set of options, and when building with gcc, building
with clang, i.e. adding CC=clang to the following make command line
works.
+ make 'ARCH=' 'CROSS_COMPILE=' 'EXTRA_CFLAGS=' 'LIBCLANGLLVM=1' -C /git/linux/tools/perf 'O=/tmp/build/perf'
make: Entering directory '/git/linux/tools/perf'
BUILD: Doing 'make -j8' parallel build
HOSTCC /tmp/build/perf/fixdep.o
HOSTLD /tmp/build/perf/fixdep-in.o
LINK /tmp/build/perf/fixdep
Auto-detecting system features:
... dwarf: [ OFF ]
... dwarf_getlocations: [ OFF ]
... glibc: [ OFF ]
... gtk2: [ on ]
... libbfd: [ on ]
... libcap: [ on ]
... libelf: [ on ]
... libnuma: [ OFF ]
... numa_num_possible_cpus: [ OFF ]
... libperl: [ on ]
... libpython: [ on ]
... libcrypto: [ on ]
... libunwind: [ on ]
... libdw-dwarf-unwind: [ OFF ]
... zlib: [ on ]
... lzma: [ on ]
... get_cpuid: [ on ]
... bpf: [ on ]
... libaio: [ on ]
... libzstd: [ on ]
... disassembler-four-args: [ on ]
Makefile.config:409: No libdw DWARF unwind found, Please install elfutils-devel/libdw-dev >= 0.158 and/or set LIBDW_DIR
Makefile.config:414: No libdw.h found or old libdw.h found or elfutils is older than 0.138, disables dwarf support. Please install new elfutils-devel/libdw-dev
Makefile.config:485: gelf_getnote() not found on libelf, SDT support disabled
Makefile.config:528: DWARF support is off, BPF prologue is disabled
Makefile.config:536: No sys/sdt.h found, no SDT events are defined, please install systemtap-sdt-devel or systemtap-sdt-dev
Makefile.config:890: No numa.h found, disables 'perf bench numa mem' benchmark, please install numactl-devel/libnuma-devel/libnuma-dev
Makefile.config:945: No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev
Makefile.config:971: No alternatives command found, you need to set JDIR= to point to the root of your Java directory
Makefile.config:1008: No suitable libclang found, disabling builtin clang and LLVM support. Please install libclang-dev(el) (>= 3.9.0)
GEN /tmp/build/perf/common-cmds.h
sort: unrecognized option: V
BusyBox v1.28.4 (2018-12-31 18:05:13 UTC) multi-call binary.
PERF_VERSION = 5.7.g6f01af8176af
Usage: sort [-nrugMcszbdfiokt] [-o FILE] [-k start[.offset][opts][,end[.offset][opts]] [-t CHAR] [FILE]...
Sort lines of text
-o FILE Output to FILE
-c Check whether input is sorted
-b Ignore leading blanks
-f Ignore case
-i Ignore unprintable characters
-d Dictionary order (blank or alphanumeric only)
-g General numerical sort
-M Sort month
-n Sort numbers
-t CHAR Field separator
-k N[,M] Sort by Nth field
-r Reverse sort order
-s Stable (don't sort ties alphabetically)
-u Suppress duplicate lines
-z Lines are terminated by NUL, not newline
CC /tmp/build/perf/exec-cmd.o
CC /tmp/build/perf/event-parse.o
MKDIR /tmp/build/perf/fd/
CC /tmp/build/perf/fd/array.o
GEN /tmp/build/perf/bpf_helper_defs.h
CC /tmp/build/perf/event-plugin.o
CC /tmp/build/perf/core.o
LD /tmp/build/perf/fd/libapi-in.o
MKDIR /tmp/build/perf/fs/
CC /tmp/build/perf/fs/fs.o
CC /tmp/build/perf/cpumap.o
CC /tmp/build/perf/trace-seq.o
CC /tmp/build/perf/threadmap.o
CC /tmp/build/perf/help.o
MKDIR /tmp/build/perf/staticobjs/
CC /tmp/build/perf/staticobjs/libbpf.o
MKDIR /tmp/build/perf/staticobjs/
CC /tmp/build/perf/staticobjs/bpf.o
CC /tmp/build/perf/cpu.o
CC /tmp/build/perf/parse-filter.o
CC /tmp/build/perf/evsel.o
CC /tmp/build/perf/evlist.o
CC /tmp/build/perf/pager.o
CC /tmp/build/perf/parse-options.o
CC /tmp/build/perf/parse-utils.o
CC /tmp/build/perf/mmap.o
CC /tmp/build/perf/kbuffer-parse.o
CC /tmp/build/perf/zalloc.o
CC /tmp/build/perf/tep_strerror.o
CC /tmp/build/perf/xyarray.o
CC /tmp/build/perf/event-parse-api.o
CC /tmp/build/perf/run-command.o
CC /tmp/build/perf/sigchain.o
LD /tmp/build/perf/libtraceevent-in.o
LINK /tmp/build/perf/libtraceevent.a
MKDIR /tmp/build/perf/fs/
CC /tmp/build/perf/fs/tracing_path.o
CC /tmp/build/perf/debug.o
CC /tmp/build/perf/str_error_r.o
CC /tmp/build/perf/fs/cgroup.o
CC /tmp/build/perf/subcmd-config.o
CC /tmp/build/perf/lib.o
CC /tmp/build/perf/staticobjs/nlattr.o
CC /tmp/build/perf/staticobjs/btf.o
CC /tmp/build/perf/staticobjs/libbpf_errno.o
LD /tmp/build/perf/fs/libapi-in.o
CC /tmp/build/perf/staticobjs/str_error.o
CC /tmp/build/perf/staticobjs/netlink.o
LD /tmp/build/perf/libapi-in.o
AR /tmp/build/perf/libapi.a
CC /tmp/build/perf/staticobjs/bpf_prog_linfo.o
LD /tmp/build/perf/libperf-in.o
AR /tmp/build/perf/libperf.a
CC /tmp/build/perf/staticobjs/libbpf_probes.o
CC /tmp/build/perf/staticobjs/xsk.o
LD /tmp/build/perf/libsubcmd-in.o
CC /tmp/build/perf/staticobjs/hashmap.o
AR /tmp/build/perf/libsubcmd.a
CC /tmp/build/perf/staticobjs/btf_dump.o
CC /tmp/build/perf/staticobjs/ringbuf.o
MKDIR /tmp/build/perf/pmu-events/
GEN perf-archive
HOSTCC /tmp/build/perf/pmu-events/json.o
GEN perf-with-kcore
MKDIR /tmp/build/perf/ui/gtk/
MKDIR /tmp/build/perf/pmu-events/
CC /tmp/build/perf/ui/gtk/browser.o
HOSTCC /tmp/build/perf/pmu-events/jsmn.o
HOSTCC /tmp/build/perf/pmu-events/jevents.o
CC /tmp/build/perf/plugin_jbd2.o
CC /tmp/build/perf/plugin_hrtimer.o
CC /tmp/build/perf/plugin_kmem.o
CC /tmp/build/perf/plugin_kvm.o
LD /tmp/build/perf/plugin_hrtimer-in.o
LD /tmp/build/perf/plugin_jbd2-in.o
LD /tmp/build/perf/plugin_kmem-in.o
CC /tmp/build/perf/plugin_mac80211.o
CC /tmp/build/perf/plugin_sched_switch.o
CC /tmp/build/perf/plugin_function.o
LD /tmp/build/perf/plugin_kvm-in.o
LD /tmp/build/perf/plugin_mac80211-in.o
MKDIR /tmp/build/perf/ui/gtk/
CC /tmp/build/perf/plugin_xen.o
CC /tmp/build/perf/ui/gtk/hists.o
LD /tmp/build/perf/plugin_sched_switch-in.o
LD /tmp/build/perf/staticobjs/libbpf-in.o
LD /tmp/build/perf/plugin_xen-in.o
LINK /tmp/build/perf/libbpf.a
CC /tmp/build/perf/plugin_scsi.o
LD /tmp/build/perf/plugin_function-in.o
CC /tmp/build/perf/plugin_cfg80211.o
HOSTLD /tmp/build/perf/pmu-events/jevents-in.o
CC /tmp/build/perf/ui/gtk/setup.o
LINK /tmp/build/perf/plugin_jbd2.so
LINK /tmp/build/perf/pmu-events/jevents
GEN /tmp/build/perf/pmu-events/pmu-events.c
LINK /tmp/build/perf/plugin_hrtimer.so
LD /tmp/build/perf/plugin_cfg80211-in.o
LD /tmp/build/perf/plugin_scsi-in.o
LINK /tmp/build/perf/plugin_kmem.so
LINK /tmp/build/perf/plugin_kvm.so
CC /tmp/build/perf/ui/gtk/util.o
LINK /tmp/build/perf/plugin_mac80211.so
LINK /tmp/build/perf/plugin_sched_switch.so
LINK /tmp/build/perf/plugin_function.so
LINK /tmp/build/perf/plugin_xen.so
LINK /tmp/build/perf/plugin_scsi.so
LINK /tmp/build/perf/plugin_cfg80211.so
CC /tmp/build/perf/ui/gtk/helpline.o
GEN /tmp/build/perf/libtraceevent-dynamic-list
GEN /tmp/build/perf/python/perf.so
CC /tmp/build/perf/ui/gtk/progress.o
CC /tmp/build/perf/pmu-events/pmu-events.o
CC /tmp/build/perf/ui/gtk/annotate.o
CC /tmp/build/perf/builtin-bench.o
CC /tmp/build/perf/ui/gtk/zalloc.o
CC /tmp/build/perf/builtin-annotate.o
CC /tmp/build/perf/builtin-config.o
CC /tmp/build/perf/builtin-diff.o
CC /tmp/build/perf/builtin-evlist.o
CC /tmp/build/perf/builtin-ftrace.o
CC /tmp/build/perf/builtin-help.o
CC /tmp/build/perf/builtin-sched.o
CC /tmp/build/perf/builtin-buildid-list.o
LD /tmp/build/perf/pmu-events/pmu-events-in.o
LD /tmp/build/perf/ui/gtk/gtk-in.o
CC /tmp/build/perf/builtin-buildid-cache.o
CC /tmp/build/perf/builtin-kallsyms.o
CC /tmp/build/perf/builtin-list.o
CC /tmp/build/perf/builtin-record.o
CC /tmp/build/perf/builtin-report.o
LD /tmp/build/perf/gtk-in.o
LINK /tmp/build/perf/libperf-gtk.so
CC /tmp/build/perf/builtin-stat.o
CC /tmp/build/perf/builtin-timechart.o
CC /tmp/build/perf/builtin-top.o
CC /tmp/build/perf/builtin-script.o
CC /tmp/build/perf/builtin-kmem.o
CC /tmp/build/perf/builtin-lock.o
CC /tmp/build/perf/builtin-kvm.o
CC /tmp/build/perf/builtin-inject.o
CC /tmp/build/perf/builtin-mem.o
CC /tmp/build/perf/builtin-data.o
CC /tmp/build/perf/builtin-version.o
CC /tmp/build/perf/builtin-c2c.o
CC /tmp/build/perf/builtin-trace.o
CC /tmp/build/perf/builtin-probe.o
MKDIR /tmp/build/perf/bench/
CC /tmp/build/perf/bench/sched-messaging.o
MKDIR /tmp/build/perf/tests/
CC /tmp/build/perf/tests/builtin-test.o
MKDIR /tmp/build/perf/bench/
CC /tmp/build/perf/bench/sched-pipe.o
MKDIR /tmp/build/perf/util/
CC /tmp/build/perf/util/annotate.o
CC /tmp/build/perf/bench/mem-functions.o
CC /tmp/build/perf/arch/common.o
MKDIR /tmp/build/perf/tests/
MKDIR /tmp/build/perf/arch/x86/util/
CC /tmp/build/perf/arch/x86/util/header.o
CC /tmp/build/perf/bench/futex-hash.o
CC /tmp/build/perf/tests/parse-events.o
CC /tmp/build/perf/bench/futex-wake.o
MKDIR /tmp/build/perf/arch/x86/util/
CC /tmp/build/perf/arch/x86/util/tsc.o
CC /tmp/build/perf/arch/x86/util/pmu.o
CC /tmp/build/perf/arch/x86/util/kvm-stat.o
CC /tmp/build/perf/bench/futex-wake-parallel.o
CC /tmp/build/perf/arch/x86/util/perf_regs.o
CC /tmp/build/perf/bench/futex-requeue.o
CC /tmp/build/perf/bench/futex-lock-pi.o
CC /tmp/build/perf/arch/x86/util/group.o
CC /tmp/build/perf/arch/x86/util/machine.o
CC /tmp/build/perf/arch/x86/util/event.o
CC /tmp/build/perf/arch/x86/util/unwind-libunwind.o
CC /tmp/build/perf/arch/x86/util/auxtrace.o
CC /tmp/build/perf/bench/epoll-wait.o
MKDIR /tmp/build/perf/arch/x86/tests/
CC /tmp/build/perf/arch/x86/tests/regs_load.o
MKDIR /tmp/build/perf/util/
CC /tmp/build/perf/util/block-info.o
MKDIR /tmp/build/perf/arch/x86/tests/
CC /tmp/build/perf/arch/x86/tests/dwarf-unwind.o
CC /tmp/build/perf/arch/x86/util/archinsn.o
CC /tmp/build/perf/arch/x86/tests/arch-tests.o
CC /tmp/build/perf/bench/epoll-ctl.o
CC /tmp/build/perf/arch/x86/tests/rdpmc.o
CC /tmp/build/perf/tests/dso-data.o
CC /tmp/build/perf/arch/x86/util/intel-pt.o
CC /tmp/build/perf/arch/x86/tests/perf-time-to-tsc.o
CC /tmp/build/perf/bench/synthesize.o
CC /tmp/build/perf/util/block-range.o
CC /tmp/build/perf/bench/kallsyms-parse.o
CC /tmp/build/perf/arch/x86/tests/insn-x86.o
CC /tmp/build/perf/util/build-id.o
CC /tmp/build/perf/util/cacheline.o
CC /tmp/build/perf/bench/mem-memcpy-x86-64-lib.o
CC /tmp/build/perf/tests/attr.o
CC /tmp/build/perf/bench/mem-memcpy-x86-64-asm.o
CC /tmp/build/perf/bench/mem-memset-x86-64-asm.o
CC /tmp/build/perf/util/config.o
CC /tmp/build/perf/arch/x86/util/intel-bts.o
LD /tmp/build/perf/bench/perf-in.o
CC /tmp/build/perf/arch/x86/tests/intel-pt-pkt-decoder-test.o
CC /tmp/build/perf/ui/setup.o
CC /tmp/build/perf/tests/vmlinux-kallsyms.o
CC /tmp/build/perf/arch/x86/tests/bp-modify.o
CC /tmp/build/perf/ui/helpline.o
LD /tmp/build/perf/arch/x86/util/perf-in.o
CC /tmp/build/perf/ui/progress.o
CC /tmp/build/perf/tests/openat-syscall.o
LD /tmp/build/perf/arch/x86/tests/perf-in.o
CC /tmp/build/perf/tests/openat-syscall-all-cpus.o
LD /tmp/build/perf/arch/x86/perf-in.o
LD /tmp/build/perf/arch/perf-in.o
CC /tmp/build/perf/tests/openat-syscall-tp-fields.o
CC /tmp/build/perf/ui/util.o
CC /tmp/build/perf/ui/hist.o
CC /tmp/build/perf/util/copyfile.o
CC /tmp/build/perf/tests/mmap-basic.o
MKDIR /tmp/build/perf/ui/stdio/
CC /tmp/build/perf/ui/stdio/hist.o
CC /tmp/build/perf/tests/perf-record.o
CC /tmp/build/perf/util/ctype.o
CC /tmp/build/perf/util/db-export.o
CC /tmp/build/perf/tests/evsel-roundtrip-name.o
CC /tmp/build/perf/tests/evsel-tp-sched.o
MKDIR /tmp/build/perf/scripts/perl/Perf-Trace-Util/
CC /tmp/build/perf/scripts/perl/Perf-Trace-Util/Context.o
CC /tmp/build/perf/tests/fdarray.o
CC /tmp/build/perf/tests/pmu.o
CC /tmp/build/perf/tests/pmu-events.o
CC /tmp/build/perf/tests/hists_common.o
CC /tmp/build/perf/tests/hists_link.o
LD /tmp/build/perf/scripts/perl/Perf-Trace-Util/perf-in.o
MKDIR /tmp/build/perf/scripts/python/Perf-Trace-Util/
CC /tmp/build/perf/ui/browser.o
CC /tmp/build/perf/scripts/python/Perf-Trace-Util/Context.o
CC /tmp/build/perf/tests/hists_filter.o
CC /tmp/build/perf/util/env.o
CC /tmp/build/perf/tests/hists_output.o
CC /tmp/build/perf/tests/hists_cumulate.o
LD /tmp/build/perf/scripts/python/Perf-Trace-Util/perf-in.o
LD /tmp/build/perf/scripts/perf-in.o
CC /tmp/build/perf/trace/beauty/clone.o
CC /tmp/build/perf/perf.o
CC /tmp/build/perf/trace/beauty/fcntl.o
MKDIR /tmp/build/perf/ui/browsers/
CC /tmp/build/perf/ui/browsers/annotate.o
CC /tmp/build/perf/util/event.o
CC /tmp/build/perf/tests/python-use.o
CC /tmp/build/perf/trace/beauty/flock.o
CC /tmp/build/perf/trace/beauty/fsmount.o
CC /tmp/build/perf/trace/beauty/fspick.o
CC /tmp/build/perf/trace/beauty/ioctl.o
CC /tmp/build/perf/trace/beauty/kcmp.o
CC /tmp/build/perf/tests/bp_signal.o
CC /tmp/build/perf/tests/bp_signal_overflow.o
CC /tmp/build/perf/trace/beauty/mount_flags.o
CC /tmp/build/perf/trace/beauty/move_mount.o
CC /tmp/build/perf/trace/beauty/pkey_alloc.o
CC /tmp/build/perf/trace/beauty/arch_prctl.o
CC /tmp/build/perf/trace/beauty/prctl.o
CC /tmp/build/perf/tests/bp_account.o
CC /tmp/build/perf/trace/beauty/renameat.o
CC /tmp/build/perf/tests/wp.o
CC /tmp/build/perf/tests/task-exit.o
CC /tmp/build/perf/util/evlist.o
CC /tmp/build/perf/trace/beauty/sockaddr.o
CC /tmp/build/perf/trace/beauty/socket.o
CC /tmp/build/perf/trace/beauty/statx.o
CC /tmp/build/perf/trace/beauty/sync_file_range.o
CC /tmp/build/perf/util/sideband_evlist.o
MKDIR /tmp/build/perf/ui/browsers/
CC /tmp/build/perf/ui/browsers/hists.o
CC /tmp/build/perf/ui/browsers/map.o
MKDIR /tmp/build/perf/trace/beauty/tracepoints/
CC /tmp/build/perf/trace/beauty/tracepoints/x86_irq_vectors.o
MKDIR /tmp/build/perf/trace/beauty/tracepoints/
CC /tmp/build/perf/trace/beauty/tracepoints/x86_msr.o
CC /tmp/build/perf/util/evsel.o
LD /tmp/build/perf/trace/beauty/tracepoints/perf-in.o
LD /tmp/build/perf/trace/beauty/perf-in.o
CC /tmp/build/perf/tests/sw-clock.o
CC /tmp/build/perf/util/evsel_fprintf.o
CC /tmp/build/perf/util/perf_event_attr_fprintf.o
CC /tmp/build/perf/tests/mmap-thread-lookup.o
CC /tmp/build/perf/util/evswitch.o
CC /tmp/build/perf/tests/thread-maps-share.o
CC /tmp/build/perf/tests/switch-tracking.o
CC /tmp/build/perf/util/find_bit.o
CC /tmp/build/perf/util/get_current_dir_name.o
CC /tmp/build/perf/util/kallsyms.o
MKDIR /tmp/build/perf/ui/tui/
CC /tmp/build/perf/tests/keep-tracking.o
CC /tmp/build/perf/ui/tui/setup.o
CC /tmp/build/perf/util/levenshtein.o
CC /tmp/build/perf/util/llvm-utils.o
CC /tmp/build/perf/util/mmap.o
CC /tmp/build/perf/util/memswap.o
MKDIR /tmp/build/perf/ui/tui/
CC /tmp/build/perf/ui/tui/util.o
CC /tmp/build/perf/tests/code-reading.o
CC /tmp/build/perf/tests/sample-parsing.o
CC /tmp/build/perf/ui/tui/helpline.o
CC /tmp/build/perf/tests/parse-no-sample-id-all.o
CC /tmp/build/perf/ui/tui/progress.o
CC /tmp/build/perf/tests/kmod-path.o
CC /tmp/build/perf/tests/thread-map.o
LD /tmp/build/perf/ui/tui/perf-in.o
CC /tmp/build/perf/tests/llvm.o
CC /tmp/build/perf/tests/bpf.o
CC /tmp/build/perf/tests/topology.o
CC /tmp/build/perf/tests/mem.o
CC /tmp/build/perf/tests/cpumap.o
CC /tmp/build/perf/tests/stat.o
CC /tmp/build/perf/tests/event_update.o
CC /tmp/build/perf/ui/browsers/scripts.o
CC /tmp/build/perf/ui/browsers/header.o
CC /tmp/build/perf/tests/event-times.o
CC /tmp/build/perf/ui/browsers/res_sample.o
CC /tmp/build/perf/tests/expr.o
CC /tmp/build/perf/tests/backward-ring-buffer.o
CC /tmp/build/perf/tests/sdt.o
CC /tmp/build/perf/tests/is_printable_array.o
CC /tmp/build/perf/tests/bitmap.o
BISON /tmp/build/perf/util/parse-events-bison.c
CC /tmp/build/perf/tests/perf-hooks.o
CC /tmp/build/perf/tests/clang.o
CC /tmp/build/perf/util/perf_regs.o
CC /tmp/build/perf/tests/unit_number__scnprintf.o
CC /tmp/build/perf/tests/mem2node.o
CC /tmp/build/perf/tests/maps.o
CC /tmp/build/perf/tests/time-utils-test.o
CC /tmp/build/perf/tests/genelf.o
CC /tmp/build/perf/tests/api-io.o
CC /tmp/build/perf/tests/demangle-java-test.o
CC /tmp/build/perf/util/path.o
CC /tmp/build/perf/util/print_binary.o
CC /tmp/build/perf/tests/pfm.o
CC /tmp/build/perf/tests/parse-metric.o
CC /tmp/build/perf/util/rlimit.o
CC /tmp/build/perf/tests/dwarf-unwind.o
CC /tmp/build/perf/util/argv_split.o
CC /tmp/build/perf/util/rbtree.o
CC /tmp/build/perf/util/libstring.o
CC /tmp/build/perf/util/bitmap.o
CC /tmp/build/perf/tests/llvm-src-base.o
CC /tmp/build/perf/tests/llvm-src-kbuild.o
CC /tmp/build/perf/tests/llvm-src-prologue.o
CC /tmp/build/perf/tests/llvm-src-relocation.o
CC /tmp/build/perf/util/hweight.o
CC /tmp/build/perf/util/smt.o
CC /tmp/build/perf/util/strbuf.o
CC /tmp/build/perf/util/string.o
LD /tmp/build/perf/tests/perf-in.o
CC /tmp/build/perf/util/strlist.o
CC /tmp/build/perf/util/strfilter.o
CC /tmp/build/perf/util/top.o
CC /tmp/build/perf/util/usage.o
CC /tmp/build/perf/util/dso.o
CC /tmp/build/perf/util/dsos.o
CC /tmp/build/perf/util/symbol.o
CC /tmp/build/perf/util/symbol_fprintf.o
CC /tmp/build/perf/util/color.o
CC /tmp/build/perf/util/color_config.o
CC /tmp/build/perf/util/metricgroup.o
CC /tmp/build/perf/util/header.o
LD /tmp/build/perf/ui/browsers/perf-in.o
CC /tmp/build/perf/util/callchain.o
LD /tmp/build/perf/ui/perf-in.o
CC /tmp/build/perf/util/values.o
CC /tmp/build/perf/util/debug.o
CC /tmp/build/perf/util/fncache.o
CC /tmp/build/perf/util/machine.o
CC /tmp/build/perf/util/map.o
CC /tmp/build/perf/util/pstack.o
CC /tmp/build/perf/util/session.o
CC /tmp/build/perf/util/sample-raw.o
CC /tmp/build/perf/util/s390-sample-raw.o
CC /tmp/build/perf/util/syscalltbl.o
CC /tmp/build/perf/util/ordered-events.o
CC /tmp/build/perf/util/namespaces.o
CC /tmp/build/perf/util/comm.o
CC /tmp/build/perf/util/thread.o
CC /tmp/build/perf/util/thread_map.o
CC /tmp/build/perf/util/trace-event-parse.o
FLEX /tmp/build/perf/util/parse-events-flex.h
BISON /tmp/build/perf/util/pmu-bison.c
CC /tmp/build/perf/util/trace-event-read.o
CC /tmp/build/perf/util/trace-event-info.o
CC /tmp/build/perf/util/trace-event-scripting.o
CC /tmp/build/perf/util/trace-event.o
CC /tmp/build/perf/util/svghelper.o
CC /tmp/build/perf/util/sort.o
CC /tmp/build/perf/util/hist.o
CC /tmp/build/perf/util/util.o
CC /tmp/build/perf/util/cpumap.o
CC /tmp/build/perf/util/affinity.o
CC /tmp/build/perf/util/cputopo.o
CC /tmp/build/perf/util/cgroup.o
CC /tmp/build/perf/util/target.o
CC /tmp/build/perf/util/rblist.o
CC /tmp/build/perf/util/intlist.o
CC /tmp/build/perf/util/vdso.o
CC /tmp/build/perf/util/counts.o
CC /tmp/build/perf/util/stat.o
CC /tmp/build/perf/util/stat-shadow.o
CC /tmp/build/perf/util/stat-display.o
CC /tmp/build/perf/util/perf_api_probe.o
CC /tmp/build/perf/util/record.o
CC /tmp/build/perf/util/srcline.o
CC /tmp/build/perf/util/srccode.o
CC /tmp/build/perf/util/synthetic-events.o
CC /tmp/build/perf/util/data.o
CC /tmp/build/perf/util/tsc.o
CC /tmp/build/perf/util/cloexec.o
CC /tmp/build/perf/util/call-path.o
CC /tmp/build/perf/util/rwsem.o
CC /tmp/build/perf/util/thread-stack.o
CC /tmp/build/perf/util/spark.o
CC /tmp/build/perf/util/auxtrace.o
MKDIR /tmp/build/perf/util/intel-pt-decoder/
CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-pkt-decoder.o
MKDIR /tmp/build/perf/util/intel-pt-decoder/
GEN /tmp/build/perf/util/intel-pt-decoder/inat-tables.c
MKDIR /tmp/build/perf/util/arm-spe-decoder/
CC /tmp/build/perf/util/arm-spe-decoder/arm-spe-pkt-decoder.o
MKDIR /tmp/build/perf/util/scripting-engines/
CC /tmp/build/perf/util/scripting-engines/trace-event-perl.o
CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-log.o
CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-decoder.o
MKDIR /tmp/build/perf/util/arm-spe-decoder/
MKDIR /tmp/build/perf/util/scripting-engines/
CC /tmp/build/perf/util/arm-spe-decoder/arm-spe-decoder.o
CC /tmp/build/perf/util/scripting-engines/trace-event-python.o
LD /tmp/build/perf/util/arm-spe-decoder/perf-in.o
CC /tmp/build/perf/util/intel-pt.o
CC /tmp/build/perf/util/intel-bts.o
CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-insn-decoder.o
CC /tmp/build/perf/util/arm-spe.o
CC /tmp/build/perf/util/s390-cpumsf.o
CC /tmp/build/perf/util/parse-branch-options.o
CC /tmp/build/perf/util/dump-insn.o
CC /tmp/build/perf/util/parse-regs-options.o
CC /tmp/build/perf/util/term.o
CC /tmp/build/perf/util/help-unknown-cmd.o
CC /tmp/build/perf/util/mem-events.o
CC /tmp/build/perf/util/vsprintf.o
CC /tmp/build/perf/util/units.o
CC /tmp/build/perf/util/time-utils.o
BISON /tmp/build/perf/util/expr-bison.c
CC /tmp/build/perf/util/branch.o
CC /tmp/build/perf/util/mem2node.o
CC /tmp/build/perf/util/bpf-loader.o
CC /tmp/build/perf/util/bpf_map.o
LD /tmp/build/perf/util/intel-pt-decoder/perf-in.o
LD /tmp/build/perf/util/scripting-engines/perf-in.o
CC /tmp/build/perf/util/symbol-elf.o
CC /tmp/build/perf/util/probe-file.o
CC /tmp/build/perf/util/probe-event.o
CC /tmp/build/perf/util/unwind-libunwind-local.o
CC /tmp/build/perf/util/unwind-libunwind.o
CC /tmp/build/perf/util/zlib.o
CC /tmp/build/perf/util/lzma.o
CC /tmp/build/perf/util/zstd.o
CC /tmp/build/perf/util/cap.o
CC /tmp/build/perf/util/demangle-java.o
CC /tmp/build/perf/util/demangle-rust.o
CC /tmp/build/perf/util/jitdump.o
CC /tmp/build/perf/util/genelf.o
CC /tmp/build/perf/util/perf-hooks.o
CC /tmp/build/perf/util/bpf-event.o
FLEX /tmp/build/perf/util/parse-events-flex.c
CC /tmp/build/perf/util/parse-events-bison.o
FLEX /tmp/build/perf/util/pmu-flex.c
CC /tmp/build/perf/util/pmu-bison.o
FLEX /tmp/build/perf/util/expr-flex.c
In file included from util/parse-events.y:20:0:
/tmp/build/perf/util/parse-events-flex.h:546:0: error: unterminated #else
#ifndef YY_READ_BUF_SIZE
/tmp/build/perf/util/parse-events-flex.h:545:0: error: unterminated #ifndef
/* Amount of stuff to slurp up with each read. */
In file included from util/parse-events.y:20:0:
/tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
#ifndef parse_events_HEADER_H
mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
make[4]: *** [/git/linux/tools/build/Makefile.build:96: /tmp/build/perf/util/parse-events-bison.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [/git/linux/tools/build/Makefile.build:139: util] Error 2
make[2]: *** [Makefile.perf:625: /tmp/build/perf/perf-in.o] Error 2
make[1]: *** [Makefile.perf:231: sub-make] Error 2
make: *** [Makefile:70: all] Error 2
make: Leaving directory '/git/linux/tools/perf'
1 alpine:3.4 : FAIL gcc (Alpine 5.3.0) 5.3.0, clang version 3.8.0 (tags/RELEASE_380/final)
2 alpine:3.5 : FAIL gcc (Alpine 6.2.1) 6.2.1 20160822, clang version 3.8.1 (tags/RELEASE_381/final)
CC /tmp/build/perf/util/parse-events-bison.o
In file included from util/parse-events.y:20:0:
/tmp/build/perf/util/parse-events-flex.h:323:0: error: unterminated #ifndef
#ifndef YY_DECL
^
In file included from util/parse-events.y:20:0:
/tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
#ifndef parse_events_HEADER_H
^
mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
/git/linux/tools/build/Makefile.build:96: recipe for target '/tmp/build/perf/util/parse-events-bison.o' failed
make[4]: *** [/tmp/build/perf/util/parse-events-bison.o] Error 1
make[4]: *** Waiting for unfinished jobs....
LD /tmp/build/perf/util/intel-pt-decoder/perf-in.o
/git/linux/tools/build/Makefile.build:139: recipe for target 'util' failed
Slightly different:
3 alpine:3.6 : FAIL gcc (Alpine 6.3.0) 6.3.0, clang version 4.0.0 (tags/RELEASE_400/final)
CC /tmp/build/perf/util/perf-hooks.o
FLEX /tmp/build/perf/util/parse-events-flex.c
CC /tmp/build/perf/util/parse-events-bison.o
FLEX /tmp/build/perf/util/pmu-flex.c
In file included from util/parse-events.y:20:0:
/tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
#ifndef parse_events_HEADER_H
mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
make[4]: *** [/git/linux/tools/build/Makefile.build:97: /tmp/build/perf/util/parse-events-bison.o] Error 1
make[4]: *** Waiting for unfinished jobs....
4 alpine:3.7 : FAIL gcc (Alpine 6.4.0) 6.4.0, Alpine clang version 5.0.0 (tags/RELEASE_500/final) (based on LLVM 5.0.0)
CC /tmp/build/perf/util/pmu-bison.o
In file included from util/parse-events.y:20:0:
/tmp/build/perf/util/parse-events-flex.h:546:0: error: unterminated #else
#ifndef YY_READ_BUF_SIZE
/tmp/build/perf/util/parse-events-flex.h:545:0: error: unterminated #ifndef
/* Amount of stuff to slurp up with each read. */
In file included from util/parse-events.y:20:0:
/tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
#ifndef parse_events_HEADER_H
FLEX /tmp/build/perf/util/expr-flex.c
mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
make[4]: *** [/git/linux/tools/build/Makefile.build:96: /tmp/build/perf/util/parse-events-bison.o] Error 1
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings
2020-06-19 12:15 ` Arnaldo Carvalho de Melo
@ 2020-06-19 12:20 ` Arnaldo Carvalho de Melo
2020-06-19 15:15 ` Ian Rogers
0 siblings, 1 reply; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2020-06-19 12:20 UTC (permalink / raw)
To: Ian Rogers
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, Andi Kleen, Jin Yao, John Garry,
Adrian Hunter, linux-kernel, Stephane Eranian
Em Fri, Jun 19, 2020 at 09:15:57AM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Thu, Jun 18, 2020 at 09:33:46PM -0700, Ian Rogers escreveu:
> > All C compiler warnings are disabled are disabled by -w. This change
> > removes the -w from flex and bison targets. To avoid implicit
> > declarations header files are declared as targets and included.
> >
> > Tested with GCC 9.3.0 and clang 9.0.1.
> >
> > v2. predicates disabling the warnings on more recent bison and flex
> > versions (3.5.3 and 2.6.4 respectively). An alternative would be
> > to disabled a large number of warnings to cover the warnings
> > generated in older distributions:
> > flex_flags := -Wno-switch-enum -Wno-switch-default -Wno-unused-function \
> > -Wno-redundant-decls -Wno-sign-compare -Wno-unused-parameter \
> > -Wno-missing-prototypes -Wno-misleading-indentation
> > bison_flags := -DYYENABLE_NLS=0 -Wno-unused-parameter -Wno-nested-externs \
> > -Wno-implicit-function-declaration -Wno-switch-enum
>
> So, it is failing with older versions of alpine Linux, but then at
> alpine 3.8 I noticed that the problem is happening only when building
> with this following set of options, and when building with gcc, building
> with clang, i.e. adding CC=clang to the following make command line
> works.
I'll also check if this isn't because these container tests do multiple
make calls, with different sets of options (NO_LIBBPF=1, another with
NO_LIBELF=1, the one with LIBCLANGLLVM=1, etc) and perhaps the stuff
from previous builds pollute a subsequent build, i.e. will try adding a
rm -rf to the O= directory if missing.
> + make 'ARCH=' 'CROSS_COMPILE=' 'EXTRA_CFLAGS=' 'LIBCLANGLLVM=1' -C /git/linux/tools/perf 'O=/tmp/build/perf'
> make: Entering directory '/git/linux/tools/perf'
> BUILD: Doing 'make -j8' parallel build
> HOSTCC /tmp/build/perf/fixdep.o
> HOSTLD /tmp/build/perf/fixdep-in.o
> LINK /tmp/build/perf/fixdep
>
> Auto-detecting system features:
> ... dwarf: [ OFF ]
> ... dwarf_getlocations: [ OFF ]
> ... glibc: [ OFF ]
> ... gtk2: [ on ]
> ... libbfd: [ on ]
> ... libcap: [ on ]
> ... libelf: [ on ]
> ... libnuma: [ OFF ]
> ... numa_num_possible_cpus: [ OFF ]
> ... libperl: [ on ]
> ... libpython: [ on ]
> ... libcrypto: [ on ]
> ... libunwind: [ on ]
> ... libdw-dwarf-unwind: [ OFF ]
> ... zlib: [ on ]
> ... lzma: [ on ]
> ... get_cpuid: [ on ]
> ... bpf: [ on ]
> ... libaio: [ on ]
> ... libzstd: [ on ]
> ... disassembler-four-args: [ on ]
>
> Makefile.config:409: No libdw DWARF unwind found, Please install elfutils-devel/libdw-dev >= 0.158 and/or set LIBDW_DIR
> Makefile.config:414: No libdw.h found or old libdw.h found or elfutils is older than 0.138, disables dwarf support. Please install new elfutils-devel/libdw-dev
> Makefile.config:485: gelf_getnote() not found on libelf, SDT support disabled
> Makefile.config:528: DWARF support is off, BPF prologue is disabled
> Makefile.config:536: No sys/sdt.h found, no SDT events are defined, please install systemtap-sdt-devel or systemtap-sdt-dev
> Makefile.config:890: No numa.h found, disables 'perf bench numa mem' benchmark, please install numactl-devel/libnuma-devel/libnuma-dev
> Makefile.config:945: No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev
> Makefile.config:971: No alternatives command found, you need to set JDIR= to point to the root of your Java directory
> Makefile.config:1008: No suitable libclang found, disabling builtin clang and LLVM support. Please install libclang-dev(el) (>= 3.9.0)
> GEN /tmp/build/perf/common-cmds.h
> sort: unrecognized option: V
> BusyBox v1.28.4 (2018-12-31 18:05:13 UTC) multi-call binary.
> PERF_VERSION = 5.7.g6f01af8176af
>
> Usage: sort [-nrugMcszbdfiokt] [-o FILE] [-k start[.offset][opts][,end[.offset][opts]] [-t CHAR] [FILE]...
>
> Sort lines of text
>
> -o FILE Output to FILE
> -c Check whether input is sorted
> -b Ignore leading blanks
> -f Ignore case
> -i Ignore unprintable characters
> -d Dictionary order (blank or alphanumeric only)
> -g General numerical sort
> -M Sort month
> -n Sort numbers
> -t CHAR Field separator
> -k N[,M] Sort by Nth field
> -r Reverse sort order
> -s Stable (don't sort ties alphabetically)
> -u Suppress duplicate lines
> -z Lines are terminated by NUL, not newline
> CC /tmp/build/perf/exec-cmd.o
> CC /tmp/build/perf/event-parse.o
> MKDIR /tmp/build/perf/fd/
> CC /tmp/build/perf/fd/array.o
> GEN /tmp/build/perf/bpf_helper_defs.h
> CC /tmp/build/perf/event-plugin.o
> CC /tmp/build/perf/core.o
> LD /tmp/build/perf/fd/libapi-in.o
> MKDIR /tmp/build/perf/fs/
> CC /tmp/build/perf/fs/fs.o
> CC /tmp/build/perf/cpumap.o
> CC /tmp/build/perf/trace-seq.o
> CC /tmp/build/perf/threadmap.o
> CC /tmp/build/perf/help.o
> MKDIR /tmp/build/perf/staticobjs/
> CC /tmp/build/perf/staticobjs/libbpf.o
> MKDIR /tmp/build/perf/staticobjs/
> CC /tmp/build/perf/staticobjs/bpf.o
> CC /tmp/build/perf/cpu.o
> CC /tmp/build/perf/parse-filter.o
> CC /tmp/build/perf/evsel.o
> CC /tmp/build/perf/evlist.o
> CC /tmp/build/perf/pager.o
> CC /tmp/build/perf/parse-options.o
> CC /tmp/build/perf/parse-utils.o
> CC /tmp/build/perf/mmap.o
> CC /tmp/build/perf/kbuffer-parse.o
> CC /tmp/build/perf/zalloc.o
> CC /tmp/build/perf/tep_strerror.o
> CC /tmp/build/perf/xyarray.o
> CC /tmp/build/perf/event-parse-api.o
> CC /tmp/build/perf/run-command.o
> CC /tmp/build/perf/sigchain.o
> LD /tmp/build/perf/libtraceevent-in.o
> LINK /tmp/build/perf/libtraceevent.a
> MKDIR /tmp/build/perf/fs/
> CC /tmp/build/perf/fs/tracing_path.o
> CC /tmp/build/perf/debug.o
> CC /tmp/build/perf/str_error_r.o
> CC /tmp/build/perf/fs/cgroup.o
> CC /tmp/build/perf/subcmd-config.o
> CC /tmp/build/perf/lib.o
> CC /tmp/build/perf/staticobjs/nlattr.o
> CC /tmp/build/perf/staticobjs/btf.o
> CC /tmp/build/perf/staticobjs/libbpf_errno.o
> LD /tmp/build/perf/fs/libapi-in.o
> CC /tmp/build/perf/staticobjs/str_error.o
> CC /tmp/build/perf/staticobjs/netlink.o
> LD /tmp/build/perf/libapi-in.o
> AR /tmp/build/perf/libapi.a
> CC /tmp/build/perf/staticobjs/bpf_prog_linfo.o
> LD /tmp/build/perf/libperf-in.o
> AR /tmp/build/perf/libperf.a
> CC /tmp/build/perf/staticobjs/libbpf_probes.o
> CC /tmp/build/perf/staticobjs/xsk.o
> LD /tmp/build/perf/libsubcmd-in.o
> CC /tmp/build/perf/staticobjs/hashmap.o
> AR /tmp/build/perf/libsubcmd.a
> CC /tmp/build/perf/staticobjs/btf_dump.o
> CC /tmp/build/perf/staticobjs/ringbuf.o
> MKDIR /tmp/build/perf/pmu-events/
> GEN perf-archive
> HOSTCC /tmp/build/perf/pmu-events/json.o
> GEN perf-with-kcore
> MKDIR /tmp/build/perf/ui/gtk/
> MKDIR /tmp/build/perf/pmu-events/
> CC /tmp/build/perf/ui/gtk/browser.o
> HOSTCC /tmp/build/perf/pmu-events/jsmn.o
> HOSTCC /tmp/build/perf/pmu-events/jevents.o
> CC /tmp/build/perf/plugin_jbd2.o
> CC /tmp/build/perf/plugin_hrtimer.o
> CC /tmp/build/perf/plugin_kmem.o
> CC /tmp/build/perf/plugin_kvm.o
> LD /tmp/build/perf/plugin_hrtimer-in.o
> LD /tmp/build/perf/plugin_jbd2-in.o
> LD /tmp/build/perf/plugin_kmem-in.o
> CC /tmp/build/perf/plugin_mac80211.o
> CC /tmp/build/perf/plugin_sched_switch.o
> CC /tmp/build/perf/plugin_function.o
> LD /tmp/build/perf/plugin_kvm-in.o
> LD /tmp/build/perf/plugin_mac80211-in.o
> MKDIR /tmp/build/perf/ui/gtk/
> CC /tmp/build/perf/plugin_xen.o
> CC /tmp/build/perf/ui/gtk/hists.o
> LD /tmp/build/perf/plugin_sched_switch-in.o
> LD /tmp/build/perf/staticobjs/libbpf-in.o
> LD /tmp/build/perf/plugin_xen-in.o
> LINK /tmp/build/perf/libbpf.a
> CC /tmp/build/perf/plugin_scsi.o
> LD /tmp/build/perf/plugin_function-in.o
> CC /tmp/build/perf/plugin_cfg80211.o
> HOSTLD /tmp/build/perf/pmu-events/jevents-in.o
> CC /tmp/build/perf/ui/gtk/setup.o
> LINK /tmp/build/perf/plugin_jbd2.so
> LINK /tmp/build/perf/pmu-events/jevents
> GEN /tmp/build/perf/pmu-events/pmu-events.c
> LINK /tmp/build/perf/plugin_hrtimer.so
> LD /tmp/build/perf/plugin_cfg80211-in.o
> LD /tmp/build/perf/plugin_scsi-in.o
> LINK /tmp/build/perf/plugin_kmem.so
> LINK /tmp/build/perf/plugin_kvm.so
> CC /tmp/build/perf/ui/gtk/util.o
> LINK /tmp/build/perf/plugin_mac80211.so
> LINK /tmp/build/perf/plugin_sched_switch.so
> LINK /tmp/build/perf/plugin_function.so
> LINK /tmp/build/perf/plugin_xen.so
> LINK /tmp/build/perf/plugin_scsi.so
> LINK /tmp/build/perf/plugin_cfg80211.so
> CC /tmp/build/perf/ui/gtk/helpline.o
> GEN /tmp/build/perf/libtraceevent-dynamic-list
> GEN /tmp/build/perf/python/perf.so
> CC /tmp/build/perf/ui/gtk/progress.o
> CC /tmp/build/perf/pmu-events/pmu-events.o
> CC /tmp/build/perf/ui/gtk/annotate.o
> CC /tmp/build/perf/builtin-bench.o
> CC /tmp/build/perf/ui/gtk/zalloc.o
> CC /tmp/build/perf/builtin-annotate.o
> CC /tmp/build/perf/builtin-config.o
> CC /tmp/build/perf/builtin-diff.o
> CC /tmp/build/perf/builtin-evlist.o
> CC /tmp/build/perf/builtin-ftrace.o
> CC /tmp/build/perf/builtin-help.o
> CC /tmp/build/perf/builtin-sched.o
> CC /tmp/build/perf/builtin-buildid-list.o
> LD /tmp/build/perf/pmu-events/pmu-events-in.o
> LD /tmp/build/perf/ui/gtk/gtk-in.o
> CC /tmp/build/perf/builtin-buildid-cache.o
> CC /tmp/build/perf/builtin-kallsyms.o
> CC /tmp/build/perf/builtin-list.o
> CC /tmp/build/perf/builtin-record.o
> CC /tmp/build/perf/builtin-report.o
> LD /tmp/build/perf/gtk-in.o
> LINK /tmp/build/perf/libperf-gtk.so
> CC /tmp/build/perf/builtin-stat.o
> CC /tmp/build/perf/builtin-timechart.o
> CC /tmp/build/perf/builtin-top.o
> CC /tmp/build/perf/builtin-script.o
> CC /tmp/build/perf/builtin-kmem.o
> CC /tmp/build/perf/builtin-lock.o
> CC /tmp/build/perf/builtin-kvm.o
> CC /tmp/build/perf/builtin-inject.o
> CC /tmp/build/perf/builtin-mem.o
> CC /tmp/build/perf/builtin-data.o
> CC /tmp/build/perf/builtin-version.o
> CC /tmp/build/perf/builtin-c2c.o
> CC /tmp/build/perf/builtin-trace.o
> CC /tmp/build/perf/builtin-probe.o
> MKDIR /tmp/build/perf/bench/
> CC /tmp/build/perf/bench/sched-messaging.o
> MKDIR /tmp/build/perf/tests/
> CC /tmp/build/perf/tests/builtin-test.o
> MKDIR /tmp/build/perf/bench/
> CC /tmp/build/perf/bench/sched-pipe.o
> MKDIR /tmp/build/perf/util/
> CC /tmp/build/perf/util/annotate.o
> CC /tmp/build/perf/bench/mem-functions.o
> CC /tmp/build/perf/arch/common.o
> MKDIR /tmp/build/perf/tests/
> MKDIR /tmp/build/perf/arch/x86/util/
> CC /tmp/build/perf/arch/x86/util/header.o
> CC /tmp/build/perf/bench/futex-hash.o
> CC /tmp/build/perf/tests/parse-events.o
> CC /tmp/build/perf/bench/futex-wake.o
> MKDIR /tmp/build/perf/arch/x86/util/
> CC /tmp/build/perf/arch/x86/util/tsc.o
> CC /tmp/build/perf/arch/x86/util/pmu.o
> CC /tmp/build/perf/arch/x86/util/kvm-stat.o
> CC /tmp/build/perf/bench/futex-wake-parallel.o
> CC /tmp/build/perf/arch/x86/util/perf_regs.o
> CC /tmp/build/perf/bench/futex-requeue.o
> CC /tmp/build/perf/bench/futex-lock-pi.o
> CC /tmp/build/perf/arch/x86/util/group.o
> CC /tmp/build/perf/arch/x86/util/machine.o
> CC /tmp/build/perf/arch/x86/util/event.o
> CC /tmp/build/perf/arch/x86/util/unwind-libunwind.o
> CC /tmp/build/perf/arch/x86/util/auxtrace.o
> CC /tmp/build/perf/bench/epoll-wait.o
> MKDIR /tmp/build/perf/arch/x86/tests/
> CC /tmp/build/perf/arch/x86/tests/regs_load.o
> MKDIR /tmp/build/perf/util/
> CC /tmp/build/perf/util/block-info.o
> MKDIR /tmp/build/perf/arch/x86/tests/
> CC /tmp/build/perf/arch/x86/tests/dwarf-unwind.o
> CC /tmp/build/perf/arch/x86/util/archinsn.o
> CC /tmp/build/perf/arch/x86/tests/arch-tests.o
> CC /tmp/build/perf/bench/epoll-ctl.o
> CC /tmp/build/perf/arch/x86/tests/rdpmc.o
> CC /tmp/build/perf/tests/dso-data.o
> CC /tmp/build/perf/arch/x86/util/intel-pt.o
> CC /tmp/build/perf/arch/x86/tests/perf-time-to-tsc.o
> CC /tmp/build/perf/bench/synthesize.o
> CC /tmp/build/perf/util/block-range.o
> CC /tmp/build/perf/bench/kallsyms-parse.o
> CC /tmp/build/perf/arch/x86/tests/insn-x86.o
> CC /tmp/build/perf/util/build-id.o
> CC /tmp/build/perf/util/cacheline.o
> CC /tmp/build/perf/bench/mem-memcpy-x86-64-lib.o
> CC /tmp/build/perf/tests/attr.o
> CC /tmp/build/perf/bench/mem-memcpy-x86-64-asm.o
> CC /tmp/build/perf/bench/mem-memset-x86-64-asm.o
> CC /tmp/build/perf/util/config.o
> CC /tmp/build/perf/arch/x86/util/intel-bts.o
> LD /tmp/build/perf/bench/perf-in.o
> CC /tmp/build/perf/arch/x86/tests/intel-pt-pkt-decoder-test.o
> CC /tmp/build/perf/ui/setup.o
> CC /tmp/build/perf/tests/vmlinux-kallsyms.o
> CC /tmp/build/perf/arch/x86/tests/bp-modify.o
> CC /tmp/build/perf/ui/helpline.o
> LD /tmp/build/perf/arch/x86/util/perf-in.o
> CC /tmp/build/perf/ui/progress.o
> CC /tmp/build/perf/tests/openat-syscall.o
> LD /tmp/build/perf/arch/x86/tests/perf-in.o
> CC /tmp/build/perf/tests/openat-syscall-all-cpus.o
> LD /tmp/build/perf/arch/x86/perf-in.o
> LD /tmp/build/perf/arch/perf-in.o
> CC /tmp/build/perf/tests/openat-syscall-tp-fields.o
> CC /tmp/build/perf/ui/util.o
> CC /tmp/build/perf/ui/hist.o
> CC /tmp/build/perf/util/copyfile.o
> CC /tmp/build/perf/tests/mmap-basic.o
> MKDIR /tmp/build/perf/ui/stdio/
> CC /tmp/build/perf/ui/stdio/hist.o
> CC /tmp/build/perf/tests/perf-record.o
> CC /tmp/build/perf/util/ctype.o
> CC /tmp/build/perf/util/db-export.o
> CC /tmp/build/perf/tests/evsel-roundtrip-name.o
> CC /tmp/build/perf/tests/evsel-tp-sched.o
> MKDIR /tmp/build/perf/scripts/perl/Perf-Trace-Util/
> CC /tmp/build/perf/scripts/perl/Perf-Trace-Util/Context.o
> CC /tmp/build/perf/tests/fdarray.o
> CC /tmp/build/perf/tests/pmu.o
> CC /tmp/build/perf/tests/pmu-events.o
> CC /tmp/build/perf/tests/hists_common.o
> CC /tmp/build/perf/tests/hists_link.o
> LD /tmp/build/perf/scripts/perl/Perf-Trace-Util/perf-in.o
> MKDIR /tmp/build/perf/scripts/python/Perf-Trace-Util/
> CC /tmp/build/perf/ui/browser.o
> CC /tmp/build/perf/scripts/python/Perf-Trace-Util/Context.o
> CC /tmp/build/perf/tests/hists_filter.o
> CC /tmp/build/perf/util/env.o
> CC /tmp/build/perf/tests/hists_output.o
> CC /tmp/build/perf/tests/hists_cumulate.o
> LD /tmp/build/perf/scripts/python/Perf-Trace-Util/perf-in.o
> LD /tmp/build/perf/scripts/perf-in.o
> CC /tmp/build/perf/trace/beauty/clone.o
> CC /tmp/build/perf/perf.o
> CC /tmp/build/perf/trace/beauty/fcntl.o
> MKDIR /tmp/build/perf/ui/browsers/
> CC /tmp/build/perf/ui/browsers/annotate.o
> CC /tmp/build/perf/util/event.o
> CC /tmp/build/perf/tests/python-use.o
> CC /tmp/build/perf/trace/beauty/flock.o
> CC /tmp/build/perf/trace/beauty/fsmount.o
> CC /tmp/build/perf/trace/beauty/fspick.o
> CC /tmp/build/perf/trace/beauty/ioctl.o
> CC /tmp/build/perf/trace/beauty/kcmp.o
> CC /tmp/build/perf/tests/bp_signal.o
> CC /tmp/build/perf/tests/bp_signal_overflow.o
> CC /tmp/build/perf/trace/beauty/mount_flags.o
> CC /tmp/build/perf/trace/beauty/move_mount.o
> CC /tmp/build/perf/trace/beauty/pkey_alloc.o
> CC /tmp/build/perf/trace/beauty/arch_prctl.o
> CC /tmp/build/perf/trace/beauty/prctl.o
> CC /tmp/build/perf/tests/bp_account.o
> CC /tmp/build/perf/trace/beauty/renameat.o
> CC /tmp/build/perf/tests/wp.o
> CC /tmp/build/perf/tests/task-exit.o
> CC /tmp/build/perf/util/evlist.o
> CC /tmp/build/perf/trace/beauty/sockaddr.o
> CC /tmp/build/perf/trace/beauty/socket.o
> CC /tmp/build/perf/trace/beauty/statx.o
> CC /tmp/build/perf/trace/beauty/sync_file_range.o
> CC /tmp/build/perf/util/sideband_evlist.o
> MKDIR /tmp/build/perf/ui/browsers/
> CC /tmp/build/perf/ui/browsers/hists.o
> CC /tmp/build/perf/ui/browsers/map.o
> MKDIR /tmp/build/perf/trace/beauty/tracepoints/
> CC /tmp/build/perf/trace/beauty/tracepoints/x86_irq_vectors.o
> MKDIR /tmp/build/perf/trace/beauty/tracepoints/
> CC /tmp/build/perf/trace/beauty/tracepoints/x86_msr.o
> CC /tmp/build/perf/util/evsel.o
> LD /tmp/build/perf/trace/beauty/tracepoints/perf-in.o
> LD /tmp/build/perf/trace/beauty/perf-in.o
> CC /tmp/build/perf/tests/sw-clock.o
> CC /tmp/build/perf/util/evsel_fprintf.o
> CC /tmp/build/perf/util/perf_event_attr_fprintf.o
> CC /tmp/build/perf/tests/mmap-thread-lookup.o
> CC /tmp/build/perf/util/evswitch.o
> CC /tmp/build/perf/tests/thread-maps-share.o
> CC /tmp/build/perf/tests/switch-tracking.o
> CC /tmp/build/perf/util/find_bit.o
> CC /tmp/build/perf/util/get_current_dir_name.o
> CC /tmp/build/perf/util/kallsyms.o
> MKDIR /tmp/build/perf/ui/tui/
> CC /tmp/build/perf/tests/keep-tracking.o
> CC /tmp/build/perf/ui/tui/setup.o
> CC /tmp/build/perf/util/levenshtein.o
> CC /tmp/build/perf/util/llvm-utils.o
> CC /tmp/build/perf/util/mmap.o
> CC /tmp/build/perf/util/memswap.o
> MKDIR /tmp/build/perf/ui/tui/
> CC /tmp/build/perf/ui/tui/util.o
> CC /tmp/build/perf/tests/code-reading.o
> CC /tmp/build/perf/tests/sample-parsing.o
> CC /tmp/build/perf/ui/tui/helpline.o
> CC /tmp/build/perf/tests/parse-no-sample-id-all.o
> CC /tmp/build/perf/ui/tui/progress.o
> CC /tmp/build/perf/tests/kmod-path.o
> CC /tmp/build/perf/tests/thread-map.o
> LD /tmp/build/perf/ui/tui/perf-in.o
> CC /tmp/build/perf/tests/llvm.o
> CC /tmp/build/perf/tests/bpf.o
> CC /tmp/build/perf/tests/topology.o
> CC /tmp/build/perf/tests/mem.o
> CC /tmp/build/perf/tests/cpumap.o
> CC /tmp/build/perf/tests/stat.o
> CC /tmp/build/perf/tests/event_update.o
> CC /tmp/build/perf/ui/browsers/scripts.o
> CC /tmp/build/perf/ui/browsers/header.o
> CC /tmp/build/perf/tests/event-times.o
> CC /tmp/build/perf/ui/browsers/res_sample.o
> CC /tmp/build/perf/tests/expr.o
> CC /tmp/build/perf/tests/backward-ring-buffer.o
> CC /tmp/build/perf/tests/sdt.o
> CC /tmp/build/perf/tests/is_printable_array.o
> CC /tmp/build/perf/tests/bitmap.o
> BISON /tmp/build/perf/util/parse-events-bison.c
> CC /tmp/build/perf/tests/perf-hooks.o
> CC /tmp/build/perf/tests/clang.o
> CC /tmp/build/perf/util/perf_regs.o
> CC /tmp/build/perf/tests/unit_number__scnprintf.o
> CC /tmp/build/perf/tests/mem2node.o
> CC /tmp/build/perf/tests/maps.o
> CC /tmp/build/perf/tests/time-utils-test.o
> CC /tmp/build/perf/tests/genelf.o
> CC /tmp/build/perf/tests/api-io.o
> CC /tmp/build/perf/tests/demangle-java-test.o
> CC /tmp/build/perf/util/path.o
> CC /tmp/build/perf/util/print_binary.o
> CC /tmp/build/perf/tests/pfm.o
> CC /tmp/build/perf/tests/parse-metric.o
> CC /tmp/build/perf/util/rlimit.o
> CC /tmp/build/perf/tests/dwarf-unwind.o
> CC /tmp/build/perf/util/argv_split.o
> CC /tmp/build/perf/util/rbtree.o
> CC /tmp/build/perf/util/libstring.o
> CC /tmp/build/perf/util/bitmap.o
> CC /tmp/build/perf/tests/llvm-src-base.o
> CC /tmp/build/perf/tests/llvm-src-kbuild.o
> CC /tmp/build/perf/tests/llvm-src-prologue.o
> CC /tmp/build/perf/tests/llvm-src-relocation.o
> CC /tmp/build/perf/util/hweight.o
> CC /tmp/build/perf/util/smt.o
> CC /tmp/build/perf/util/strbuf.o
> CC /tmp/build/perf/util/string.o
> LD /tmp/build/perf/tests/perf-in.o
> CC /tmp/build/perf/util/strlist.o
> CC /tmp/build/perf/util/strfilter.o
> CC /tmp/build/perf/util/top.o
> CC /tmp/build/perf/util/usage.o
> CC /tmp/build/perf/util/dso.o
> CC /tmp/build/perf/util/dsos.o
> CC /tmp/build/perf/util/symbol.o
> CC /tmp/build/perf/util/symbol_fprintf.o
> CC /tmp/build/perf/util/color.o
> CC /tmp/build/perf/util/color_config.o
> CC /tmp/build/perf/util/metricgroup.o
> CC /tmp/build/perf/util/header.o
> LD /tmp/build/perf/ui/browsers/perf-in.o
> CC /tmp/build/perf/util/callchain.o
> LD /tmp/build/perf/ui/perf-in.o
> CC /tmp/build/perf/util/values.o
> CC /tmp/build/perf/util/debug.o
> CC /tmp/build/perf/util/fncache.o
> CC /tmp/build/perf/util/machine.o
> CC /tmp/build/perf/util/map.o
> CC /tmp/build/perf/util/pstack.o
> CC /tmp/build/perf/util/session.o
> CC /tmp/build/perf/util/sample-raw.o
> CC /tmp/build/perf/util/s390-sample-raw.o
> CC /tmp/build/perf/util/syscalltbl.o
> CC /tmp/build/perf/util/ordered-events.o
> CC /tmp/build/perf/util/namespaces.o
> CC /tmp/build/perf/util/comm.o
> CC /tmp/build/perf/util/thread.o
> CC /tmp/build/perf/util/thread_map.o
> CC /tmp/build/perf/util/trace-event-parse.o
> FLEX /tmp/build/perf/util/parse-events-flex.h
> BISON /tmp/build/perf/util/pmu-bison.c
> CC /tmp/build/perf/util/trace-event-read.o
> CC /tmp/build/perf/util/trace-event-info.o
> CC /tmp/build/perf/util/trace-event-scripting.o
> CC /tmp/build/perf/util/trace-event.o
> CC /tmp/build/perf/util/svghelper.o
> CC /tmp/build/perf/util/sort.o
> CC /tmp/build/perf/util/hist.o
> CC /tmp/build/perf/util/util.o
> CC /tmp/build/perf/util/cpumap.o
> CC /tmp/build/perf/util/affinity.o
> CC /tmp/build/perf/util/cputopo.o
> CC /tmp/build/perf/util/cgroup.o
> CC /tmp/build/perf/util/target.o
> CC /tmp/build/perf/util/rblist.o
> CC /tmp/build/perf/util/intlist.o
> CC /tmp/build/perf/util/vdso.o
> CC /tmp/build/perf/util/counts.o
> CC /tmp/build/perf/util/stat.o
> CC /tmp/build/perf/util/stat-shadow.o
> CC /tmp/build/perf/util/stat-display.o
> CC /tmp/build/perf/util/perf_api_probe.o
> CC /tmp/build/perf/util/record.o
> CC /tmp/build/perf/util/srcline.o
> CC /tmp/build/perf/util/srccode.o
> CC /tmp/build/perf/util/synthetic-events.o
> CC /tmp/build/perf/util/data.o
> CC /tmp/build/perf/util/tsc.o
> CC /tmp/build/perf/util/cloexec.o
> CC /tmp/build/perf/util/call-path.o
> CC /tmp/build/perf/util/rwsem.o
> CC /tmp/build/perf/util/thread-stack.o
> CC /tmp/build/perf/util/spark.o
> CC /tmp/build/perf/util/auxtrace.o
> MKDIR /tmp/build/perf/util/intel-pt-decoder/
> CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-pkt-decoder.o
> MKDIR /tmp/build/perf/util/intel-pt-decoder/
> GEN /tmp/build/perf/util/intel-pt-decoder/inat-tables.c
> MKDIR /tmp/build/perf/util/arm-spe-decoder/
> CC /tmp/build/perf/util/arm-spe-decoder/arm-spe-pkt-decoder.o
> MKDIR /tmp/build/perf/util/scripting-engines/
> CC /tmp/build/perf/util/scripting-engines/trace-event-perl.o
> CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-log.o
> CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-decoder.o
> MKDIR /tmp/build/perf/util/arm-spe-decoder/
> MKDIR /tmp/build/perf/util/scripting-engines/
> CC /tmp/build/perf/util/arm-spe-decoder/arm-spe-decoder.o
> CC /tmp/build/perf/util/scripting-engines/trace-event-python.o
> LD /tmp/build/perf/util/arm-spe-decoder/perf-in.o
> CC /tmp/build/perf/util/intel-pt.o
> CC /tmp/build/perf/util/intel-bts.o
> CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-insn-decoder.o
> CC /tmp/build/perf/util/arm-spe.o
> CC /tmp/build/perf/util/s390-cpumsf.o
> CC /tmp/build/perf/util/parse-branch-options.o
> CC /tmp/build/perf/util/dump-insn.o
> CC /tmp/build/perf/util/parse-regs-options.o
> CC /tmp/build/perf/util/term.o
> CC /tmp/build/perf/util/help-unknown-cmd.o
> CC /tmp/build/perf/util/mem-events.o
> CC /tmp/build/perf/util/vsprintf.o
> CC /tmp/build/perf/util/units.o
> CC /tmp/build/perf/util/time-utils.o
> BISON /tmp/build/perf/util/expr-bison.c
> CC /tmp/build/perf/util/branch.o
> CC /tmp/build/perf/util/mem2node.o
> CC /tmp/build/perf/util/bpf-loader.o
> CC /tmp/build/perf/util/bpf_map.o
> LD /tmp/build/perf/util/intel-pt-decoder/perf-in.o
> LD /tmp/build/perf/util/scripting-engines/perf-in.o
> CC /tmp/build/perf/util/symbol-elf.o
> CC /tmp/build/perf/util/probe-file.o
> CC /tmp/build/perf/util/probe-event.o
> CC /tmp/build/perf/util/unwind-libunwind-local.o
> CC /tmp/build/perf/util/unwind-libunwind.o
> CC /tmp/build/perf/util/zlib.o
> CC /tmp/build/perf/util/lzma.o
> CC /tmp/build/perf/util/zstd.o
> CC /tmp/build/perf/util/cap.o
> CC /tmp/build/perf/util/demangle-java.o
> CC /tmp/build/perf/util/demangle-rust.o
> CC /tmp/build/perf/util/jitdump.o
> CC /tmp/build/perf/util/genelf.o
> CC /tmp/build/perf/util/perf-hooks.o
> CC /tmp/build/perf/util/bpf-event.o
> FLEX /tmp/build/perf/util/parse-events-flex.c
> CC /tmp/build/perf/util/parse-events-bison.o
> FLEX /tmp/build/perf/util/pmu-flex.c
> CC /tmp/build/perf/util/pmu-bison.o
> FLEX /tmp/build/perf/util/expr-flex.c
> In file included from util/parse-events.y:20:0:
> /tmp/build/perf/util/parse-events-flex.h:546:0: error: unterminated #else
> #ifndef YY_READ_BUF_SIZE
>
> /tmp/build/perf/util/parse-events-flex.h:545:0: error: unterminated #ifndef
> /* Amount of stuff to slurp up with each read. */
>
> In file included from util/parse-events.y:20:0:
> /tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
> #ifndef parse_events_HEADER_H
>
> mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
> make[4]: *** [/git/linux/tools/build/Makefile.build:96: /tmp/build/perf/util/parse-events-bison.o] Error 1
> make[4]: *** Waiting for unfinished jobs....
> make[3]: *** [/git/linux/tools/build/Makefile.build:139: util] Error 2
> make[2]: *** [Makefile.perf:625: /tmp/build/perf/perf-in.o] Error 2
> make[1]: *** [Makefile.perf:231: sub-make] Error 2
> make: *** [Makefile:70: all] Error 2
> make: Leaving directory '/git/linux/tools/perf'
>
>
> 1 alpine:3.4 : FAIL gcc (Alpine 5.3.0) 5.3.0, clang version 3.8.0 (tags/RELEASE_380/final)
> 2 alpine:3.5 : FAIL gcc (Alpine 6.2.1) 6.2.1 20160822, clang version 3.8.1 (tags/RELEASE_381/final)
>
> CC /tmp/build/perf/util/parse-events-bison.o
> In file included from util/parse-events.y:20:0:
> /tmp/build/perf/util/parse-events-flex.h:323:0: error: unterminated #ifndef
> #ifndef YY_DECL
> ^
> In file included from util/parse-events.y:20:0:
> /tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
> #ifndef parse_events_HEADER_H
> ^
> mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
> /git/linux/tools/build/Makefile.build:96: recipe for target '/tmp/build/perf/util/parse-events-bison.o' failed
> make[4]: *** [/tmp/build/perf/util/parse-events-bison.o] Error 1
> make[4]: *** Waiting for unfinished jobs....
> LD /tmp/build/perf/util/intel-pt-decoder/perf-in.o
> /git/linux/tools/build/Makefile.build:139: recipe for target 'util' failed
>
> Slightly different:
>
> 3 alpine:3.6 : FAIL gcc (Alpine 6.3.0) 6.3.0, clang version 4.0.0 (tags/RELEASE_400/final)
>
> CC /tmp/build/perf/util/perf-hooks.o
> FLEX /tmp/build/perf/util/parse-events-flex.c
> CC /tmp/build/perf/util/parse-events-bison.o
> FLEX /tmp/build/perf/util/pmu-flex.c
> In file included from util/parse-events.y:20:0:
> /tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
> #ifndef parse_events_HEADER_H
>
> mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
> make[4]: *** [/git/linux/tools/build/Makefile.build:97: /tmp/build/perf/util/parse-events-bison.o] Error 1
> make[4]: *** Waiting for unfinished jobs....
>
>
> 4 alpine:3.7 : FAIL gcc (Alpine 6.4.0) 6.4.0, Alpine clang version 5.0.0 (tags/RELEASE_500/final) (based on LLVM 5.0.0)
>
> CC /tmp/build/perf/util/pmu-bison.o
> In file included from util/parse-events.y:20:0:
> /tmp/build/perf/util/parse-events-flex.h:546:0: error: unterminated #else
> #ifndef YY_READ_BUF_SIZE
>
> /tmp/build/perf/util/parse-events-flex.h:545:0: error: unterminated #ifndef
> /* Amount of stuff to slurp up with each read. */
>
> In file included from util/parse-events.y:20:0:
> /tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
> #ifndef parse_events_HEADER_H
>
> FLEX /tmp/build/perf/util/expr-flex.c
> mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
> make[4]: *** [/git/linux/tools/build/Makefile.build:96: /tmp/build/perf/util/parse-events-bison.o] Error 1
>
>
--
- Arnaldo
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH v2 00/10] perf parse-events: enable more flex/bison warnings
2020-06-19 12:20 ` Arnaldo Carvalho de Melo
@ 2020-06-19 15:15 ` Ian Rogers
0 siblings, 0 replies; 15+ messages in thread
From: Ian Rogers @ 2020-06-19 15:15 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, Andi Kleen, Jin Yao, John Garry,
Adrian Hunter, LKML, Stephane Eranian
On Fri, Jun 19, 2020 at 5:20 AM Arnaldo Carvalho de Melo
<acme@kernel.org> wrote:
>
> Em Fri, Jun 19, 2020 at 09:15:57AM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Thu, Jun 18, 2020 at 09:33:46PM -0700, Ian Rogers escreveu:
> > > All C compiler warnings are disabled are disabled by -w. This change
> > > removes the -w from flex and bison targets. To avoid implicit
> > > declarations header files are declared as targets and included.
> > >
> > > Tested with GCC 9.3.0 and clang 9.0.1.
> > >
> > > v2. predicates disabling the warnings on more recent bison and flex
> > > versions (3.5.3 and 2.6.4 respectively). An alternative would be
> > > to disabled a large number of warnings to cover the warnings
> > > generated in older distributions:
> > > flex_flags := -Wno-switch-enum -Wno-switch-default -Wno-unused-function \
> > > -Wno-redundant-decls -Wno-sign-compare -Wno-unused-parameter \
> > > -Wno-missing-prototypes -Wno-misleading-indentation
> > > bison_flags := -DYYENABLE_NLS=0 -Wno-unused-parameter -Wno-nested-externs \
> > > -Wno-implicit-function-declaration -Wno-switch-enum
> >
> > So, it is failing with older versions of alpine Linux, but then at
> > alpine 3.8 I noticed that the problem is happening only when building
> > with this following set of options, and when building with gcc, building
> > with clang, i.e. adding CC=clang to the following make command line
> > works.
>
> I'll also check if this isn't because these container tests do multiple
> make calls, with different sets of options (NO_LIBBPF=1, another with
> NO_LIBELF=1, the one with LIBCLANGLLVM=1, etc) and perhaps the stuff
> from previous builds pollute a subsequent build, i.e. will try adding a
> rm -rf to the O= directory if missing.
Thanks! I don't have a good explanation as to why this would fail.
Sorry about the Acked-by. Let me know if I should do anything more.
Ian
> > + make 'ARCH=' 'CROSS_COMPILE=' 'EXTRA_CFLAGS=' 'LIBCLANGLLVM=1' -C /git/linux/tools/perf 'O=/tmp/build/perf'
> > make: Entering directory '/git/linux/tools/perf'
> > BUILD: Doing 'make -j8' parallel build
> > HOSTCC /tmp/build/perf/fixdep.o
> > HOSTLD /tmp/build/perf/fixdep-in.o
> > LINK /tmp/build/perf/fixdep
> >
> > Auto-detecting system features:
> > ... dwarf: [ OFF ]
> > ... dwarf_getlocations: [ OFF ]
> > ... glibc: [ OFF ]
> > ... gtk2: [ on ]
> > ... libbfd: [ on ]
> > ... libcap: [ on ]
> > ... libelf: [ on ]
> > ... libnuma: [ OFF ]
> > ... numa_num_possible_cpus: [ OFF ]
> > ... libperl: [ on ]
> > ... libpython: [ on ]
> > ... libcrypto: [ on ]
> > ... libunwind: [ on ]
> > ... libdw-dwarf-unwind: [ OFF ]
> > ... zlib: [ on ]
> > ... lzma: [ on ]
> > ... get_cpuid: [ on ]
> > ... bpf: [ on ]
> > ... libaio: [ on ]
> > ... libzstd: [ on ]
> > ... disassembler-four-args: [ on ]
> >
> > Makefile.config:409: No libdw DWARF unwind found, Please install elfutils-devel/libdw-dev >= 0.158 and/or set LIBDW_DIR
> > Makefile.config:414: No libdw.h found or old libdw.h found or elfutils is older than 0.138, disables dwarf support. Please install new elfutils-devel/libdw-dev
> > Makefile.config:485: gelf_getnote() not found on libelf, SDT support disabled
> > Makefile.config:528: DWARF support is off, BPF prologue is disabled
> > Makefile.config:536: No sys/sdt.h found, no SDT events are defined, please install systemtap-sdt-devel or systemtap-sdt-dev
> > Makefile.config:890: No numa.h found, disables 'perf bench numa mem' benchmark, please install numactl-devel/libnuma-devel/libnuma-dev
> > Makefile.config:945: No libbabeltrace found, disables 'perf data' CTF format support, please install libbabeltrace-dev[el]/libbabeltrace-ctf-dev
> > Makefile.config:971: No alternatives command found, you need to set JDIR= to point to the root of your Java directory
> > Makefile.config:1008: No suitable libclang found, disabling builtin clang and LLVM support. Please install libclang-dev(el) (>= 3.9.0)
> > GEN /tmp/build/perf/common-cmds.h
> > sort: unrecognized option: V
> > BusyBox v1.28.4 (2018-12-31 18:05:13 UTC) multi-call binary.
> > PERF_VERSION = 5.7.g6f01af8176af
> >
> > Usage: sort [-nrugMcszbdfiokt] [-o FILE] [-k start[.offset][opts][,end[.offset][opts]] [-t CHAR] [FILE]...
> >
> > Sort lines of text
> >
> > -o FILE Output to FILE
> > -c Check whether input is sorted
> > -b Ignore leading blanks
> > -f Ignore case
> > -i Ignore unprintable characters
> > -d Dictionary order (blank or alphanumeric only)
> > -g General numerical sort
> > -M Sort month
> > -n Sort numbers
> > -t CHAR Field separator
> > -k N[,M] Sort by Nth field
> > -r Reverse sort order
> > -s Stable (don't sort ties alphabetically)
> > -u Suppress duplicate lines
> > -z Lines are terminated by NUL, not newline
> > CC /tmp/build/perf/exec-cmd.o
> > CC /tmp/build/perf/event-parse.o
> > MKDIR /tmp/build/perf/fd/
> > CC /tmp/build/perf/fd/array.o
> > GEN /tmp/build/perf/bpf_helper_defs.h
> > CC /tmp/build/perf/event-plugin.o
> > CC /tmp/build/perf/core.o
> > LD /tmp/build/perf/fd/libapi-in.o
> > MKDIR /tmp/build/perf/fs/
> > CC /tmp/build/perf/fs/fs.o
> > CC /tmp/build/perf/cpumap.o
> > CC /tmp/build/perf/trace-seq.o
> > CC /tmp/build/perf/threadmap.o
> > CC /tmp/build/perf/help.o
> > MKDIR /tmp/build/perf/staticobjs/
> > CC /tmp/build/perf/staticobjs/libbpf.o
> > MKDIR /tmp/build/perf/staticobjs/
> > CC /tmp/build/perf/staticobjs/bpf.o
> > CC /tmp/build/perf/cpu.o
> > CC /tmp/build/perf/parse-filter.o
> > CC /tmp/build/perf/evsel.o
> > CC /tmp/build/perf/evlist.o
> > CC /tmp/build/perf/pager.o
> > CC /tmp/build/perf/parse-options.o
> > CC /tmp/build/perf/parse-utils.o
> > CC /tmp/build/perf/mmap.o
> > CC /tmp/build/perf/kbuffer-parse.o
> > CC /tmp/build/perf/zalloc.o
> > CC /tmp/build/perf/tep_strerror.o
> > CC /tmp/build/perf/xyarray.o
> > CC /tmp/build/perf/event-parse-api.o
> > CC /tmp/build/perf/run-command.o
> > CC /tmp/build/perf/sigchain.o
> > LD /tmp/build/perf/libtraceevent-in.o
> > LINK /tmp/build/perf/libtraceevent.a
> > MKDIR /tmp/build/perf/fs/
> > CC /tmp/build/perf/fs/tracing_path.o
> > CC /tmp/build/perf/debug.o
> > CC /tmp/build/perf/str_error_r.o
> > CC /tmp/build/perf/fs/cgroup.o
> > CC /tmp/build/perf/subcmd-config.o
> > CC /tmp/build/perf/lib.o
> > CC /tmp/build/perf/staticobjs/nlattr.o
> > CC /tmp/build/perf/staticobjs/btf.o
> > CC /tmp/build/perf/staticobjs/libbpf_errno.o
> > LD /tmp/build/perf/fs/libapi-in.o
> > CC /tmp/build/perf/staticobjs/str_error.o
> > CC /tmp/build/perf/staticobjs/netlink.o
> > LD /tmp/build/perf/libapi-in.o
> > AR /tmp/build/perf/libapi.a
> > CC /tmp/build/perf/staticobjs/bpf_prog_linfo.o
> > LD /tmp/build/perf/libperf-in.o
> > AR /tmp/build/perf/libperf.a
> > CC /tmp/build/perf/staticobjs/libbpf_probes.o
> > CC /tmp/build/perf/staticobjs/xsk.o
> > LD /tmp/build/perf/libsubcmd-in.o
> > CC /tmp/build/perf/staticobjs/hashmap.o
> > AR /tmp/build/perf/libsubcmd.a
> > CC /tmp/build/perf/staticobjs/btf_dump.o
> > CC /tmp/build/perf/staticobjs/ringbuf.o
> > MKDIR /tmp/build/perf/pmu-events/
> > GEN perf-archive
> > HOSTCC /tmp/build/perf/pmu-events/json.o
> > GEN perf-with-kcore
> > MKDIR /tmp/build/perf/ui/gtk/
> > MKDIR /tmp/build/perf/pmu-events/
> > CC /tmp/build/perf/ui/gtk/browser.o
> > HOSTCC /tmp/build/perf/pmu-events/jsmn.o
> > HOSTCC /tmp/build/perf/pmu-events/jevents.o
> > CC /tmp/build/perf/plugin_jbd2.o
> > CC /tmp/build/perf/plugin_hrtimer.o
> > CC /tmp/build/perf/plugin_kmem.o
> > CC /tmp/build/perf/plugin_kvm.o
> > LD /tmp/build/perf/plugin_hrtimer-in.o
> > LD /tmp/build/perf/plugin_jbd2-in.o
> > LD /tmp/build/perf/plugin_kmem-in.o
> > CC /tmp/build/perf/plugin_mac80211.o
> > CC /tmp/build/perf/plugin_sched_switch.o
> > CC /tmp/build/perf/plugin_function.o
> > LD /tmp/build/perf/plugin_kvm-in.o
> > LD /tmp/build/perf/plugin_mac80211-in.o
> > MKDIR /tmp/build/perf/ui/gtk/
> > CC /tmp/build/perf/plugin_xen.o
> > CC /tmp/build/perf/ui/gtk/hists.o
> > LD /tmp/build/perf/plugin_sched_switch-in.o
> > LD /tmp/build/perf/staticobjs/libbpf-in.o
> > LD /tmp/build/perf/plugin_xen-in.o
> > LINK /tmp/build/perf/libbpf.a
> > CC /tmp/build/perf/plugin_scsi.o
> > LD /tmp/build/perf/plugin_function-in.o
> > CC /tmp/build/perf/plugin_cfg80211.o
> > HOSTLD /tmp/build/perf/pmu-events/jevents-in.o
> > CC /tmp/build/perf/ui/gtk/setup.o
> > LINK /tmp/build/perf/plugin_jbd2.so
> > LINK /tmp/build/perf/pmu-events/jevents
> > GEN /tmp/build/perf/pmu-events/pmu-events.c
> > LINK /tmp/build/perf/plugin_hrtimer.so
> > LD /tmp/build/perf/plugin_cfg80211-in.o
> > LD /tmp/build/perf/plugin_scsi-in.o
> > LINK /tmp/build/perf/plugin_kmem.so
> > LINK /tmp/build/perf/plugin_kvm.so
> > CC /tmp/build/perf/ui/gtk/util.o
> > LINK /tmp/build/perf/plugin_mac80211.so
> > LINK /tmp/build/perf/plugin_sched_switch.so
> > LINK /tmp/build/perf/plugin_function.so
> > LINK /tmp/build/perf/plugin_xen.so
> > LINK /tmp/build/perf/plugin_scsi.so
> > LINK /tmp/build/perf/plugin_cfg80211.so
> > CC /tmp/build/perf/ui/gtk/helpline.o
> > GEN /tmp/build/perf/libtraceevent-dynamic-list
> > GEN /tmp/build/perf/python/perf.so
> > CC /tmp/build/perf/ui/gtk/progress.o
> > CC /tmp/build/perf/pmu-events/pmu-events.o
> > CC /tmp/build/perf/ui/gtk/annotate.o
> > CC /tmp/build/perf/builtin-bench.o
> > CC /tmp/build/perf/ui/gtk/zalloc.o
> > CC /tmp/build/perf/builtin-annotate.o
> > CC /tmp/build/perf/builtin-config.o
> > CC /tmp/build/perf/builtin-diff.o
> > CC /tmp/build/perf/builtin-evlist.o
> > CC /tmp/build/perf/builtin-ftrace.o
> > CC /tmp/build/perf/builtin-help.o
> > CC /tmp/build/perf/builtin-sched.o
> > CC /tmp/build/perf/builtin-buildid-list.o
> > LD /tmp/build/perf/pmu-events/pmu-events-in.o
> > LD /tmp/build/perf/ui/gtk/gtk-in.o
> > CC /tmp/build/perf/builtin-buildid-cache.o
> > CC /tmp/build/perf/builtin-kallsyms.o
> > CC /tmp/build/perf/builtin-list.o
> > CC /tmp/build/perf/builtin-record.o
> > CC /tmp/build/perf/builtin-report.o
> > LD /tmp/build/perf/gtk-in.o
> > LINK /tmp/build/perf/libperf-gtk.so
> > CC /tmp/build/perf/builtin-stat.o
> > CC /tmp/build/perf/builtin-timechart.o
> > CC /tmp/build/perf/builtin-top.o
> > CC /tmp/build/perf/builtin-script.o
> > CC /tmp/build/perf/builtin-kmem.o
> > CC /tmp/build/perf/builtin-lock.o
> > CC /tmp/build/perf/builtin-kvm.o
> > CC /tmp/build/perf/builtin-inject.o
> > CC /tmp/build/perf/builtin-mem.o
> > CC /tmp/build/perf/builtin-data.o
> > CC /tmp/build/perf/builtin-version.o
> > CC /tmp/build/perf/builtin-c2c.o
> > CC /tmp/build/perf/builtin-trace.o
> > CC /tmp/build/perf/builtin-probe.o
> > MKDIR /tmp/build/perf/bench/
> > CC /tmp/build/perf/bench/sched-messaging.o
> > MKDIR /tmp/build/perf/tests/
> > CC /tmp/build/perf/tests/builtin-test.o
> > MKDIR /tmp/build/perf/bench/
> > CC /tmp/build/perf/bench/sched-pipe.o
> > MKDIR /tmp/build/perf/util/
> > CC /tmp/build/perf/util/annotate.o
> > CC /tmp/build/perf/bench/mem-functions.o
> > CC /tmp/build/perf/arch/common.o
> > MKDIR /tmp/build/perf/tests/
> > MKDIR /tmp/build/perf/arch/x86/util/
> > CC /tmp/build/perf/arch/x86/util/header.o
> > CC /tmp/build/perf/bench/futex-hash.o
> > CC /tmp/build/perf/tests/parse-events.o
> > CC /tmp/build/perf/bench/futex-wake.o
> > MKDIR /tmp/build/perf/arch/x86/util/
> > CC /tmp/build/perf/arch/x86/util/tsc.o
> > CC /tmp/build/perf/arch/x86/util/pmu.o
> > CC /tmp/build/perf/arch/x86/util/kvm-stat.o
> > CC /tmp/build/perf/bench/futex-wake-parallel.o
> > CC /tmp/build/perf/arch/x86/util/perf_regs.o
> > CC /tmp/build/perf/bench/futex-requeue.o
> > CC /tmp/build/perf/bench/futex-lock-pi.o
> > CC /tmp/build/perf/arch/x86/util/group.o
> > CC /tmp/build/perf/arch/x86/util/machine.o
> > CC /tmp/build/perf/arch/x86/util/event.o
> > CC /tmp/build/perf/arch/x86/util/unwind-libunwind.o
> > CC /tmp/build/perf/arch/x86/util/auxtrace.o
> > CC /tmp/build/perf/bench/epoll-wait.o
> > MKDIR /tmp/build/perf/arch/x86/tests/
> > CC /tmp/build/perf/arch/x86/tests/regs_load.o
> > MKDIR /tmp/build/perf/util/
> > CC /tmp/build/perf/util/block-info.o
> > MKDIR /tmp/build/perf/arch/x86/tests/
> > CC /tmp/build/perf/arch/x86/tests/dwarf-unwind.o
> > CC /tmp/build/perf/arch/x86/util/archinsn.o
> > CC /tmp/build/perf/arch/x86/tests/arch-tests.o
> > CC /tmp/build/perf/bench/epoll-ctl.o
> > CC /tmp/build/perf/arch/x86/tests/rdpmc.o
> > CC /tmp/build/perf/tests/dso-data.o
> > CC /tmp/build/perf/arch/x86/util/intel-pt.o
> > CC /tmp/build/perf/arch/x86/tests/perf-time-to-tsc.o
> > CC /tmp/build/perf/bench/synthesize.o
> > CC /tmp/build/perf/util/block-range.o
> > CC /tmp/build/perf/bench/kallsyms-parse.o
> > CC /tmp/build/perf/arch/x86/tests/insn-x86.o
> > CC /tmp/build/perf/util/build-id.o
> > CC /tmp/build/perf/util/cacheline.o
> > CC /tmp/build/perf/bench/mem-memcpy-x86-64-lib.o
> > CC /tmp/build/perf/tests/attr.o
> > CC /tmp/build/perf/bench/mem-memcpy-x86-64-asm.o
> > CC /tmp/build/perf/bench/mem-memset-x86-64-asm.o
> > CC /tmp/build/perf/util/config.o
> > CC /tmp/build/perf/arch/x86/util/intel-bts.o
> > LD /tmp/build/perf/bench/perf-in.o
> > CC /tmp/build/perf/arch/x86/tests/intel-pt-pkt-decoder-test.o
> > CC /tmp/build/perf/ui/setup.o
> > CC /tmp/build/perf/tests/vmlinux-kallsyms.o
> > CC /tmp/build/perf/arch/x86/tests/bp-modify.o
> > CC /tmp/build/perf/ui/helpline.o
> > LD /tmp/build/perf/arch/x86/util/perf-in.o
> > CC /tmp/build/perf/ui/progress.o
> > CC /tmp/build/perf/tests/openat-syscall.o
> > LD /tmp/build/perf/arch/x86/tests/perf-in.o
> > CC /tmp/build/perf/tests/openat-syscall-all-cpus.o
> > LD /tmp/build/perf/arch/x86/perf-in.o
> > LD /tmp/build/perf/arch/perf-in.o
> > CC /tmp/build/perf/tests/openat-syscall-tp-fields.o
> > CC /tmp/build/perf/ui/util.o
> > CC /tmp/build/perf/ui/hist.o
> > CC /tmp/build/perf/util/copyfile.o
> > CC /tmp/build/perf/tests/mmap-basic.o
> > MKDIR /tmp/build/perf/ui/stdio/
> > CC /tmp/build/perf/ui/stdio/hist.o
> > CC /tmp/build/perf/tests/perf-record.o
> > CC /tmp/build/perf/util/ctype.o
> > CC /tmp/build/perf/util/db-export.o
> > CC /tmp/build/perf/tests/evsel-roundtrip-name.o
> > CC /tmp/build/perf/tests/evsel-tp-sched.o
> > MKDIR /tmp/build/perf/scripts/perl/Perf-Trace-Util/
> > CC /tmp/build/perf/scripts/perl/Perf-Trace-Util/Context.o
> > CC /tmp/build/perf/tests/fdarray.o
> > CC /tmp/build/perf/tests/pmu.o
> > CC /tmp/build/perf/tests/pmu-events.o
> > CC /tmp/build/perf/tests/hists_common.o
> > CC /tmp/build/perf/tests/hists_link.o
> > LD /tmp/build/perf/scripts/perl/Perf-Trace-Util/perf-in.o
> > MKDIR /tmp/build/perf/scripts/python/Perf-Trace-Util/
> > CC /tmp/build/perf/ui/browser.o
> > CC /tmp/build/perf/scripts/python/Perf-Trace-Util/Context.o
> > CC /tmp/build/perf/tests/hists_filter.o
> > CC /tmp/build/perf/util/env.o
> > CC /tmp/build/perf/tests/hists_output.o
> > CC /tmp/build/perf/tests/hists_cumulate.o
> > LD /tmp/build/perf/scripts/python/Perf-Trace-Util/perf-in.o
> > LD /tmp/build/perf/scripts/perf-in.o
> > CC /tmp/build/perf/trace/beauty/clone.o
> > CC /tmp/build/perf/perf.o
> > CC /tmp/build/perf/trace/beauty/fcntl.o
> > MKDIR /tmp/build/perf/ui/browsers/
> > CC /tmp/build/perf/ui/browsers/annotate.o
> > CC /tmp/build/perf/util/event.o
> > CC /tmp/build/perf/tests/python-use.o
> > CC /tmp/build/perf/trace/beauty/flock.o
> > CC /tmp/build/perf/trace/beauty/fsmount.o
> > CC /tmp/build/perf/trace/beauty/fspick.o
> > CC /tmp/build/perf/trace/beauty/ioctl.o
> > CC /tmp/build/perf/trace/beauty/kcmp.o
> > CC /tmp/build/perf/tests/bp_signal.o
> > CC /tmp/build/perf/tests/bp_signal_overflow.o
> > CC /tmp/build/perf/trace/beauty/mount_flags.o
> > CC /tmp/build/perf/trace/beauty/move_mount.o
> > CC /tmp/build/perf/trace/beauty/pkey_alloc.o
> > CC /tmp/build/perf/trace/beauty/arch_prctl.o
> > CC /tmp/build/perf/trace/beauty/prctl.o
> > CC /tmp/build/perf/tests/bp_account.o
> > CC /tmp/build/perf/trace/beauty/renameat.o
> > CC /tmp/build/perf/tests/wp.o
> > CC /tmp/build/perf/tests/task-exit.o
> > CC /tmp/build/perf/util/evlist.o
> > CC /tmp/build/perf/trace/beauty/sockaddr.o
> > CC /tmp/build/perf/trace/beauty/socket.o
> > CC /tmp/build/perf/trace/beauty/statx.o
> > CC /tmp/build/perf/trace/beauty/sync_file_range.o
> > CC /tmp/build/perf/util/sideband_evlist.o
> > MKDIR /tmp/build/perf/ui/browsers/
> > CC /tmp/build/perf/ui/browsers/hists.o
> > CC /tmp/build/perf/ui/browsers/map.o
> > MKDIR /tmp/build/perf/trace/beauty/tracepoints/
> > CC /tmp/build/perf/trace/beauty/tracepoints/x86_irq_vectors.o
> > MKDIR /tmp/build/perf/trace/beauty/tracepoints/
> > CC /tmp/build/perf/trace/beauty/tracepoints/x86_msr.o
> > CC /tmp/build/perf/util/evsel.o
> > LD /tmp/build/perf/trace/beauty/tracepoints/perf-in.o
> > LD /tmp/build/perf/trace/beauty/perf-in.o
> > CC /tmp/build/perf/tests/sw-clock.o
> > CC /tmp/build/perf/util/evsel_fprintf.o
> > CC /tmp/build/perf/util/perf_event_attr_fprintf.o
> > CC /tmp/build/perf/tests/mmap-thread-lookup.o
> > CC /tmp/build/perf/util/evswitch.o
> > CC /tmp/build/perf/tests/thread-maps-share.o
> > CC /tmp/build/perf/tests/switch-tracking.o
> > CC /tmp/build/perf/util/find_bit.o
> > CC /tmp/build/perf/util/get_current_dir_name.o
> > CC /tmp/build/perf/util/kallsyms.o
> > MKDIR /tmp/build/perf/ui/tui/
> > CC /tmp/build/perf/tests/keep-tracking.o
> > CC /tmp/build/perf/ui/tui/setup.o
> > CC /tmp/build/perf/util/levenshtein.o
> > CC /tmp/build/perf/util/llvm-utils.o
> > CC /tmp/build/perf/util/mmap.o
> > CC /tmp/build/perf/util/memswap.o
> > MKDIR /tmp/build/perf/ui/tui/
> > CC /tmp/build/perf/ui/tui/util.o
> > CC /tmp/build/perf/tests/code-reading.o
> > CC /tmp/build/perf/tests/sample-parsing.o
> > CC /tmp/build/perf/ui/tui/helpline.o
> > CC /tmp/build/perf/tests/parse-no-sample-id-all.o
> > CC /tmp/build/perf/ui/tui/progress.o
> > CC /tmp/build/perf/tests/kmod-path.o
> > CC /tmp/build/perf/tests/thread-map.o
> > LD /tmp/build/perf/ui/tui/perf-in.o
> > CC /tmp/build/perf/tests/llvm.o
> > CC /tmp/build/perf/tests/bpf.o
> > CC /tmp/build/perf/tests/topology.o
> > CC /tmp/build/perf/tests/mem.o
> > CC /tmp/build/perf/tests/cpumap.o
> > CC /tmp/build/perf/tests/stat.o
> > CC /tmp/build/perf/tests/event_update.o
> > CC /tmp/build/perf/ui/browsers/scripts.o
> > CC /tmp/build/perf/ui/browsers/header.o
> > CC /tmp/build/perf/tests/event-times.o
> > CC /tmp/build/perf/ui/browsers/res_sample.o
> > CC /tmp/build/perf/tests/expr.o
> > CC /tmp/build/perf/tests/backward-ring-buffer.o
> > CC /tmp/build/perf/tests/sdt.o
> > CC /tmp/build/perf/tests/is_printable_array.o
> > CC /tmp/build/perf/tests/bitmap.o
> > BISON /tmp/build/perf/util/parse-events-bison.c
> > CC /tmp/build/perf/tests/perf-hooks.o
> > CC /tmp/build/perf/tests/clang.o
> > CC /tmp/build/perf/util/perf_regs.o
> > CC /tmp/build/perf/tests/unit_number__scnprintf.o
> > CC /tmp/build/perf/tests/mem2node.o
> > CC /tmp/build/perf/tests/maps.o
> > CC /tmp/build/perf/tests/time-utils-test.o
> > CC /tmp/build/perf/tests/genelf.o
> > CC /tmp/build/perf/tests/api-io.o
> > CC /tmp/build/perf/tests/demangle-java-test.o
> > CC /tmp/build/perf/util/path.o
> > CC /tmp/build/perf/util/print_binary.o
> > CC /tmp/build/perf/tests/pfm.o
> > CC /tmp/build/perf/tests/parse-metric.o
> > CC /tmp/build/perf/util/rlimit.o
> > CC /tmp/build/perf/tests/dwarf-unwind.o
> > CC /tmp/build/perf/util/argv_split.o
> > CC /tmp/build/perf/util/rbtree.o
> > CC /tmp/build/perf/util/libstring.o
> > CC /tmp/build/perf/util/bitmap.o
> > CC /tmp/build/perf/tests/llvm-src-base.o
> > CC /tmp/build/perf/tests/llvm-src-kbuild.o
> > CC /tmp/build/perf/tests/llvm-src-prologue.o
> > CC /tmp/build/perf/tests/llvm-src-relocation.o
> > CC /tmp/build/perf/util/hweight.o
> > CC /tmp/build/perf/util/smt.o
> > CC /tmp/build/perf/util/strbuf.o
> > CC /tmp/build/perf/util/string.o
> > LD /tmp/build/perf/tests/perf-in.o
> > CC /tmp/build/perf/util/strlist.o
> > CC /tmp/build/perf/util/strfilter.o
> > CC /tmp/build/perf/util/top.o
> > CC /tmp/build/perf/util/usage.o
> > CC /tmp/build/perf/util/dso.o
> > CC /tmp/build/perf/util/dsos.o
> > CC /tmp/build/perf/util/symbol.o
> > CC /tmp/build/perf/util/symbol_fprintf.o
> > CC /tmp/build/perf/util/color.o
> > CC /tmp/build/perf/util/color_config.o
> > CC /tmp/build/perf/util/metricgroup.o
> > CC /tmp/build/perf/util/header.o
> > LD /tmp/build/perf/ui/browsers/perf-in.o
> > CC /tmp/build/perf/util/callchain.o
> > LD /tmp/build/perf/ui/perf-in.o
> > CC /tmp/build/perf/util/values.o
> > CC /tmp/build/perf/util/debug.o
> > CC /tmp/build/perf/util/fncache.o
> > CC /tmp/build/perf/util/machine.o
> > CC /tmp/build/perf/util/map.o
> > CC /tmp/build/perf/util/pstack.o
> > CC /tmp/build/perf/util/session.o
> > CC /tmp/build/perf/util/sample-raw.o
> > CC /tmp/build/perf/util/s390-sample-raw.o
> > CC /tmp/build/perf/util/syscalltbl.o
> > CC /tmp/build/perf/util/ordered-events.o
> > CC /tmp/build/perf/util/namespaces.o
> > CC /tmp/build/perf/util/comm.o
> > CC /tmp/build/perf/util/thread.o
> > CC /tmp/build/perf/util/thread_map.o
> > CC /tmp/build/perf/util/trace-event-parse.o
> > FLEX /tmp/build/perf/util/parse-events-flex.h
> > BISON /tmp/build/perf/util/pmu-bison.c
> > CC /tmp/build/perf/util/trace-event-read.o
> > CC /tmp/build/perf/util/trace-event-info.o
> > CC /tmp/build/perf/util/trace-event-scripting.o
> > CC /tmp/build/perf/util/trace-event.o
> > CC /tmp/build/perf/util/svghelper.o
> > CC /tmp/build/perf/util/sort.o
> > CC /tmp/build/perf/util/hist.o
> > CC /tmp/build/perf/util/util.o
> > CC /tmp/build/perf/util/cpumap.o
> > CC /tmp/build/perf/util/affinity.o
> > CC /tmp/build/perf/util/cputopo.o
> > CC /tmp/build/perf/util/cgroup.o
> > CC /tmp/build/perf/util/target.o
> > CC /tmp/build/perf/util/rblist.o
> > CC /tmp/build/perf/util/intlist.o
> > CC /tmp/build/perf/util/vdso.o
> > CC /tmp/build/perf/util/counts.o
> > CC /tmp/build/perf/util/stat.o
> > CC /tmp/build/perf/util/stat-shadow.o
> > CC /tmp/build/perf/util/stat-display.o
> > CC /tmp/build/perf/util/perf_api_probe.o
> > CC /tmp/build/perf/util/record.o
> > CC /tmp/build/perf/util/srcline.o
> > CC /tmp/build/perf/util/srccode.o
> > CC /tmp/build/perf/util/synthetic-events.o
> > CC /tmp/build/perf/util/data.o
> > CC /tmp/build/perf/util/tsc.o
> > CC /tmp/build/perf/util/cloexec.o
> > CC /tmp/build/perf/util/call-path.o
> > CC /tmp/build/perf/util/rwsem.o
> > CC /tmp/build/perf/util/thread-stack.o
> > CC /tmp/build/perf/util/spark.o
> > CC /tmp/build/perf/util/auxtrace.o
> > MKDIR /tmp/build/perf/util/intel-pt-decoder/
> > CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-pkt-decoder.o
> > MKDIR /tmp/build/perf/util/intel-pt-decoder/
> > GEN /tmp/build/perf/util/intel-pt-decoder/inat-tables.c
> > MKDIR /tmp/build/perf/util/arm-spe-decoder/
> > CC /tmp/build/perf/util/arm-spe-decoder/arm-spe-pkt-decoder.o
> > MKDIR /tmp/build/perf/util/scripting-engines/
> > CC /tmp/build/perf/util/scripting-engines/trace-event-perl.o
> > CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-log.o
> > CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-decoder.o
> > MKDIR /tmp/build/perf/util/arm-spe-decoder/
> > MKDIR /tmp/build/perf/util/scripting-engines/
> > CC /tmp/build/perf/util/arm-spe-decoder/arm-spe-decoder.o
> > CC /tmp/build/perf/util/scripting-engines/trace-event-python.o
> > LD /tmp/build/perf/util/arm-spe-decoder/perf-in.o
> > CC /tmp/build/perf/util/intel-pt.o
> > CC /tmp/build/perf/util/intel-bts.o
> > CC /tmp/build/perf/util/intel-pt-decoder/intel-pt-insn-decoder.o
> > CC /tmp/build/perf/util/arm-spe.o
> > CC /tmp/build/perf/util/s390-cpumsf.o
> > CC /tmp/build/perf/util/parse-branch-options.o
> > CC /tmp/build/perf/util/dump-insn.o
> > CC /tmp/build/perf/util/parse-regs-options.o
> > CC /tmp/build/perf/util/term.o
> > CC /tmp/build/perf/util/help-unknown-cmd.o
> > CC /tmp/build/perf/util/mem-events.o
> > CC /tmp/build/perf/util/vsprintf.o
> > CC /tmp/build/perf/util/units.o
> > CC /tmp/build/perf/util/time-utils.o
> > BISON /tmp/build/perf/util/expr-bison.c
> > CC /tmp/build/perf/util/branch.o
> > CC /tmp/build/perf/util/mem2node.o
> > CC /tmp/build/perf/util/bpf-loader.o
> > CC /tmp/build/perf/util/bpf_map.o
> > LD /tmp/build/perf/util/intel-pt-decoder/perf-in.o
> > LD /tmp/build/perf/util/scripting-engines/perf-in.o
> > CC /tmp/build/perf/util/symbol-elf.o
> > CC /tmp/build/perf/util/probe-file.o
> > CC /tmp/build/perf/util/probe-event.o
> > CC /tmp/build/perf/util/unwind-libunwind-local.o
> > CC /tmp/build/perf/util/unwind-libunwind.o
> > CC /tmp/build/perf/util/zlib.o
> > CC /tmp/build/perf/util/lzma.o
> > CC /tmp/build/perf/util/zstd.o
> > CC /tmp/build/perf/util/cap.o
> > CC /tmp/build/perf/util/demangle-java.o
> > CC /tmp/build/perf/util/demangle-rust.o
> > CC /tmp/build/perf/util/jitdump.o
> > CC /tmp/build/perf/util/genelf.o
> > CC /tmp/build/perf/util/perf-hooks.o
> > CC /tmp/build/perf/util/bpf-event.o
> > FLEX /tmp/build/perf/util/parse-events-flex.c
> > CC /tmp/build/perf/util/parse-events-bison.o
> > FLEX /tmp/build/perf/util/pmu-flex.c
> > CC /tmp/build/perf/util/pmu-bison.o
> > FLEX /tmp/build/perf/util/expr-flex.c
> > In file included from util/parse-events.y:20:0:
> > /tmp/build/perf/util/parse-events-flex.h:546:0: error: unterminated #else
> > #ifndef YY_READ_BUF_SIZE
> >
> > /tmp/build/perf/util/parse-events-flex.h:545:0: error: unterminated #ifndef
> > /* Amount of stuff to slurp up with each read. */
> >
> > In file included from util/parse-events.y:20:0:
> > /tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
> > #ifndef parse_events_HEADER_H
> >
> > mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
> > make[4]: *** [/git/linux/tools/build/Makefile.build:96: /tmp/build/perf/util/parse-events-bison.o] Error 1
> > make[4]: *** Waiting for unfinished jobs....
> > make[3]: *** [/git/linux/tools/build/Makefile.build:139: util] Error 2
> > make[2]: *** [Makefile.perf:625: /tmp/build/perf/perf-in.o] Error 2
> > make[1]: *** [Makefile.perf:231: sub-make] Error 2
> > make: *** [Makefile:70: all] Error 2
> > make: Leaving directory '/git/linux/tools/perf'
> >
> >
> > 1 alpine:3.4 : FAIL gcc (Alpine 5.3.0) 5.3.0, clang version 3.8.0 (tags/RELEASE_380/final)
> > 2 alpine:3.5 : FAIL gcc (Alpine 6.2.1) 6.2.1 20160822, clang version 3.8.1 (tags/RELEASE_381/final)
> >
> > CC /tmp/build/perf/util/parse-events-bison.o
> > In file included from util/parse-events.y:20:0:
> > /tmp/build/perf/util/parse-events-flex.h:323:0: error: unterminated #ifndef
> > #ifndef YY_DECL
> > ^
> > In file included from util/parse-events.y:20:0:
> > /tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
> > #ifndef parse_events_HEADER_H
> > ^
> > mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
> > /git/linux/tools/build/Makefile.build:96: recipe for target '/tmp/build/perf/util/parse-events-bison.o' failed
> > make[4]: *** [/tmp/build/perf/util/parse-events-bison.o] Error 1
> > make[4]: *** Waiting for unfinished jobs....
> > LD /tmp/build/perf/util/intel-pt-decoder/perf-in.o
> > /git/linux/tools/build/Makefile.build:139: recipe for target 'util' failed
> >
> > Slightly different:
> >
> > 3 alpine:3.6 : FAIL gcc (Alpine 6.3.0) 6.3.0, clang version 4.0.0 (tags/RELEASE_400/final)
> >
> > CC /tmp/build/perf/util/perf-hooks.o
> > FLEX /tmp/build/perf/util/parse-events-flex.c
> > CC /tmp/build/perf/util/parse-events-bison.o
> > FLEX /tmp/build/perf/util/pmu-flex.c
> > In file included from util/parse-events.y:20:0:
> > /tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
> > #ifndef parse_events_HEADER_H
> >
> > mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
> > make[4]: *** [/git/linux/tools/build/Makefile.build:97: /tmp/build/perf/util/parse-events-bison.o] Error 1
> > make[4]: *** Waiting for unfinished jobs....
> >
> >
> > 4 alpine:3.7 : FAIL gcc (Alpine 6.4.0) 6.4.0, Alpine clang version 5.0.0 (tags/RELEASE_500/final) (based on LLVM 5.0.0)
> >
> > CC /tmp/build/perf/util/pmu-bison.o
> > In file included from util/parse-events.y:20:0:
> > /tmp/build/perf/util/parse-events-flex.h:546:0: error: unterminated #else
> > #ifndef YY_READ_BUF_SIZE
> >
> > /tmp/build/perf/util/parse-events-flex.h:545:0: error: unterminated #ifndef
> > /* Amount of stuff to slurp up with each read. */
> >
> > In file included from util/parse-events.y:20:0:
> > /tmp/build/perf/util/parse-events-flex.h:1:0: error: unterminated #ifndef
> > #ifndef parse_events_HEADER_H
> >
> > FLEX /tmp/build/perf/util/expr-flex.c
> > mv: can't rename '/tmp/build/perf/util/.parse-events-bison.o.tmp': No such file or directory
> > make[4]: *** [/git/linux/tools/build/Makefile.build:96: /tmp/build/perf/util/parse-events-bison.o] Error 1
> >
> >
>
> --
>
> - Arnaldo
^ permalink raw reply [flat|nested] 15+ messages in thread