1# SPDX-License-Identifier: GPL-2.0-only 2 3include $(srctree)/tools/scripts/utilities.mak 4 5STOP_ERROR := 6 7LIBTRACEEVENT_MIN_VERSION = 1.5 8LIBTRACEFS_MIN_VERSION = 1.6 9 10ifndef ($(NO_LIBTRACEEVENT),1) 11 ifeq ($(call get-executable,$(PKG_CONFIG)),) 12 $(error Error: $(PKG_CONFIG) needed by libtraceevent/libtracefs is missing on this system, please install it) 13 endif 14endif 15 16define lib_setup 17 $(eval LIB_INCLUDES += $(shell sh -c "$(PKG_CONFIG) --cflags lib$(1)")) 18 $(eval LDFLAGS += $(shell sh -c "$(PKG_CONFIG) --libs-only-L lib$(1)")) 19 $(eval EXTLIBS += $(shell sh -c "$(PKG_CONFIG) --libs-only-l lib$(1)")) 20endef 21 22$(call feature_check,libtraceevent) 23ifeq ($(feature-libtraceevent), 1) 24 $(call detected,CONFIG_LIBTRACEEVENT) 25 26 TEST = $(shell sh -c "$(PKG_CONFIG) --atleast-version $(LIBTRACEEVENT_MIN_VERSION) libtraceevent > /dev/null 2>&1 && echo y || echo n") 27 ifeq ($(TEST),n) 28 $(info libtraceevent version is too low, it must be at least $(LIBTRACEEVENT_MIN_VERSION)) 29 STOP_ERROR := 1 30 endif 31 32 $(call lib_setup,traceevent) 33else 34 STOP_ERROR := 1 35 $(info libtraceevent is missing. Please install libtraceevent-dev/libtraceevent-devel) 36endif 37 38$(call feature_check,libtracefs) 39ifeq ($(feature-libtracefs), 1) 40 $(call detected,CONFIG_LIBTRACEFS) 41 42 TEST = $(shell sh -c "$(PKG_CONFIG) --atleast-version $(LIBTRACEFS_MIN_VERSION) libtracefs > /dev/null 2>&1 && echo y || echo n") 43 ifeq ($(TEST),n) 44 $(info libtracefs version is too low, it must be at least $(LIBTRACEFS_MIN_VERSION)) 45 STOP_ERROR := 1 46 endif 47 48 $(call lib_setup,tracefs) 49else 50 STOP_ERROR := 1 51 $(info libtracefs is missing. Please install libtracefs-dev/libtracefs-devel) 52endif 53 54ifeq ($(STOP_ERROR),1) 55 $(error Please, check the errors above.) 56endif 57