xenomai: Add xenomai recipe
PATCH 1/2 xenomai: Add xenomai recipe
Add recipe for the xenomai. This recipe is used twice, once to build the xenomai userspace components and again to patch the kernel with the cobalt core. Therefore, the xenomai sources are installed into work-shared rather then work to make them accessible to the kernel recipe, which triggers the patching.
--- meta/recipes-kernel/xenomai/xenomai_git.bb | 54 ++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 meta/recipes-kernel/xenomai/xenomai_git.bb
meta/recipes-kernel/xenomai/xenomai_git.bb new file +54 -0
@@ -0,0 +1,54 @@ +SUMMARY = "Xenomai 3 userspace libraries" +DESCRIPTION = "Xenomai 3 userspace libraries" +HOMEPAGE = "http://www.xenomai.org/" +SECTION = "libs" +LICENSE = "GPLv2 & LGPLv2.1" +LIC_FILES_CHKSUM = " \ + file://include/COPYING;md5=79ed705ccb9481bf9e7026b99f4e2b0e \ + file://kernel/cobalt/COPYING;md5=073dc31ccb2ebed70db54f1e8aeb4c33 \ + file://kernel/cobalt/posix/COPYING;md5=073dc31ccb2ebed70db54f1e8aeb4c33 \ + file://kernel/cobalt/rtdm/COPYING;md5=c99f6e66e37d1cb50ad8be4f5be2ea5d \ + file://lib/alchemy/COPYING;md5=68ad62c64cc6c620126241fd429e68fe \ + file://lib/analogy/COPYING;md5=68ad62c64cc6c620126241fd429e68fe \ + file://lib/boilerplate/COPYING;md5=68ad62c64cc6c620126241fd429e68fe \ + file://lib/cobalt/COPYING;md5=68ad62c64cc6c620126241fd429e68fe \ + file://lib/copperplate/COPYING;md5=68ad62c64cc6c620126241fd429e68fe \ + file://lib/psos/COPYING;md5=68ad62c64cc6c620126241fd429e68fe \ + file://lib/smokey/COPYING;md5=68ad62c64cc6c620126241fd429e68fe \ + file://lib/trank/COPYING;md5=68ad62c64cc6c620126241fd429e68fe \ + file://lib/vxworks/COPYING;md5=68ad62c64cc6c620126241fd429e68fe \ + " + +RDEPENDS_${PN} = "libgcc" + +SRC_URI = "git://git.xenomai.org/xenomai-3.git;branch=stable-3.0.x" +SRCREV="cbc6b87bed0fe7d6d932d943fc8ca0fb49bb5b71" + +S = "${TMPDIR}/work-shared/${MACHINE}/xenomai-source" +B = "${WORKDIR}/build" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--includedir=${includedir}/${PN} --with-demodir=${bindir}" + +do_unpack_extra() { + rmdir ${S} + mv ${WORKDIR}/git ${S} +} +addtask unpack_extra after do_unpack before do_patch + +do_install_append() { + rmdir ${D}/dev +} + +PACKAGES =+ "${PN}-demo" +FILES_${PN} += " \ + ${libdir}/cobalt.wrappers ${libdir}/modechk.wrappers \ + ${libdir}/dynlist.ld \ + " +FILES_${PN}-demo = " \ + ${bindir}/altency ${bindir}/bufp-label ${bindir}/bufp-readwrite \ + ${bindir}/can_rtt ${bindir}/cross-link ${bindir}/cyclictest \ + ${bindir}/eth_p_all ${bindir}/iddp-label ${bindir}/iddp-sendrecv \ + ${bindir}/xddp-echo ${bindir}/xddp-label ${bindir}/xddp-stream \ + "
Signature · 1 line
2.11.0
PATCH 2/2 kernel: Add optional patch_xenomai task
Add additional task, do_patch_xenomai, inserted between do_patch and do_configure tasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.
You will also need a kernel recipe for a kernel version with ipipe patch applied.
--- meta/classes/kernel.bbclass | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)
meta/classes/kernel.bbclass +16 -0
@@ -481,6 +481,22 @@ do_shared_workdir () { fi } +PACKAGECONFIG[xenomai] = ",," + +do_patch_xenomai[depends] += "${@bb.utils.contains('PACKAGECONFIG', 'xenomai', 'xenomai:do_patch', '', d)}" +do_patch_xenomai() { + set +e + cd ${S} + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'xenomai', 'yes', 'no', d)}" = "yes" ]; then + ${TMPDIR}/work-shared/${MACHINE}/xenomai-source/scripts/prepare-kernel.sh \ + --arch=${TARGET_ARCH} \ + --linux=${STAGING_KERNEL_DIR} ; + fi +} + +addtask patch_xenomai before do_configure after do_patch + # We don't need to stage anything, not the modules/firmware since those would clash with linux-firmware sysroot_stage_all () { :
Signature · 1 line
2.11.0
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Bruce
Quoted 42 lines
Signed-off-by Marek Vasut <[email protected]>Cc Richard Purdie <[email protected]>--- meta/classes/kernel.bbclass | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)meta/classes/kernel.bbclass +16
-1@@ -481,6 +481,22 @@ do_shared_workdir () { fi } +PACKAGECONFIG[xenomai] = ",," + +do_patch_xenomai[depends] += "${@bb.utils.contains('PACKAGECONFIG', 'xenomai', 'xenomai:do_patch', '', d)}" +do_patch_xenomai() { + set +e + cd ${S} + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'xenomai', 'yes', 'no', d)}" = "yes" ]; then + ${TMPDIR}/work-shared/${MACHINE}/xenomai-source/scripts/prepare-kernel.sh \ + --arch=${TARGET_ARCH} \ + --linux=${STAGING_KERNEL_DIR} ; + fi +} + +addtask patch_xenomai before do_configure after do_patch + # We don't need to stage anything, not the modules/firmware since those would clash with linux-firmware sysroot_stage_all () { : --2.11.0
--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end"
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 6 lines · Bruce Ashfield
Quoted 5 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.
Quoted 7 lines
Quoted 2 lines
You will also need a kernel recipe for a kernel version with ipipe patch applied.
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
Signature · 2 lines
Best regards, Marek Vasut
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 10 lines · Marek Vasut
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
Quoted 6 lines
Quoted 4 lines
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
Why would a specific xenomai "host" kernel recipe be made and have that patch applied ? You need to control the kernel version and configuration for it to work at runtime anyway.
Bruce
Quoted 4 lines
--
Best regards,
Marek Vasut
Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end"
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 24 lines · Bruce Ashfield
Quoted 10 lines · Marek Vasut
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
Quoted 6 lines
Quoted 4 lines
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
Quoted 7 lines
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
Why would a specific xenomai "host" kernel recipe be made and have that patch applied ? You need to control the kernel version and configuration for it to work at runtime anyway.
but of course, if RP thinks this is ok .. then it is ok.
I've done Xenomai in the past, and have maintained a separate recipe for the parts. So I'm speaking for that experience and for what I've done to maintain various kernel variants in oe based distros.
Bruce
Quoted 13 lines
Bruce
Quoted 4 lines
--
Best regards,
Marek Vasut--
"Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end"
Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end"
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
In reply to Bruce AshfieldQuoted 24 lines · Bruce Ashfield
Quoted 10 lines · Marek Vasut
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
Quoted 6 lines
Quoted 4 lines
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
Quoted 3 lines
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
We actually have a -rt patch available in the kernel recipes, so why not xenomai patch ?
Signature · 2 lines
Best regards, Marek Vasut
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 25 lines · Marek Vasut
Quoted 24 lines · Bruce Ashfield
Quoted 10 lines · Marek Vasut
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
Quoted 6 lines
Quoted 4 lines
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
Quoted 5 lines
Quoted 3 lines
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
We actually have a -rt patch available in the kernel recipes, so why not xenomai patch ?
As a separate recipe, not as something in a common bbclass, which implies that it applies and works everywhere.
Anyone that is trying to apply -rt against a generic kernel .. is very mistaken.
Bruce
Quoted 4 lines
--
Best regards,
Marek Vasut
Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end"
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 29 lines · Bruce Ashfield
Quoted 28 lines · Marek Vasut
Quoted 27 lines · Bruce Ashfield
Quoted 10 lines · Marek Vasut
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
Quoted 6 lines
Quoted 4 lines
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
Quoted 7 lines
Quoted 2 lines
We actually have a -rt patch available in the kernel recipes, so why not xenomai patch ?
As a separate recipe, not as something in a common bbclass, which implies that it applies and works everywhere.
Anyone that is trying to apply -rt against a generic kernel .. is very mistaken.
So I should pull this into linux-*-xenomai , just like the rt patch does?
Signature · 2 lines
Best regards, Marek Vasut
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 33 lines · Marek Vasut
Quoted 32 lines · Bruce Ashfield
Quoted 30 lines · Marek Vasut
Quoted 24 lines · Bruce Ashfield
Quoted 10 lines · Marek Vasut
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
Quoted 6 lines
Quoted 4 lines
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
Quoted 3 lines
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
We actually have a -rt patch available in the kernel recipes, so why not xenomai patch ?
Quoted 6 lines
Quoted 4 lines
As a separate recipe, not as something in a common bbclass, which implies that it applies and works everywhere.
Anyone that is trying to apply -rt against a generic kernel .. is very mistaken.
So I should pull this into linux-*-xenomai , just like the rt patch does?
Yep.
But how it is maintained is a RP question, oe-core has a set of reference kernel versions, and those reference kernels have a similar set of functionality across architectures, are actively maintained and all get the same fixes at the same time.
(and I just realized that RP isn't copied on this thread anymore, so I'm adding him).
If we introduce something like this, I'd argue that it needs to follow the same kernel versions to be consistent with the other oe-core references.
That is a question for the steering committee and the architecture mailing list.
So while that happens, why not just put this in a meta-xenomai for the time being and once all the details have been hammered out, it could merge.
Cheers,
Bruce
Quoted 4 lines
--
Best regards,
Marek Vasut
Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end"
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 51 lines · Bruce Ashfield
Quoted 33 lines · Marek Vasut
Quoted 32 lines · Bruce Ashfield
Quoted 30 lines · Marek Vasut
Quoted 24 lines · Bruce Ashfield
Quoted 10 lines · Marek Vasut
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
Quoted 6 lines
Quoted 4 lines
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
Quoted 3 lines
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
We actually have a -rt patch available in the kernel recipes, so why not xenomai patch ?
Quoted 6 lines
Quoted 4 lines
As a separate recipe, not as something in a common bbclass, which implies that it applies and works everywhere.
Anyone that is trying to apply -rt against a generic kernel .. is very mistaken.
So I should pull this into linux-*-xenomai , just like the rt patch does?
Yep.
But how it is maintained is a RP question, oe-core has a set of reference kernel versions, and those reference kernels have a similar set of functionality across architectures, are actively maintained and all get the same fixes at the same time.
(and I just realized that RP isn't copied on this thread anymore, so I'm adding him).
Quoted 7 lines
If we introduce something like this, I'd argue that it needs to follow the same kernel versions to be consistent with the other oe-core references.
That is a question for the steering committee and the architecture mailing list.
So while that happens, why not just put this in a meta-xenomai for the time being and once all the details have been hammered out, it could merge.
That's fine by me, although the main feedback I'm currently interested in is whether this has any chance of getting included in oe-core and if there are some other big issues with this .
Signature · 2 lines
Best regards, Marek Vasut
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 55 lines · Marek Vasut
Quoted 54 lines · Bruce Ashfield
Quoted 33 lines · Marek Vasut
Quoted 32 lines · Bruce Ashfield
Quoted 30 lines · Marek Vasut
Quoted 24 lines · Bruce Ashfield
Quoted 10 lines · Marek Vasut
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
Quoted 6 lines
Quoted 4 lines
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
Quoted 3 lines
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
We actually have a -rt patch available in the kernel recipes, so why not xenomai patch ?
Quoted 6 lines
Quoted 4 lines
As a separate recipe, not as something in a common bbclass, which implies that it applies and works everywhere.
Anyone that is trying to apply -rt against a generic kernel .. is very mistaken.
So I should pull this into linux-*-xenomai , just like the rt patch does?
Yep.
But how it is maintained is a RP question, oe-core has a set of reference kernel versions, and those reference kernels have a similar set of functionality across architectures, are actively maintained and all get the same fixes at the same time.
(and I just realized that RP isn't copied on this thread anymore, so I'm adding him).
If we introduce something like this, I'd argue that it needs to follow the same kernel versions to be consistent with the other oe-core references.
Quoted 7 lines
Quoted 4 lines
That is a question for the steering committee and the architecture mailing list.
So while that happens, why not just put this in a meta-xenomai for the time being and once all the details have been hammered out, it could merge.
That's fine by me, although the main feedback I'm currently interested in is whether this has any chance of getting included in oe-core and if there are some other big issues with this .
There has been interest in this in the past, which is why I've gone down the route of getting things up and running myself.
The real feedback and feasibility would be in those other forums, but if done right, I don't see why not myself.
Bruce
Quoted 4 lines
--
Best regards,
Marek Vasut
Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end"
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
Quoted 64 lines · Bruce Ashfield
Quoted 55 lines · Marek Vasut
Quoted 54 lines · Bruce Ashfield
Quoted 33 lines · Marek Vasut
Quoted 32 lines · Bruce Ashfield
Quoted 30 lines · Marek Vasut
Quoted 24 lines · Bruce Ashfield
Quoted 10 lines · Marek Vasut
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.You will also need a kernel recipe for a kernel version with ipipe patch applied.
Quoted 6 lines
Quoted 4 lines
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
Quoted 3 lines
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
We actually have a -rt patch available in the kernel recipes, so why not xenomai patch ?
Quoted 6 lines
Quoted 4 lines
As a separate recipe, not as something in a common bbclass, which implies that it applies and works everywhere.
Anyone that is trying to apply -rt against a generic kernel .. is very mistaken.
So I should pull this into linux-*-xenomai , just like the rt patch does?
Yep.
But how it is maintained is a RP question, oe-core has a set of reference kernel versions, and those reference kernels have a similar set of functionality across architectures, are actively maintained and all get the same fixes at the same time.
(and I just realized that RP isn't copied on this thread anymore, so I'm adding him).
If we introduce something like this, I'd argue that it needs to follow the same kernel versions to be consistent with the other oe-core references.
Quoted 7 lines
Quoted 4 lines
That is a question for the steering committee and the architecture mailing list.
So while that happens, why not just put this in a meta-xenomai for the time being and once all the details have been hammered out, it could merge.
That's fine by me, although the main feedback I'm currently interested in is whether this has any chance of getting included in oe-core and if there are some other big issues with this .
Quoted 5 lines
There has been interest in this in the past, which is why I've gone down the route of getting things up and running myself.
The real feedback and feasibility would be in those other forums, but if done right, I don't see why not myself.
OK fine, so let's see.
Signature · 2 lines
Best regards, Marek Vasut
Re: [PATCH 2/2] kernel: Add optional patch_xenomai task
In reply to Marek VasutQuoted 50 lines · Marek Vasut
Quoted 49 lines · Bruce Ashfield
Quoted 28 lines · Marek Vasut
Quoted 27 lines · Bruce Ashfield
Quoted 26 lines · Marek Vasut
Quoted 25 lines · Bruce Ashfield
Quoted 7 lines · Marek Vasut
Quoted 6 lines · Bruce Ashfield
Quoted 5 lines · Marek Vasut
Add additional task,
do_patch_xenomai, inserted betweendo_patchanddo_configuretasks. This task applies the cobalt patch to the kernel sources for a specific machine. This is disabled by default, so use PACKAGECONFIG[xenomai] of the kernel package to enable the patching.Quoted 8 lines
Quoted 6 lines
Quoted 2 lines
You will also need a kernel recipe for a kernel version with ipipe patch applied.
This doesn't make any sense to me.
Why on earth would this be in kernel.bbclass ? and part of a xenomai recipe ?
Do you have a better suggestion how to make this easily available for every kernel recipe ?
There's no need to make it available for every kernel recipe. If someone wants to build xenomai, they need to have a specific kernel recipe and configuration to make it work. By providing that patch and allowing it to be applied to any kernel doesn't mean it will actually work .. so you aren't doing anyone any favours.
The same thing could be said for the -rt patch, aufs, etc, any patch could be made available for any kernel, but they aren't, since they will either fail to patch, or won't work at runtime.
Quoted 7 lines
Quoted 6 lines
Quoted 2 lines
We actually have a -rt patch available in the kernel recipes, so why not xenomai patch ?
As a separate recipe, not as something in a common bbclass, which implies that it applies and works everywhere.
Anyone that is trying to apply -rt against a generic kernel .. is very mistaken.
So I should pull this into linux-*-xenomai , just like the rt patch does?
Yep.
But how it is maintained is a RP question, oe-core has a set of reference kernel versions, and those reference kernels have a similar set of functionality across architectures, are actively maintained and all get the same fixes at the same time.
(and I just realized that RP isn't copied on this thread anymore, so I'm adding him).
If we introduce something like this, I'd argue that it needs to follow the same kernel versions to be consistent with the other oe-core references.
Quoted 8 lines
Quoted 4 lines
That is a question for the steering committee and the architecture mailing list.
So while that happens, why not just put this in a meta-xenomai for the time being and once all the details have been hammered out, it could merge.
That's fine by me, although the main feedback I'm currently interested in is whether this has any chance of getting included in oe-core and if there are some other big issues with this .
My biggest concern is who will keep this maintained in Master and in stable branches? Do we need to add this to the test matrix? Adding things to Core has a different set of requirements than other layers.
- armin
Quoted 5 lines · Marek Vasut
Add recipe for the xenomai. This recipe is used twice, once to build the xenomai userspace components and again to patch the kernel with the cobalt core. Therefore, the xenomai sources are installed into work-shared rather then work to make them accessible to the kernel recipe, which triggers the patching.
What is xenomai? What is a 'cobalt core'? What do they do and who would want to use them? Please do explain that in the commit message.
meta/recipes-kernel/xenomai/xenomai_git.bb line 2
Quoted 2 lines
meta/recipes-kernel/xenomai/xenomai_git.bb new file +2
-0+SUMMARY = "Xenomai 3 userspace libraries" +DESCRIPTION = "Xenomai 3 userspace libraries"
... and here - description cannot be the same as the summary.
Alex
Quoted 9 lines · Alexander Kanavin
Quoted 5 lines · Marek Vasut
Add recipe for the xenomai. This recipe is used twice, once to build the xenomai userspace components and again to patch the kernel with the cobalt core. Therefore, the xenomai sources are installed into work-shared rather then work to make them accessible to the kernel recipe, which triggers the patching.
What is xenomai? What is a 'cobalt core'? What do they do and who would want to use them? Please do explain that in the commit message.
I guess the link in the xenomai recipe explains it, details are here:
http://xenomai.org/installing-xenomai-3-x/
Quoted 4 lines
meta/recipes-kernel/xenomai/xenomai_git.bb line 2
Quoted 2 lines
meta/recipes-kernel/xenomai/xenomai_git.bb new file +2
-0+SUMMARY = "Xenomai 3 userspace libraries" +DESCRIPTION = "Xenomai 3 userspace libraries"... and here - description cannot be the same as the summary.
So do I remove one of them or what's the difference really ?
Quoted 1 line
Alex
Signature · 2 lines
Best regards, Marek Vasut
Quoted 11 lines · Marek Vasut
Quoted 8 lines
Quoted 5 lines
Add recipe for the xenomai. This recipe is used twice, once to build the xenomai userspace components and again to patch the kernel with the cobalt core. Therefore, the xenomai sources are installed into work-shared rather then work to make them accessible to the kernel recipe, which triggers the patching.
What is xenomai? What is a 'cobalt core'? What do they do and who would want to use them? Please do explain that in the commit message.
I guess the link in the xenomai recipe explains it, details are here:
http://xenomai.org/installing-xenomai-3-x/
I need to clarify: all of these questions need to be answered in the context of oe-core. Essentially, you need to explain why the recipe should be in oe-core and not in its own layer.
Quoted 6 lines
Quoted 4 lines
meta/recipes-kernel/xenomai/xenomai_git.bb line 2
Quoted 2 lines
meta/recipes-kernel/xenomai/xenomai_git.bb new file +2
-0+SUMMARY = "Xenomai 3 userspace libraries" +DESCRIPTION = "Xenomai 3 userspace libraries"... and here - description cannot be the same as the summary.
So do I remove one of them or what's the difference really ?
Same as the difference between commit summary and commit message. Description usually spans several lines, and provides fully formed sentences that explain what the software provided by the recipe does.
Also, an update to maintainers.inc would be appreciated, when adding new recipes.
Alex
Quoted 10 lines · Alexander Kanavin
Quoted 9 lines · Marek Vasut
Quoted 8 lines
Quoted 5 lines
Add recipe for the xenomai. This recipe is used twice, once to build the xenomai userspace components and again to patch the kernel with the cobalt core. Therefore, the xenomai sources are installed into work-shared rather then work to make them accessible to the kernel recipe, which triggers the patching.
What is xenomai? What is a 'cobalt core'? What do they do and who would want to use them? Please do explain that in the commit message.
Quoted 6 lines
Quoted 2 lines
I guess the link in the xenomai recipe explains it, details are here:
http://xenomai.org/installing-xenomai-3-x/I need to clarify: all of these questions need to be answered in the context of oe-core. Essentially, you need to explain why the recipe should be in oe-core and not in its own layer.
Same rationale as for having linux-*-rt with preempt-rt patch.
Quoted 5 lines
Quoted 5 lines
Quoted 4 lines
meta/recipes-kernel/xenomai/xenomai_git.bb line 2
Quoted 2 lines
meta/recipes-kernel/xenomai/xenomai_git.bb new file +2
-0+SUMMARY = "Xenomai 3 userspace libraries" +DESCRIPTION = "Xenomai 3 userspace libraries"... and here - description cannot be the same as the summary.
Quoted 8 lines
Quoted 1 line
So do I remove one of them or what's the difference really ?
Same as the difference between commit summary and commit message. Description usually spans several lines, and provides fully formed sentences that explain what the software provided by the recipe does.
Also, an update to maintainers.inc would be appreciated, when adding new recipes.
Fine
Signature · 2 lines
Best regards, Marek Vasut