xref: /linux/tools/tracing/rtla/Makefile.config (revision 7f71507851fc7764b36a3221839607d3a45c2025)
1# SPDX-License-Identifier: GPL-2.0-only
2
3STOP_ERROR :=
4
5LIBTRACEEVENT_MIN_VERSION = 1.5
6LIBTRACEFS_MIN_VERSION = 1.6
7
8define lib_setup
9  $(eval LIB_INCLUDES += $(shell sh -c "$(PKG_CONFIG) --cflags lib$(1)"))
10  $(eval LDFLAGS += $(shell sh -c "$(PKG_CONFIG) --libs-only-L lib$(1)"))
11  $(eval EXTLIBS += $(shell sh -c "$(PKG_CONFIG) --libs-only-l lib$(1)"))
12endef
13
14$(call feature_check,libtraceevent)
15ifeq ($(feature-libtraceevent), 1)
16  $(call detected,CONFIG_LIBTRACEEVENT)
17
18  TEST = $(shell sh -c "$(PKG_CONFIG) --atleast-version $(LIBTRACEEVENT_MIN_VERSION) libtraceevent > /dev/null 2>&1 && echo y || echo n")
19  ifeq ($(TEST),n)
20    $(info libtraceevent version is too low, it must be at least $(LIBTRACEEVENT_MIN_VERSION))
21    STOP_ERROR := 1
22  endif
23
24  $(call lib_setup,traceevent)
25else
26  STOP_ERROR := 1
27  $(info libtraceevent is missing. Please install libtraceevent-dev/libtraceevent-devel)
28endif
29
30$(call feature_check,libtracefs)
31ifeq ($(feature-libtracefs), 1)
32  $(call detected,CONFIG_LIBTRACEFS)
33
34  TEST = $(shell sh -c "$(PKG_CONFIG) --atleast-version $(LIBTRACEFS_MIN_VERSION) libtracefs > /dev/null 2>&1 && echo y || echo n")
35  ifeq ($(TEST),n)
36    $(info libtracefs version is too low, it must be at least $(LIBTRACEFS_MIN_VERSION))
37    STOP_ERROR := 1
38  endif
39
40  $(call lib_setup,tracefs)
41else
42  STOP_ERROR := 1
43  $(info libtracefs is missing. Please install libtracefs-dev/libtracefs-devel)
44endif
45
46$(call feature_check,libcpupower)
47ifeq ($(feature-libcpupower), 1)
48  $(call detected,CONFIG_LIBCPUPOWER)
49  CFLAGS += -DHAVE_LIBCPUPOWER_SUPPORT
50  EXTLIBS += -lcpupower
51else
52  $(info libcpupower is missing, building without --deepest-idle-state support.)
53  $(info Please install libcpupower-dev/kernel-tools-libs-devel)
54endif
55
56ifeq ($(STOP_ERROR),1)
57  $(error Please, check the errors above.)
58endif
59