package/xenomai: move the version setting to Kconfig
authorYann E. MORIN <yann.morin.1998@free.fr>
Tue, 14 Jan 2020 20:55:19 +0000 (21:55 +0100)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Wed, 24 Jun 2020 21:11:56 +0000 (23:11 +0200)
The xenomai version is decided in Kconfig, but the default value is
set in the .mk. This is unlike the other packages that have a version
choice (like linux, uboot...).

Move the value into Config.in.

This paves the way to using other custom sources, like from a git tree.

Note however that any existing configuration will need to be adapted to
the new settings. Adding legacy handling is non-trivial, so manual
intervention will be required.

Reported-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Jan Kiszka <jan.kiszka@siemens.com>
cc: Romain Naour <romain.naour@gmail.com>
Cc: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/xenomai/Config.in
package/xenomai/xenomai.mk

index 0cb0b343de7dcc85af4554fb1e500b2dcba01306..39d10ae69525dc8f6032280cd6b848c7228efbde 100644 (file)
@@ -41,17 +41,25 @@ config BR2_PACKAGE_XENOMAI
 
 if BR2_PACKAGE_XENOMAI
 
-config BR2_PACKAGE_XENOMAI_VERSION
-       string "Custom Xenomai version"
+choice
+       bool "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.
+         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"
+
+endchoice
+
+config BR2_PACKAGE_XENOMAI_VERSION
+       string "Custom Xenomai version" if !BR2_PACKAGE_XENOMAI_LATEST_VERSION
+       default "3.0.10" if BR2_PACKAGE_XENOMAI_LATEST_VERSION
 
 choice
        prompt "Xenomai core"
index 5f389ac851d24350781e7ce8bcb2dcaebf866230..bab9d6997dcd9b27eab679e10349c2c0a8bdca69 100644 (file)
@@ -5,14 +5,14 @@
 ################################################################################
 
 XENOMAI_VERSION = $(call qstrip,$(BR2_PACKAGE_XENOMAI_VERSION))
-ifeq ($(XENOMAI_VERSION),)
-XENOMAI_VERSION = 3.0.10
-else
+XENOMAI_SOURCE = xenomai-$(XENOMAI_VERSION).tar.bz2
+XENOMAI_SITE = http://xenomai.org/downloads/xenomai/stable
+
+# Exclude all from the hash check, but the latest version.
+ifeq ($(BR2_PACKAGE_XENOMAI)$(BR2_PACKAGE_XENOMAI_LATEST_VERSION),y)
 BR_NO_CHECK_HASH_FOR += $(XENOMAI_SOURCE)
 endif
 
-XENOMAI_SITE = http://xenomai.org/downloads/xenomai/stable
-XENOMAI_SOURCE = xenomai-$(XENOMAI_VERSION).tar.bz2
 XENOMAI_LICENSE = GPL-2.0+ with exception (headers), LGPL-2.1+ (libraries), GPL-2.0+ (kernel), GFDL-1.2+ (docs), GPL-2.0 (ipipe patch, can driver)
 # GFDL is not included but refers to gnu.org
 XENOMAI_LICENSE_FILES = debian/copyright include/COPYING kernel/cobalt/COPYING \