|
| 1 | +# SPDX-License-Identifier: GPL-2.0 |
| 2 | +# |
| 3 | +# Copyright (C) 2026 Bootlin |
| 4 | + |
| 5 | +include $(TOPDIR)/rules.mk |
| 6 | +include $(INCLUDE_DIR)/kernel.mk |
| 7 | + |
| 8 | +PKG_NAME:=rtla |
| 9 | +PKG_VERSION:=$(LINUX_VERSION) |
| 10 | + |
| 11 | +PKG_MAINTAINER:=Benjamin Robin < [email protected]> |
| 12 | +PKG_LICENSE:=GPL-2.0-only |
| 13 | + |
| 14 | +include $(INCLUDE_DIR)/package.mk |
| 15 | + |
| 16 | +define Package/rtla |
| 17 | + SECTION:=utils |
| 18 | + CATEGORY:=Utilities |
| 19 | + TITLE:=Real-Time Linux Analysis tools |
| 20 | + URL:=https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git |
| 21 | + DEPENDS:= @USE_GLIBC @(KERNEL_OSNOISE_TRACER||KERNEL_TIMERLAT_TRACER) +libtracefs +libtraceevent |
| 22 | +endef |
| 23 | + |
| 24 | +define Package/rtla/description |
| 25 | +The rtla meta-tool includes a set of commands that aims to analyze |
| 26 | +the real-time properties of Linux. Instead of testing Linux as a black box, |
| 27 | +rtla leverages kernel tracing capabilities to provide precise information |
| 28 | +about the properties and root causes of unexpected results. |
| 29 | + |
| 30 | +Available commands are: |
| 31 | +- osnoise (requires osnoise tracer) |
| 32 | +- hwnoise (requires osnoise tracer) |
| 33 | +- timerlat (requires timerlat tracer) |
| 34 | +endef |
| 35 | + |
| 36 | +MAKE_FLAGS = \ |
| 37 | + CROSS_COMPILE="$(TARGET_CROSS)" \ |
| 38 | + CC="$(TARGET_CC)" \ |
| 39 | + CFLAGS='$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) -DVERSION="\"$(PKG_VERSION)\"" -I$(STAGING_DIR)/usr/include/traceevent' \ |
| 40 | + LDFLAGS="$(TARGET_LDFLAGS)" |
| 41 | + |
| 42 | +define Build/Compile |
| 43 | + $(MAKE) -C $(LINUX_DIR)/tools/tracing/rtla $(MAKE_FLAGS) |
| 44 | +endef |
| 45 | + |
| 46 | +define Package/rtla/install |
| 47 | + $(INSTALL_DIR) $(1)/usr/bin |
| 48 | + $(INSTALL_BIN) $(LINUX_DIR)/tools/tracing/rtla/rtla $(1)/usr/bin |
| 49 | +endef |
| 50 | + |
| 51 | +$(eval $(call BuildPackage,rtla)) |
0 commit comments