config BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS bool default y if BR2_i386 default y if BR2_x86_64 default y if BR2_powerpc default y if BR2_arm && !BR2_ARM_CPU_ARMV7M && !BR2_ARM_CPU_ARMV8A comment "xenomai needs a glibc or uClibc toolchain w/ threads" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL config BR2_PACKAGE_XENOMAI bool "Xenomai Userspace" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_TOOLCHAIN_HAS_THREADS # uses , __WORDSIZE and bits/local_lim.h depends on !BR2_TOOLCHAIN_USES_MUSL help Real-Time Framework for Linux http://www.xenomai.org Xenomai is split in two parts: a kernel part and an userspace part. This package contains the userspace part, which consists mainly in libraries to write userspace real-time programs that interact with the in-kernel Xenomai real-time core. For those libraries to work, you need a Xenomai-enabled kernel. This is possible in two ways: - if you compile your kernel with Buildroot, you need to go to Linux Kernel -> Linux Kernel Extensions to enable the Xenomai extension. - if you compile your kernel outside of Buildroot, you need to make sure that it is Xenomai-enabled. Finally, if you are using a static /dev, make sure to uncomment the Xenomai entries listed in target/generic/device_table_dev.txt. if BR2_PACKAGE_XENOMAI choice bool "Xenomai version" help Make sure that the selected version has a patch for your selected Linux kernel. If it does not, download and select a patch manually with BR2_LINUX_KERNEL_EXT_XENOMAI_ADEOS_PATCH, in the Linux Kernel -> Linux Kernel Extensions menu. config BR2_PACKAGE_XENOMAI_LATEST_VERSION bool "Latest version (3.0.10)" config BR2_PACKAGE_XENOMAI_CUSTOM_VERSION bool "Custom version" config BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL bool "Custom tarball" config BR2_PACKAGE_XENOMAI_CUSTOM_GIT bool "Custom Git repository" endchoice config BR2_PACKAGE_XENOMAI_REPOSITORY string "URL of custom repository" default "https://gitlab.denx.de/Xenomai/xenomai.git" depends on BR2_PACKAGE_XENOMAI_CUSTOM_GIT config BR2_PACKAGE_XENOMAI_VERSION string "Custom Xenomai version" if \ !BR2_PACKAGE_XENOMAI_LATEST_VERSION && \ !BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL default "3.0.10" if BR2_PACKAGE_XENOMAI_LATEST_VERSION default "custom" if BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL config BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL_URL string "URL of custom tarball" depends on BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL choice prompt "Xenomai core" default BR2_PACKAGE_XENOMAI_MERCURY help Select the Xenomai core: dual kernel (Cobalt) or native Linux Kernel (Mercury). config BR2_PACKAGE_XENOMAI_MERCURY bool "Mercury" depends on !BR2_LINUX_KERNEL_EXT_XENOMAI help Select Mercury core for the Xenomai userspace. You want to use it if you have the native Linux Kernel. config BR2_PACKAGE_XENOMAI_COBALT bool "Cobalt" depends on BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS help Select Cobalt core (dual kernel) for the Xenomai userspace. Use this if you use a Xenomai-patched Linux kernel. If you want to use Cobalt core, your kernel must have the Adeos and Xenomai patches applied to it. You can add these through the BR2_LINUX_KERNEL_EXT_XENOMAI option in the Linux Kernel Extensions menu. endchoice config BR2_PACKAGE_XENOMAI_ENABLE_SMP bool "Enable SMP support" default y # SMP not supported below armv6 depends on !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 help This option enables SMP support in Xenomai userspace. If this option is turned on while no SMP support is enabled in the kernel, things will still work. However, if SMP is enabled in the kernel but this option is not turned on, Xenomai applications will complain with: feature mismatch: missing="smp/nosmp" Please refer to this troubleshooting guide for more information: http://xenomai.org/troubleshooting-a-dual-kernel-configuration/#feature_mismatch_missing8221smpnosmp8221 config BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY bool "Enable registry" depends on !BR2_STATIC_LIBS # libfuse depends on BR2_TOOLCHAIN_HAS_THREADS # libfuse depends on BR2_USE_MMU # libfuse select BR2_PACKAGE_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_ADDITIONAL_CONF_OPTS string "Additional configure options" help Specify any additional options to pass to the configure script here. See Xenomai documentation for details. config BR2_PACKAGE_XENOMAI_TESTSUITE bool "Install testsuite" help This option allows to install the Xenomai test programs. config BR2_PACKAGE_XENOMAI_RTCAN bool "RTCan utilities" help This option allows to install the Xenomai RT-CAN utilities. config BR2_PACKAGE_XENOMAI_ANALOGY bool "Analogy libs and utils" help This option allows to install the Xenomai Analogy utilities and libraries menu "Skin selection" config BR2_PACKAGE_XENOMAI_NATIVE_SKIN bool "Alchemy (native) skin" default y help This option allows to install the Alchemy Xenomai skin, previously called 'native' config BR2_PACKAGE_XENOMAI_POSIX_SKIN bool "POSIX skin" default y help This option allows to install the POSIX Xenomai skin config BR2_PACKAGE_XENOMAI_PSOS_SKIN bool "pSOS skin" help This option allows to install the pSOS Xenomai skin config BR2_PACKAGE_XENOMAI_RTAI_SKIN bool "RTAI skin" help This option allows to install the RTAI Xenomai skin config BR2_PACKAGE_XENOMAI_UITRON_SKIN bool "uITRON skin" help This option allows to install the uITRON Xenomai skin config BR2_PACKAGE_XENOMAI_VRTX_SKIN bool "VRTX skin" help This option allows to install the VRTX Xenomai skin config BR2_PACKAGE_XENOMAI_VXWORKS_SKIN bool "VxWorks skin" help This option allows to install the VxWorks Xenomai skin endmenu endif