kernel: bump 6.1 to 6.1.89
[openwrt/openwrt.git] / package / devel / perf / Makefile
1 #
2 # Copyright (C) 2011-2013 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/kernel.mk
10
11 PKG_NAME:=perf
12 PKG_VERSION:=$(LINUX_VERSION)
13 PKG_RELEASE:=5
14
15 PKG_BUILD_FLAGS:=no-mips16 no-lto
16 PKG_BUILD_PARALLEL:=1
17 PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
18 PKG_FLAGS:=nonshared
19
20 # Perf's makefile and headers are not relocatable and must be built from the
21 # Linux sources directory
22 PKG_BUILD_DIR:=$(LINUX_DIR)/tools/perf-$(TARGET_DIR_NAME)
23
24 include $(INCLUDE_DIR)/package.mk
25 include $(INCLUDE_DIR)/nls.mk
26
27 define Package/perf
28 SECTION:=devel
29 CATEGORY:=Development
30 DEPENDS:= +libelf +libdw +PACKAGE_libunwind:libunwind +libpthread +librt +objdump @!IN_SDK @KERNEL_PERF_EVENTS \
31 +PACKAGE_libbfd:libbfd +PACKAGE_libopcodes:libopcodes +libtraceevent
32 TITLE:=Linux performance monitoring tool
33 VERSION:=$(LINUX_VERSION)-$(PKG_RELEASE)
34 URL:=http://www.kernel.org
35 endef
36
37 define Package/perf/description
38 perf is the Linux performance monitoring tool
39 endef
40
41 HOST_CFLAGS += -I$(LINUX_DIR)/tools/include
42
43 TARGET_LDFLAGS += $(INTL_LDFLAGS)
44
45 MAKE_FLAGS = \
46 ARCH="$(LINUX_KARCH)" \
47 NO_LIBPERL=1 \
48 NO_LIBPYTHON=1 \
49 NO_NEWT=1 \
50 NO_LZMA=1 \
51 NO_BACKTRACE=1 \
52 NO_LIBNUMA=1 \
53 NO_GTK2=1 \
54 NO_LIBAUDIT=1 \
55 NO_LIBCRYPTO=1 \
56 NO_LIBUNWIND=1 \
57 NO_LIBZSTD=1 \
58 NO_LIBCAP=1 \
59 CROSS_COMPILE="$(TARGET_CROSS)" \
60 CC="$(TARGET_CC)" \
61 LD="$(TARGET_CROSS)ld" \
62 EXTRA_CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \
63 LDFLAGS="$(TARGET_LDFLAGS)" \
64 KBUILD_HOSTCFLAGS="$(HOST_CFLAGS)" \
65 $(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='') \
66 PKG_CONFIG="$(PKG_CONFIG)" \
67 PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)" \
68 EXCLUDE_EXTLIBS="-lstdc++" \
69 EXTRA_PERFLIBS="$(shell $(TARGET_CC) -print-file-name=libstdc++.a)" \
70 WERROR=0 \
71 O=$(PKG_BUILD_DIR) \
72 prefix=/usr
73
74 define Build/Compile
75 +$(MAKE) $(PKG_JOBS) $(MAKE_FLAGS) \
76 --no-print-directory \
77 -C $(LINUX_DIR)/tools/perf \
78 -f Makefile.perf
79 endef
80
81 define Package/perf/install
82 $(INSTALL_DIR) $(1)/usr/bin
83 $(INSTALL_BIN) $(PKG_BUILD_DIR)/perf $(1)/usr/bin/
84 endef
85
86 $(eval $(call BuildPackage,perf))