e9470687c0
Xenomai has many configure options that users may or may not want to set. Providing individual Buildroot config options for every single one of them is not maintainable. Therefore, add a string option to allow the needed flexibility. Important options, or those that have 'select/depends on' impact, can still be turned into real Buildroot config options. Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com> [Thomas: rewrap Config.in help text.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
193 lines
5.6 KiB
Plaintext
193 lines
5.6 KiB
Plaintext
config BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS
|
|
bool
|
|
default y
|
|
depends on BR2_i386 || BR2_x86_64 || (BR2_arm && !BR2_ARM_CPU_ARMV7M) || \
|
|
BR2_bfin || BR2_powerpc
|
|
|
|
comment "xenomai needs an glibc or uClibc toolchain w/ threads"
|
|
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
|
|
depends on BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS
|
|
|
|
config BR2_PACKAGE_XENOMAI
|
|
bool "Xenomai Userspace"
|
|
depends on BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS
|
|
# uses <error.h>, __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
|
|
|
|
config BR2_PACKAGE_XENOMAI_VERSION
|
|
string "Custom Xenomai version"
|
|
help
|
|
Manually select Xenomai version. If left empty, the default
|
|
version will be used.
|
|
|
|
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.
|
|
|
|
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"
|
|
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
|
|
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"
|
|
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_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_SMOKEY_SKIN
|
|
bool "Smokey skin"
|
|
help
|
|
This option allows to install the Smokey 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
|