]> rtime.felk.cvut.cz Git - coffee/buildroot.git/commitdiff
xenomai: add support for registry
authorThomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Wed, 19 Apr 2017 20:00:06 +0000 (22:00 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thu, 20 Apr 2017 21:05:34 +0000 (23:05 +0200)
Add a config option to enable the Xenomai registry, which allows accessing
internal Xenomai state.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
[Thomas:
 - add missing Config.in comment.
 - rewrap Config.in help text.
 - tweak the .mk file logic for the registry path to avoid the super
   long line.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/xenomai/Config.in
package/xenomai/xenomai.mk

index d6474bd0c505fbbfa6fad8c92ec951256c1962d9..6646ec08ea4fb22e2902c089e952acdcacbdecf7 100644 (file)
@@ -96,6 +96,30 @@ config BR2_PACKAGE_XENOMAI_ENABLE_SMP
 
          http://xenomai.org/troubleshooting-a-dual-kernel-configuration/#feature_mismatch_missing8221smpnosmp8221
 
+config BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY
+       bool "Enable registry"
+       select BR2_PACKAGE_LIBFUSE
+       depends on !BR2_STATIC_LIBS # libfuse
+       depends on BR2_TOOLCHAIN_HAS_THREADS # libfuse
+       depends on BR2_USE_MMU # libfuse
+       help
+         Xenomai APIs can export their internal state through a
+         pseudo-filesystem, whose files may be read to obtain
+         information about the existing real-time objects, such as
+         tasks, semaphores, message queues and so on.
+
+comment "registry needs a toolchain w/ threads, dynamic library"
+       depends on BR2_USE_MMU
+       depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
+
+config BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY_PATH
+       string "Custom registry root path"
+       depends on BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY
+       help
+         Specify the root path of the registry here.
+         To use the Xenomai default (currently: /var/run/xenomai),
+         leave this option empty.
+
 config BR2_PACKAGE_XENOMAI_TESTSUITE
        bool "Install testsuite"
        help
index 99f62f0be4020eae7b1a960c5d8968966283a660..89b022a5ac83a9ce36b1542dbf92484c04262bd0 100644 (file)
@@ -45,6 +45,18 @@ else
 XENOMAI_CONF_OPTS += --disable-smp
 endif
 
+ifeq ($(BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY),y)
+XENOMAI_DEPENDENCIES += libfuse
+XENOMAI_REGISTRY_PATH = $(call qstrip,$(BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY_PATH))
+ifeq ($(XENOMAI_REGISTRY_PATH),)
+XENOMAI_CONF_OPTS += --enable-registry
+else
+XENOMAI_CONF_OPTS += --enable-registry=$(XENOMAI_REGISTRY_PATH)
+endif
+else
+XENOMAI_CONF_OPTS += --disable-registry
+endif
+
 # Some of these files may be desired by some users -- at that point specific
 # config options need to be added to keep a particular set.
 define XENOMAI_REMOVE_UNNEEDED_FILES