1# SPDX-License-Identifier: GPL-2.0 2 3pahole-ver := $(CONFIG_PAHOLE_VERSION) 4pahole-flags-y := 5 6JOBS := $(patsubst -j%,%,$(filter -j%,$(MAKEFLAGS))) 7 8ifeq ($(call test-le, $(pahole-ver), 125),y) 9 10pahole-flags-y += --btf_gen_floats -j$(JOBS) 11 12pahole-flags-$(call test-ge, $(pahole-ver), 125) += --skip_encoding_btf_inconsistent_proto --btf_gen_optimized 13 14else 15 16# Switch to using --btf_features for v1.26 and later. 17pahole-flags-$(call test-ge, $(pahole-ver), 126) = -j$(JOBS) --btf_features=encode_force,var,float,enum64,decl_tag,type_tag,optimized_func,consistent_func 18 19pahole-flags-$(call test-ge, $(pahole-ver), 131) += --btf_features=layout 20 21endif 22 23pahole-flags-$(CONFIG_PAHOLE_HAS_LANG_EXCLUDE) += --lang_exclude=rust 24 25btf-inline := $(CONFIG_DEBUG_INFO_BTF_INLINE) 26ifneq ($(btf-inline),) 27btf-inline-feat := inline 28pahole-flags-$(call test-ge, $(pahole-ver), 132) += --btf_features=$(btf-inline-feat) 29endif 30 31export PAHOLE_FLAGS := $(pahole-flags-y) 32export BTF_INLINE := $(btf-inline) 33 34resolve-btfids-flags-y := 35resolve-btfids-flags-$(CONFIG_WERROR) += --fatal_warnings 36resolve-btfids-flags-$(if $(KBUILD_EXTMOD),y) += --distill_base 37resolve-btfids-flags-$(if $(KBUILD_VERBOSE),y) += --verbose 38 39export RESOLVE_BTFIDS_FLAGS := $(resolve-btfids-flags-y) 40