summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/Config.in1
-rw-r--r--package/racehound/Config.in31
-rw-r--r--package/racehound/racehound.mk21
3 files changed, 53 insertions, 0 deletions
diff --git a/package/Config.in b/package/Config.in
index 3fce4158bb..714e2bd5e0 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -90,6 +90,7 @@ endif
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"
diff --git a/package/racehound/Config.in b/package/racehound/Config.in
new file mode 100644
index 0000000000..f0a8565026
--- /dev/null
+++ b/package/racehound/Config.in
@@ -0,0 +1,31 @@
+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
diff --git a/package/racehound/racehound.mk b/package/racehound/racehound.mk
new file mode 100644
index 0000000000..f77e5f30f2
--- /dev/null
+++ b/package/racehound/racehound.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# 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))
OpenPOWER on IntegriCloud