package/xenomai: bump to version 3.2.5

The previous download URL does not contain the most recent versions, so
it was necessary to change it to bump to the current version.

No license file has been changed.

[Romain:
  - remove 3.0.10 patches
  - Update XENOMAI_AUTORECONF comment]
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
This commit is contained in:
Dario Binacchi 2024-09-14 17:15:44 +02:00 committed by Romain Naour
parent e4ba07505d
commit 44fafcc41a
9 changed files with 59 additions and 1906 deletions

View file

@ -1,94 +0,0 @@
From 702697cafcec735e55f075594a2990204c8ea17d Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Tue, 10 Aug 2021 18:01:48 +0200
Subject: [PATCH] Add --disable-{demo,testsuite} options
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Allow the user to disable demo and testsuite to avoid the following
build failures on arc and riscv32:
latency.c: In function 'display':
latency.c:326:21: error: format '%ld' expects argument of type 'long int', but argument 2 has type 'time_t' {aka 'long long int'} [-Werror=format=]
326 | ("RTT| %.2ld:%.2ld:%.2ld (%s, %Ld us period, "
| ~~~~^
| |
| long int
| %.2lld
327 | "priority %d)\n", dt / 3600,
| ~~~~~~~~~
| |
| time_t {aka long long int}
altency.c: In function display:
altency.c:262:21: error: format %ld expects argument of type long int, but argument 2 has type time_t {aka long long int} [-Werror=format=]
262 | ("RTT| %.2ld:%.2ld:%.2ld (%s, %Ld us period, "
| ~~~~^
| |
| long int
| %.2lld
263 | "priority %d)\n", dt / 3600,
| ~~~~~~~~~
| |
| time_t {aka long long int}
Fixes:
- http://autobuild.buildroot.org/results/448efe22e8fe058a1b354a3c124874e30b9ce138
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
Makefile.am | 12 ++++++++++--
configure.ac | 12 ++++++++++++
2 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 891e53f66..604644277 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -6,9 +6,17 @@ SUBDIRS = \
config \
include \
scripts \
- testsuite \
- utils \
+ utils
+
+if XENO_ENABLE_DEMO
+SUBDIRS += \
demo
+endif
+
+if XENO_ENABLE_TESTSUITE
+SUBDIRS += \
+ testsuite
+endif
EXTRA_DIST = kernel debian
diff --git a/configure.ac b/configure.ac
index bd5fd5ba9..29dfd16e5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -200,6 +200,18 @@ test \! x$debug_mode = x && AC_DEFINE(CONFIG_XENO_DEBUG,1,[config])
AM_CONDITIONAL(XENO_DEBUG_FULL,[test x$debug_mode = xfull])
test x$debug_mode = xfull && AC_DEFINE(CONFIG_XENO_DEBUG_FULL,1,[config])
+dnl Demo (default: on)
+
+AC_ARG_ENABLE(demo,
+ AS_HELP_STRING([--disable-demo], [Disable demo]))
+AM_CONDITIONAL(XENO_ENABLE_DEMO,[test x$enable_demo != xno])
+
+dnl Testsuite (default: on)
+
+AC_ARG_ENABLE(testsuite,
+ AS_HELP_STRING([--disable-testsuite], [Disable testsuite]))
+AM_CONDITIONAL(XENO_ENABLE_TESTSUITE,[test x$enable_testsuite != xno])
+
dnl Low resolution clock (default: off)
unset lores_clock
--
2.30.2

View file

@ -1,57 +0,0 @@
From 627d488db3aa71406e32d4d8934629e8b0f35905 Mon Sep 17 00:00:00 2001
From: Jan Kiszka <jan.kiszka@siemens.com>
Date: Sat, 16 Oct 2021 15:46:33 +0200
Subject: [PATCH] lib/{cobalt,copperplate}: Use valid addresses for
pthread_setspecific
glibx 2.34 and newer annotated pthread_setspecific in a way that gcc-11
complains about non-NULL pointers that are outside of what is considered
valid. So use dummy addresses instead. namely the related pthread keys.
Those pointers will never be dereferenced in both use cases.
See also https://sourceware.org/bugzilla/show_bug.cgi?id=28458.
Reported-by: Vitaly Chikunov <vt@altlinux.org>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
[Retrieved from:
https://source.denx.de/Xenomai/xenomai/-/commit/627d488db3aa71406e32d4d8934629e8b0f35905]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
include/copperplate/threadobj.h | 6 +++++-
lib/cobalt/printf.c | 2 +-
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/include/copperplate/threadobj.h b/include/copperplate/threadobj.h
index 7e6904f4c..c8363415b 100644
--- a/include/copperplate/threadobj.h
+++ b/include/copperplate/threadobj.h
@@ -173,7 +173,11 @@ void threadobj_save_timeout(struct threadobj_corespec *corespec,
#define __THREAD_M_SPARE6 (1 << 22)
#define __THREAD_M_SPARE7 (1 << 23)
-#define THREADOBJ_IRQCONTEXT ((struct threadobj *)-2UL)
+/*
+ * We need to use a valid address here. The object will never be dereferenced
+ * when it is identified as IRQ context, so the pthread key itself is fine.
+ */
+#define THREADOBJ_IRQCONTEXT ((struct threadobj *)&threadobj_tskey)
struct traceobj;
struct syncobj;
diff --git a/lib/cobalt/printf.c b/lib/cobalt/printf.c
index 8982ddc93..0aa5940c6 100644
--- a/lib/cobalt/printf.c
+++ b/lib/cobalt/printf.c
@@ -729,7 +729,7 @@ done:
pthread_cond_init(&printer_wakeup, NULL);
spawn_printer_thread();
/* We just need a non-zero TSD to trigger the dtor upon unwinding. */
- pthread_setspecific(cleanup_key, (void *)1);
+ pthread_setspecific(cleanup_key, &cleanup_key);
atexit(rt_print_flush_buffers);
}
--
GitLab

View file

@ -1,30 +0,0 @@
From 6fe6b75bef4b4bb9723b12f0e9ebfd9877e00a44 Mon Sep 17 00:00:00 2001
From: Jan Kiszka <jan.kiszka@siemens.com>
Date: Sat, 16 Oct 2021 19:52:28 +0200
Subject: [PATCH] testsuite/latency: Use corresponding pclose for popen
Was found by latest gcc-11 and -Werror=mismatched-dealloc.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Upstream: https://source.denx.de/Xenomai/xenomai/-/commit/6fe6b75bef4b4bb9723b12f0e9ebfd9877e00a44
---
testsuite/latency/latency.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/testsuite/latency/latency.c b/testsuite/latency/latency.c
index a0e6f4826084..6cd3a28b44f6 100644
--- a/testsuite/latency/latency.c
+++ b/testsuite/latency/latency.c
@@ -412,7 +412,7 @@ static void dump_histo_gnuplot(int32_t *histogram, time_t duration)
fputs(buf, ofp);
}
- fclose(ifp);
+ pclose(ifp);
dump_data:
for (n = 0; n < histogram_size && histogram[n] == 0; n++)
--
2.43.0

View file

@ -0,0 +1,55 @@
From eb5c49e4c0a1068363dc81f70ea2a65ad0f91c0f Mon Sep 17 00:00:00 2001
From: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Date: Sat, 14 Sep 2024 12:20:36 +0200
Subject: [PATCH] smokey: fix build failure
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This patch fixes the following building failure raised on bumping Xenomai
to version 3.2.5 in Buildroot:
In file included from helpers.c:29:
../../include/smokey/smokey.h:258:39: error: unknown type name bool
258 | int smokey_modprobe(const char *name, bool silent);
| ^~~~
../../include/smokey/smokey.h:27:1: note: bool is defined in header <stdbool.h>; did you forget to #include <stdbool.h>?
26 | #include <xenomai/init.h>
+++ |+#include <stdbool.h>
27 |
In file included from init.c:33:
../../include/smokey/smokey.h:258:39: error: unknown type name bool
258 | int smokey_modprobe(const char *name, bool silent);
| ^~~~
../../include/smokey/smokey.h:26:1: note: bool is defined in header <stdbool.h>; did you forget to #include <stdbool.h>?
25 | #include <copperplate/clockobj.h>
+++ |+#include <stdbool.h>
26 | #include <xenomai/init.h>
helpers.c:299:39: error: unknown type name bool
299 | int smokey_modprobe(const char *name, bool silent)
| ^~~~
helpers.c:30:1: note: bool is defined in header <stdbool.h>; did you forget to #include <stdbool.h>?
29 | #include <smokey/smokey.h>
+++ |+#include <stdbool.h>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Upstream: https://lore.kernel.org/xenomai/20240914131026.1035993-1-dario.binacchi@amarulasolutions.com/T/#u
---
include/smokey/smokey.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/smokey/smokey.h b/include/smokey/smokey.h
index cf9701966db8..45dd0dcd017b 100644
--- a/include/smokey/smokey.h
+++ b/include/smokey/smokey.h
@@ -19,6 +19,7 @@
#define _XENOMAI_SMOKEY_SMOKEY_H
#include <stdarg.h>
+#include <stdbool.h>
#include <pthread.h>
#include <boilerplate/list.h>
#include <boilerplate/libc.h>
--
2.43.0

View file

@ -81,7 +81,7 @@ config BR2_PACKAGE_XENOMAI_REPOSITORY_VERSION
config BR2_PACKAGE_XENOMAI_VERSION
string
default "3.0.10" if BR2_PACKAGE_XENOMAI_LATEST_VERSION
default "3.2.5" if BR2_PACKAGE_XENOMAI_LATEST_VERSION
default BR2_PACKAGE_XENOMAI_CUSTOM_VERSION_VALUE \
if BR2_PACKAGE_XENOMAI_CUSTOM_VERSION
default "custom" if BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL

View file

@ -1,5 +1,5 @@
# Locally computed;
sha256 080f893d6ab8e3065285fbb482695477a0502b9490dccd1f744cebaac94691e5 xenomai-3.0.10.tar.bz2
sha256 ec47f07057ec3ff290c4ef3779cc8c680bb2c60cfd55e2e1a8cb254d7ad3cfad xenomai-3.2.5.tar.bz2
sha256 d37ebe86bf618942dad958927c44403f9b02fbebb3071a4a08408ccbdab5290f debian/copyright
sha256 f3380321da72ff509bf6939aa80e6d02fd22268f5c705137b34c205b39bc63a0 include/COPYING
sha256 d6b6d8ed1b12309085caf1cf775ea4acdad3288c7f7d993c2502bd19c87e4764 kernel/cobalt/COPYING

View file

@ -14,9 +14,9 @@ XENOMAI_SITE = $(call qstrip,$(BR2_PACKAGE_XENOMAI_REPOSITORY))
XENOMAI_SITE_METHOD = git
else
XENOMAI_SOURCE = xenomai-$(XENOMAI_VERSION).tar.bz2
XENOMAI_SITE = https://ftp.denx.de/pub/xenomai/xenomai/stable
XENOMAI_SITE = https://source.denx.de/Xenomai/xenomai/-/archive/v$(XENOMAI_VERSION)
endif
# We're patching configure.ac
# The source archive does not have the autoconf/automake material generated.
XENOMAI_AUTORECONF = YES
# Exclude all from the hash check, but the latest version.