aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/pmu-events/Build
blob: a14de24ecb69925b8806cf258a47a58ccfdbb53e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
pmu-events-y	+= pmu-events.o
JDIR		=  pmu-events/arch/$(SRCARCH)
JSON		=  $(shell [ -d $(JDIR) ] &&				\
			find $(JDIR) -name '*.json' -o -name 'mapfile.csv')
JDIR_TEST	=  pmu-events/arch/test
JSON_TEST	=  $(shell [ -d $(JDIR_TEST) ] &&			\
			find $(JDIR_TEST) -name '*.json')
JEVENTS_PY	=  pmu-events/jevents.py

ifeq ($(JEVENTS_ARCH),)
JEVENTS_ARCH=$(SRCARCH)
endif
JEVENTS_MODEL ?= all

#
# Locate/process JSON files in pmu-events/arch/
# directory and create tables in pmu-events.c.
#

ifeq ($(NO_JEVENTS),1)
$(OUTPUT)pmu-events/pmu-events.c: pmu-events/empty-pmu-events.c
	$(call rule_mkdir)
	$(Q)$(call echo-cmd,gen)cp $< $@
else
$(OUTPUT)pmu-events/pmu-events.c: $(JSON) $(JSON_TEST) $(JEVENTS_PY) pmu-events/metric.py
	$(call rule_mkdir)
	$(Q)$(call echo-cmd,gen)$(PYTHON) $(JEVENTS_PY) $(JEVENTS_ARCH) $(JEVENTS_MODEL) pmu-events/arch $@
endif