summaryrefslogtreecommitdiff
path: root/tools/perf/pmu-events/Build
blob: 15b9e8fdbffa75420d211977fe4e48b16925f312 (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
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

#
# 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) pmu-events/arch $@
endif