perf: fix build on linux 6.6

- use Makefile.perf to prevent overriding MAKEFLAGS
- fix path to PKG_CONFIG
- link libstdc++ statically (only used for demangling)

Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
Felix Fietkau 2024-03-24 15:43:02 +01:00
parent 383b68e73c
commit 87de62dcb8

View File

@ -28,7 +28,7 @@ define Package/perf
SECTION:=devel
CATEGORY:=Development
DEPENDS:= +libelf +libdw +PACKAGE_libunwind:libunwind +libpthread +librt +objdump @!IN_SDK @KERNEL_PERF_EVENTS \
+PACKAGE_libbfd:libbfd +PACKAGE_libopcodes:libopcodes
+PACKAGE_libbfd:libbfd +PACKAGE_libopcodes:libopcodes +libtraceevent
TITLE:=Linux performance monitoring tool
VERSION:=$(LINUX_VERSION)-$(PKG_RELEASE)
URL:=http://www.kernel.org
@ -63,14 +63,19 @@ MAKE_FLAGS = \
LDFLAGS="$(TARGET_LDFLAGS)" \
KBUILD_HOSTCFLAGS="$(HOST_CFLAGS)" \
$(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='') \
PKG_CONFIG="$(PKG_CONFIG)" \
PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)" \
EXCLUDE_EXTLIBS="-lstdc++" \
EXTRA_PERFLIBS="$(shell $(TARGET_CC) -print-file-name=libstdc++.a)" \
WERROR=0 \
O=$(PKG_BUILD_DIR) \
prefix=/usr
define Build/Compile
+$(MAKE_FLAGS) $(MAKE) $(PKG_JOBS) \
+$(MAKE) $(PKG_JOBS) $(MAKE_FLAGS) \
--no-print-directory \
-C $(LINUX_DIR)/tools/perf
-C $(LINUX_DIR)/tools/perf \
-f Makefile.perf
endef
define Package/perf/install