openwrt/tools/dwarves/Makefile

37 lines
1.0 KiB
Makefile
Raw Normal View History

# SPDX-License-Identifier: GPL-2.0-only
include $(TOPDIR)/rules.mk
PKG_NAME:=dwarves
tools/dwarves: update to v1.27 Update to the latest upstream version and add a patch that enables pahole reproducible builds if SOURCE_DATE_EPOCH is defined in the environment. This patch helps avoid BTF-related module loading problems with packages built separately from the kernel such as mac80211 or kselftests-bpf, e.g.: [ 16.858856] BPF: type_id=1185 bits_offset=0 [ 16.859099] BPF: [ 16.859199] BPF: Invalid name [ 16.859352] BPF: [ 16.859612] failed to validate module [cfg80211] BTF: -22 [ 17.015178] PPP generic driver version 2.4.2 [ 17.052703] NET: Registered PF_PPPOX protocol family [ 17.348722] BPF: type_id=1185 bits_offset=0 [ 17.348912] BPF: [ 17.348996] BPF: Invalid name [ 17.349106] BPF: [ 17.349220] failed to validate module [cfg80211] BTF: -22 [ 17.472070] kmodloader: 3 modules could not be probed [ 17.473133] kmodloader: - cfg80211 - 0 [ 17.473762] kmodloader: dependency not loaded cfg80211 [ 17.474421] kmodloader: - mac80211 - 1 [ 17.474988] kmodloader: dependency not loaded mac80211 [ 17.475632] kmodloader: dependency not loaded cfg80211 [ 17.476263] kmodloader: - mac80211_hwsim - 2 root@OpenWrt:/usr/libexec/kselftests-bpf# insmod bpf_testmod.ko [ 4735.776792] missing module BTF, cannot register kfuncs [ 4735.777371] missing module BTF, cannot register kfuncs [ 4735.777955] missing module BTF, cannot register kfuncs [ 4735.778452] missing module BTF, cannot register kfuncs Release Notes: https://lore.kernel.org/bpf/ZmjBHWw-Q5hKBiwA@x1/ Signed-off-by: Tony Ambardar <itugrok@yahoo.com> Link: https://github.com/openwrt/openwrt/pull/15697 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-02-28 23:04:57 +00:00
PKG_VERSION:=1.27
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://fedorapeople.org/~acme/dwarves/
tools/dwarves: update to v1.27 Update to the latest upstream version and add a patch that enables pahole reproducible builds if SOURCE_DATE_EPOCH is defined in the environment. This patch helps avoid BTF-related module loading problems with packages built separately from the kernel such as mac80211 or kselftests-bpf, e.g.: [ 16.858856] BPF: type_id=1185 bits_offset=0 [ 16.859099] BPF: [ 16.859199] BPF: Invalid name [ 16.859352] BPF: [ 16.859612] failed to validate module [cfg80211] BTF: -22 [ 17.015178] PPP generic driver version 2.4.2 [ 17.052703] NET: Registered PF_PPPOX protocol family [ 17.348722] BPF: type_id=1185 bits_offset=0 [ 17.348912] BPF: [ 17.348996] BPF: Invalid name [ 17.349106] BPF: [ 17.349220] failed to validate module [cfg80211] BTF: -22 [ 17.472070] kmodloader: 3 modules could not be probed [ 17.473133] kmodloader: - cfg80211 - 0 [ 17.473762] kmodloader: dependency not loaded cfg80211 [ 17.474421] kmodloader: - mac80211 - 1 [ 17.474988] kmodloader: dependency not loaded mac80211 [ 17.475632] kmodloader: dependency not loaded cfg80211 [ 17.476263] kmodloader: - mac80211_hwsim - 2 root@OpenWrt:/usr/libexec/kselftests-bpf# insmod bpf_testmod.ko [ 4735.776792] missing module BTF, cannot register kfuncs [ 4735.777371] missing module BTF, cannot register kfuncs [ 4735.777955] missing module BTF, cannot register kfuncs [ 4735.778452] missing module BTF, cannot register kfuncs Release Notes: https://lore.kernel.org/bpf/ZmjBHWw-Q5hKBiwA@x1/ Signed-off-by: Tony Ambardar <itugrok@yahoo.com> Link: https://github.com/openwrt/openwrt/pull/15697 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-02-28 23:04:57 +00:00
PKG_HASH:=ef7f21f1c6016896d03a01f05cab225151f9068e19cc8cddc6e754b2b5cbe279
PKG_MAINTAINER:=Tony Ambardar <itugrok@yahoo.com>
PKG_LICENSE:=GPL-2.0-only
PKG_LICENSE_FILES:=COPYING
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/cmake.mk
CMAKE_HOST_OPTIONS += \
-D__LIB=lib \
-DCMAKE_INSTALL_RPATH="$(STAGING_DIR_HOST)/lib" \
-DCMAKE_SKIP_RPATH=FALSE
define Host/Clean
$(RM) $(STAGING_DIR_HOST)/bin/{codiff,ctracer,dtagnames,pahole,pdwtags}
$(RM) $(STAGING_DIR_HOST)/bin/{pfunct,pglobal,prefcnt,scncopy,syscse}
$(RM) $(STAGING_DIR_HOST)/bin/{ostra-cg,btfdiff,fullcircle}
$(RM) $(STAGING_DIR_HOST)/lib/libdwarves*.so*
$(RM) $(STAGING_DIR_HOST)/share/man/man1/pahole.1
rm -rf $(STAGING_DIR_HOST)/include/dwarves
rm -rf $(STAGING_DIR_HOST)/share/dwarves
$(call Host/Clean/Default)
endef
$(eval $(call HostBuild))