summaryrefslogtreecommitdiff
path: root/meta/recipes-rt
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-rt')
-rw-r--r--meta/recipes-rt/README13
-rw-r--r--meta/recipes-rt/images/core-image-rt-sdk.bb16
-rw-r--r--meta/recipes-rt/images/core-image-rt.bb12
-rw-r--r--meta/recipes-rt/rt-tests/rt-tests-0.83/makefile-support-user-cflags-ldflags.patch89
-rw-r--r--meta/recipes-rt/rt-tests/rt-tests_0.83.bb32
5 files changed, 162 insertions, 0 deletions
diff --git a/meta/recipes-rt/README b/meta/recipes-rt/README
new file mode 100644
index 000000000..7d7558de4
--- /dev/null
+++ b/meta/recipes-rt/README
@@ -0,0 +1,13 @@
+The recipes-rt recipes provide package and image recipes for using and testing
+the PREEMPT_RT kernel. The core-image-rt*.bb images are minimal images with
+a couple extra packages, including rt-tests. In order to build the image with
+the linux-yocto-rt kernel, be sure to include the following line in your
+local.conf, bblayers.conf, or your $MACHINE.conf.
+
+PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-rt"
+
+If you are creating a new BSP which should use linux-yocto-rt by default,
+use the line above in the $MACHINE.conf in your BSP layer, and specify the
+following in a linux-yocto-rt bbappend recipe:
+
+COMPATIBLE_MACHINE_$MACHINE = $MACHINE
diff --git a/meta/recipes-rt/images/core-image-rt-sdk.bb b/meta/recipes-rt/images/core-image-rt-sdk.bb
new file mode 100644
index 000000000..6ec2d005e
--- /dev/null
+++ b/meta/recipes-rt/images/core-image-rt-sdk.bb
@@ -0,0 +1,16 @@
+#
+# Copyright (C) 2011 Intel Corporation.
+#
+require recipes-core/images/core-image-minimal.bb
+
+DESCRIPTION = "Small image capable of booting a device with a test suite and \
+tools for real-time use. It includes the full meta-toolchain, development \
+headers and libraries to form a standalone SDK."
+DEPENDS = "linux-yocto-rt"
+
+IMAGE_FEATURES += "dev-pkgs tools-sdk"
+EXTRA_IMAGE_FEATURES += "tools-debug tools-profile tools-testapps debug-tweaks"
+
+IMAGE_INSTALL += "rt-tests"
+
+LICENSE = "MIT"
diff --git a/meta/recipes-rt/images/core-image-rt.bb b/meta/recipes-rt/images/core-image-rt.bb
new file mode 100644
index 000000000..9b816bbfd
--- /dev/null
+++ b/meta/recipes-rt/images/core-image-rt.bb
@@ -0,0 +1,12 @@
+#
+# Copyright (C) 2010 Intel Corporation.
+#
+require recipes-core/images/core-image-minimal.bb
+
+DESCRIPTION = "A small image just capable of allowing a device to boot plus a \
+real-time test suite and tools appropriate for real-time use."
+DEPENDS = "linux-yocto-rt"
+
+IMAGE_INSTALL += "rt-tests"
+
+LICENSE = "MIT"
diff --git a/meta/recipes-rt/rt-tests/rt-tests-0.83/makefile-support-user-cflags-ldflags.patch b/meta/recipes-rt/rt-tests/rt-tests-0.83/makefile-support-user-cflags-ldflags.patch
new file mode 100644
index 000000000..09a5d7b81
--- /dev/null
+++ b/meta/recipes-rt/rt-tests/rt-tests-0.83/makefile-support-user-cflags-ldflags.patch
@@ -0,0 +1,89 @@
+From: Darren Hart <dvhart@linux.intel.com>
+Subject: [PATCH rt-tests RFC 4/6] Makefile: Support user supplied CFLAGS and LDFLAGS
+Date: Thu, 22 Mar 2012 02:14:04 +0100
+
+Accept user supplied CFLAGS and LDFLAGS, overwriting the
+Makefile supplied versions. This can cause the build to
+fail if the user does not provide at least what the Makefile
+defines, but so be it.
+
+Upstream-Status: Submitted [linux-rt-users@vger.kernel.org]
+
+Signed-off-by: Darren Hart <dvhart@linux.intel.com>
+CC: Clark Williams <williams@redhat.com>
+CC: John Kacur <jkacur@redhat.com>
+CC: Denys Dmytriyenko <denis@denix.org>
+Signed-off-by: John Kacur <jkacur@redhat.com>
+---
+ Makefile | 25 +++++++++++++------------
+ 1 files changed, 13 insertions(+), 12 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 4038dcc..e1edf6c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -20,7 +20,8 @@ ifneq ($(filter x86_64 i386 ia64 mips powerpc,$(machinetype)),)
+ NUMA := 1
+ endif
+
+-CFLAGS = -D_GNU_SOURCE -Wall -Wno-nonnull -Isrc/include
++CFLAGS ?= -D_GNU_SOURCE -Wall -Wno-nonnull -Isrc/include
++LDFLAGS ?=
+
+ PYLIB := $(shell python -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()')
+
+@@ -61,41 +62,41 @@ all: $(TARGETS) hwlatdetect
+ -include $(sources:.c=.d)
+
+ cyclictest: cyclictest.o rt-utils.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS) $(NUMA_LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(NUMA_LIBS)
+
+ signaltest: signaltest.o rt-utils.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
+
+ pi_stress: pi_stress.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
+
+ hwlatdetect: src/hwlatdetect/hwlatdetect.py
+ chmod +x src/hwlatdetect/hwlatdetect.py
+ ln -s src/hwlatdetect/hwlatdetect.py hwlatdetect
+
+ rt-migrate-test: rt-migrate-test.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
+
+ ptsematest: ptsematest.o rt-utils.o rt-get_cpu.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
+
+ sigwaittest: sigwaittest.o rt-utils.o rt-get_cpu.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
+
+ svsematest: svsematest.o rt-utils.o rt-get_cpu.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
+
+ pmqtest: pmqtest.o rt-utils.o rt-get_cpu.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
+
+ sendme: sendme.o rt-utils.o rt-get_cpu.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(EXTRA_LIBS)
+
+ pip_stress: pip_stress.o error.o rt-utils.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
+
+ hackbench: hackbench.o
+- $(CC) $(CFLAGS) -o $@ $^ $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
+
+ CLEANUP = $(TARGETS) *.o .depend *.*~ *.orig *.rej rt-tests.spec *.d
+ CLEANUP += $(if $(wildcard .git), ChangeLog)
+--
+1.7.7.6
diff --git a/meta/recipes-rt/rt-tests/rt-tests_0.83.bb b/meta/recipes-rt/rt-tests/rt-tests_0.83.bb
new file mode 100644
index 000000000..6c4931e0a
--- /dev/null
+++ b/meta/recipes-rt/rt-tests/rt-tests_0.83.bb
@@ -0,0 +1,32 @@
+DESCRIPTION = "Real-Time preemption testcases"
+HOMEPAGE = "https://rt.wiki.kernel.org/index.php/Cyclictest"
+SECTION = "tests"
+DEPENDS = "linux-libc-headers virtual/libc"
+LICENSE = "GPLv2 & GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
+ file://src/cyclictest/cyclictest.c;beginline=7;endline=9;md5=ce162fe491d19d2ec67dff6dbc938d50 \
+ file://src/pi_tests/pi_stress.c;beginline=6;endline=19;md5=bd426a634a43ec612e9fbf125dfcc949"
+# Version v0.83
+SRCREV = "5f1e84f8b015df3ff950056494134eca3f640d70"
+
+# git -> 0.83 needs a PE bump
+PE = "1"
+PR = "r2"
+
+SRC_URI = "git://github.com/clrkwllms/rt-tests.git \
+ file://makefile-support-user-cflags-ldflags.patch"
+
+S = "${WORKDIR}/git"
+
+# need to append rt-tests' default CFLAGS to ours
+CFLAGS += "-I${S}/src/include -D_GNU_SOURCE -Wall -Wno-nonnulli"
+
+# calling 'uname -m' is broken on crossbuilds
+EXTRA_OEMAKE = "NUMA=0"
+
+do_install() {
+ oe_runmake install DESTDIR=${D} SBINDIR=${sbindir} MANDIR=${mandir} \
+ INCLUDEDIR=${includedir}
+}
+
+FILES_${PN} += "${prefix}/src/backfire"