source "package/pax-utils/Config.in"
source "package/perf/Config.in"
source "package/pv/Config.in"
+ source "package/racehound/Config.in"
source "package/ramsmp/Config.in"
source "package/ramspeed/Config.in"
source "package/rt-tests/Config.in"
--- /dev/null
+config BR2_PACKAGE_RACEHOUND
+ bool "racehound"
+ select BR2_PACKAGE_ELFUTILS
+ depends on BR2_LINUX_KERNEL
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_USE_WCHAR # elfutils
+ depends on !BR2_STATIC_LIBS # elfutils
+ # only x86/x86_64 supported
+ depends on BR2_i386 || BR2_x86_64
+ help
+ RaceHound can be used to detect data races in the Linux
+ kernel on x86.
+
+ RaceHound needs the following kernel configurations enabled:
+ - CONFIG_X86_32 or CONFIG_X86_64
+ - CONFIG_MODULES
+ - CONFIG_MODULE_UNLOAD
+ - CONFIG_SYSFS
+ - CONFIG_DEBUG_FS
+ - CONFIG_KALLSYMS
+ - CONFIG_KPROBES
+
+ https://github.com/winnukem/racehound
+
+comment "racehound needs an Linux kernel to be built"
+ depends on !BR2_LINUX_KERNEL
+ depends on BR2_i386 || BR2_x86_64
+
+comment "racehound needs a toolchain w/ C++, wchar, dynamic library"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || BR2_STATIC_LIBS
+ depends on BR2_i386 || BR2_x86_64
--- /dev/null
+################################################################################
+#
+# racehound
+#
+################################################################################
+
+RACEHOUND_VERSION = f3375911019607a0cb6a15bf68fa62dadd6b790b
+RACEHOUND_SITE = $(call github,winnukem,racehound,$(RACEHOUND_VERSION))
+RACEHOUND_LICENSE = GPLv2
+RACEHOUND_LICENSE_FILES = LICENSE
+RACEHOUND_SUPPORTS_IN_SOURCE_BUILD = NO
+
+RACEHOUND_DEPENDENCIES = elfutils linux
+
+RACEHOUND_CONF_OPTS += \
+ -DKERNEL_VERSION_OK=YES \
+ -DMODULE_BUILD_SUPPORTED=YES \
+ -DKERNEL_CONFIG_OK=YES \
+ -DKBUILD_BUILD_DIR=$(LINUX_DIR)
+
+$(eval $(cmake-package))