diff options
author | Alper Ak <alperyasinak1@gmail.com> | 2025-07-09 23:02:15 +0300 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2025-07-09 13:57:04 -0700 |
commit | 16db1ad43272984d5d66830f72d2db4909dd9dd2 (patch) | |
tree | 53357677e79c08edcdb6c956ba26b40823b48822 | |
parent | d88665da77a0857b51173182c121d99fa5f0c071 (diff) | |
download | meta-openembedded-16db1ad43272984d5d66830f72d2db4909dd9dd2.tar.gz |
cannelloni: Upgrade 1.1.0 -> 2.0.0 to allow CMake 4+ compatibility
- Appends -Wno-error=vla-cxx-extension to CXXFLAGS as a temporary workaround for the following Clang error:
sctpthread.cpp:95:18: error: variable length arrays in C++ are a Clang extension [-Werror,-Wvla-cxx-extension]
95 | uint8_t buffer[m_linkMtuSize];
| ^~~~~~~~~~~~~
An upstream fix has been proposed: https://github.com/mguentner/cannelloni/pull/82
Please remove this workaround once the upstream patch is merged or fixed in some other way. Make sure it is fixed in the new version.
- Drop 0001-include-bits-stdc-.h-only-when-using-libstdc.patch because already fixed in newer version.
Changelog:
https://github.com/mguentner/cannelloni/compare/v1.1.0...v2.0.0
Fix:
| CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
| Compatibility with CMake < 3.5 has been removed from CMake.
|
| Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
| to tell CMake that the project requires at least <min> but has been updated
| to work with policies introduced by <max> or earlier.
|
| Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
|
|
| -- Configuring incomplete, errors occurred!
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
3 files changed, 21 insertions, 53 deletions
diff --git a/meta-networking/recipes-connectivity/cannelloni/cannelloni/0001-include-bits-stdc-.h-only-when-using-libstdc.patch b/meta-networking/recipes-connectivity/cannelloni/cannelloni/0001-include-bits-stdc-.h-only-when-using-libstdc.patch deleted file mode 100644 index 71f447c94b..0000000000 --- a/meta-networking/recipes-connectivity/cannelloni/cannelloni/0001-include-bits-stdc-.h-only-when-using-libstdc.patch +++ /dev/null | |||
@@ -1,37 +0,0 @@ | |||
1 | From 7aed36765ae44b41ede7e139da0a11b3696f2e06 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Mon, 13 Nov 2023 00:07:23 -0800 | ||
4 | Subject: [PATCH] include bits/stdc++.h only when using libstdc++ | ||
5 | |||
6 | We have other c++ runtime implementations e.g. llvm's libc++ which does | ||
7 | not provide this header bits/stdc++.h, therefore make sure that this | ||
8 | header is only included when using libstdc++ | ||
9 | |||
10 | Fixes | ||
11 | | /mnt/b/yoe/master/build/tmp/work/core2-64-yoe-linux/cannelloni/1.1.0/git/tcpthread.cpp:27:10: fatal error: 'bits/stdc++.h' file not found | ||
12 | | 27 | #include <bits/stdc++.h> | ||
13 | | | ^~~~~~~~~~~~~~~ | ||
14 | |||
15 | Upstream-Status: Submitted [https://github.com/mguentner/cannelloni/pull/56] | ||
16 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
17 | --- | ||
18 | tcpthread.cpp | 2 ++ | ||
19 | 1 file changed, 2 insertions(+) | ||
20 | |||
21 | diff --git a/tcpthread.cpp b/tcpthread.cpp | ||
22 | index a1b3047..bb5a7b2 100644 | ||
23 | --- a/tcpthread.cpp | ||
24 | +++ b/tcpthread.cpp | ||
25 | @@ -24,7 +24,9 @@ | ||
26 | #include <cstdint> | ||
27 | #include <cstdio> | ||
28 | |||
29 | +#ifdef __GLIBCXX__ | ||
30 | #include <bits/stdc++.h> | ||
31 | +#endif | ||
32 | |||
33 | #include <linux/can.h> | ||
34 | #include <string.h> | ||
35 | -- | ||
36 | 2.42.1 | ||
37 | |||
diff --git a/meta-networking/recipes-connectivity/cannelloni/cannelloni_1.1.0.bb b/meta-networking/recipes-connectivity/cannelloni/cannelloni_1.1.0.bb deleted file mode 100644 index 835f33055a..0000000000 --- a/meta-networking/recipes-connectivity/cannelloni/cannelloni_1.1.0.bb +++ /dev/null | |||
@@ -1,16 +0,0 @@ | |||
1 | SUMMARY = "a SocketCAN over Ethernet tunnel" | ||
2 | HOMEPAGE = "https://github.com/mguentner/cannelloni" | ||
3 | LICENSE = "GPL-2.0-only" | ||
4 | |||
5 | SRC_URI = "git://github.com/mguentner/cannelloni.git;protocol=https;branch=master \ | ||
6 | file://0001-include-bits-stdc-.h-only-when-using-libstdc.patch \ | ||
7 | " | ||
8 | SRCREV = "3d4fb8c8b07f6d7c62b2bdad7e5a94de61c9a29b" | ||
9 | |||
10 | LIC_FILES_CHKSUM = "file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263" | ||
11 | |||
12 | inherit cmake | ||
13 | |||
14 | |||
15 | PACKAGECONFIG ??= "lksctp-tools" | ||
16 | PACKAGECONFIG[lksctp-tools] = "-DSCTP_SUPPORT=true, -DSCTP_SUPPORT=false, lksctp-tools" | ||
diff --git a/meta-networking/recipes-connectivity/cannelloni/cannelloni_2.0.0.bb b/meta-networking/recipes-connectivity/cannelloni/cannelloni_2.0.0.bb new file mode 100644 index 0000000000..6129c9bd0c --- /dev/null +++ b/meta-networking/recipes-connectivity/cannelloni/cannelloni_2.0.0.bb | |||
@@ -0,0 +1,21 @@ | |||
1 | SUMMARY = "a SocketCAN over Ethernet tunnel" | ||
2 | HOMEPAGE = "https://github.com/mguentner/cannelloni" | ||
3 | LICENSE = "GPL-2.0-only" | ||
4 | |||
5 | SRC_URI = "git://github.com/mguentner/cannelloni.git;protocol=https;branch=master" | ||
6 | SRCREV = "9f649ef21710999c6f674bc3d914ab2e88363bac" | ||
7 | |||
8 | LIC_FILES_CHKSUM = "file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263" | ||
9 | |||
10 | inherit cmake | ||
11 | |||
12 | PACKAGECONFIG ??= "lksctp-tools" | ||
13 | PACKAGECONFIG[lksctp-tools] = "-DSCTP_SUPPORT=true, -DSCTP_SUPPORT=false, lksctp-tools" | ||
14 | |||
15 | # Workaround for Clang error: | ||
16 | # sctpthread.cpp:95:18: error: variable length arrays in C++ are a Clang extension [-Werror,-Wvla-cxx-extension] | ||
17 | # 95 | uint8_t buffer[m_linkMtuSize]; | ||
18 | # | ^~~~~~~~~~~~~ | ||
19 | # Upstream fix proposed: https://github.com/mguentner/cannelloni/pull/82 | ||
20 | # When upgrading the recipe, remove this flag once the upstream patch is merged and included to new version. | ||
21 | CXXFLAGS:append:toolchain-clang = " -Wno-error=vla-cxx-extension" | ||