From 860d1a117a6e9640406c26fd9115fc82e604a7ff Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sun, 24 Mar 2024 22:48:56 -0700 Subject: ot-daemon: Update to tip of trunk Drop backports which are not already available Signed-off-by: Khem Raj --- ...x-x86-PIC-inline-ASM-compilation-with-GCC.patch | 68 ---------------------- .../openthread/ot-daemon/mbedtls.patch | 34 ----------- .../openthread/ot-daemon_git.bb | 8 +-- 3 files changed, 4 insertions(+), 106 deletions(-) delete mode 100644 meta-networking/recipes-connectivity/openthread/ot-daemon/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch delete mode 100644 meta-networking/recipes-connectivity/openthread/ot-daemon/mbedtls.patch diff --git a/meta-networking/recipes-connectivity/openthread/ot-daemon/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch b/meta-networking/recipes-connectivity/openthread/ot-daemon/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch deleted file mode 100644 index c9edb0098..000000000 --- a/meta-networking/recipes-connectivity/openthread/ot-daemon/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch +++ /dev/null @@ -1,68 +0,0 @@ -From c0546e351f6d7ab50eb1de8cef1d0d167760fccc Mon Sep 17 00:00:00 2001 -From: Peter Korsgaard -Date: Mon, 27 Aug 2018 22:50:57 +0200 -Subject: [PATCH] bn_mul.h: fix x86 PIC inline ASM compilation with GCC < 5 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes #1910 - -With ebx added to the MULADDC_STOP clobber list to fix #1550, the inline -assembly fails to build with GCC < 5 in PIC mode with the following error: - -include/mbedtls/bn_mul.h:46:13: error: PIC register clobbered by ‘ebx’ in ‘asm’ - -This is because older GCC versions treated the x86 ebx register (which is -used for the GOT) as a fixed reserved register when building as PIC. - -This is fixed by an improved register allocator in GCC 5+. From the release -notes: - -Register allocation improvements: Reuse of the PIC hard register, instead of -using a fixed register, was implemented on x86/x86-64 targets. This -improves generated PIC code performance as more hard registers can be used. - -https://www.gnu.org/software/gcc/gcc-5/changes.html - -As a workaround, detect this situation and disable the inline assembly, -similar to the MULADDC_CANNOT_USE_R7 logic. - -Upstream-Status: Backport [https://github.com/Mbed-TLS/mbedtls/commit/c0546e351f6d7ab50eb1de8cef1d0d167760fccc] -Signed-off-by: Peter Korsgaard ---- - library/bn_mul.h | 18 +++++++++++++++++- - 1 file changed, 17 insertions(+), 1 deletion(-) - ---- a/third_party/mbedtls/repo/include/mbedtls/bn_mul.h -+++ b/third_party/mbedtls/repo/include/mbedtls/bn_mul.h -@@ -55,12 +55,28 @@ - ( !defined(__ARMCC_VERSION) || __ARMCC_VERSION >= 6000000 ) - - /* -+ * GCC < 5.0 treated the x86 ebx (which is used for the GOT) as a -+ * fixed reserved register when building as PIC, leading to errors -+ * like: bn_mul.h:46:13: error: PIC register clobbered by 'ebx' in 'asm' -+ * -+ * This is fixed by an improved register allocator in GCC 5+. From the -+ * release notes: -+ * Register allocation improvements: Reuse of the PIC hard register, -+ * instead of using a fixed register, was implemented on x86/x86-64 -+ * targets. This improves generated PIC code performance as more hard -+ * registers can be used. -+ */ -+#if defined(__GNUC__) && __GNUC__ < 5 && defined(__PIC__) -+#define MULADDC_CANNOT_USE_EBX -+#endif -+ -+/* - * Disable use of the i386 assembly code below if option -O0, to disable all - * compiler optimisations, is passed, detected with __OPTIMIZE__ - * This is done as the number of registers used in the assembly code doesn't - * work with the -O0 option. - */ --#if defined(__i386__) && defined(__OPTIMIZE__) -+#if defined(__i386__) && defined(__OPTIMIZE__) && !defined(MULADDC_CANNOT_USE_EBX) - - #define MULADDC_INIT \ - asm( \ diff --git a/meta-networking/recipes-connectivity/openthread/ot-daemon/mbedtls.patch b/meta-networking/recipes-connectivity/openthread/ot-daemon/mbedtls.patch deleted file mode 100644 index ffaff48dd..000000000 --- a/meta-networking/recipes-connectivity/openthread/ot-daemon/mbedtls.patch +++ /dev/null @@ -1,34 +0,0 @@ -mbedtls: Disable documentation warning as error with clang - -There are shortcomings with doxygen info which clang-15+ flags, dont -treat them as errors - -Remove unused variable - -Fixes -library/bignum.c:1395:29: error: variable 't' set but not used [-Werror,-Wunused-but-set-variable] - -Upstream-Status: Pending -Signed-off-by: Khem Raj ---- a/third_party/mbedtls/repo/library/bignum.c -+++ b/third_party/mbedtls/repo/library/bignum.c -@@ -1544,7 +1544,7 @@ __attribute__ ((noinline)) - #endif - void mpi_mul_hlp( size_t i, mbedtls_mpi_uint *s, mbedtls_mpi_uint *d, mbedtls_mpi_uint b ) - { -- mbedtls_mpi_uint c = 0, t = 0; -+ mbedtls_mpi_uint c = 0, t __attribute__ ((unused)) = 0; - - #if defined(MULADDC_HUIT) - for( ; i >= 8; i -= 8 ) ---- a/third_party/mbedtls/repo/CMakeLists.txt -+++ b/third_party/mbedtls/repo/CMakeLists.txt -@@ -192,7 +192,7 @@ if(CMAKE_COMPILER_IS_GNU) - endif(CMAKE_COMPILER_IS_GNU) - - if(CMAKE_COMPILER_IS_CLANG) -- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wwrite-strings -Wpointer-arith -Wimplicit-fallthrough -Wshadow -Wvla") -+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wwrite-strings -Wpointer-arith -Wimplicit-fallthrough -Wshadow -Wvla -Wno-error=documentation") - set(CMAKE_C_FLAGS_RELEASE "-O2") - set(CMAKE_C_FLAGS_DEBUG "-O0 -g3") - set(CMAKE_C_FLAGS_COVERAGE "-O0 -g3 --coverage") diff --git a/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb b/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb index 1583a3f83..445683541 100644 --- a/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb +++ b/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb @@ -5,15 +5,13 @@ SUMMARY = "OpenThread Daemon is an OpenThread POSIX build mode that runs OpenThr SECTION = "net" LICENSE = "BSD-3-Clause & Apache-2.0" LIC_FILES_CHKSUM = "file://LICENSE;md5=543b6fe90ec5901a683320a36390c65f \ - file://third_party/mbedtls/repo/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \ + file://third_party/mbedtls/repo/LICENSE;md5=379d5819937a6c2f1ef1630d341e026d \ " DEPENDS = "readline" -SRCREV = "7dfde1f12923f03c9680be4d838b94b7a2320324" +SRCREV = "90adc86d34e21a9e8f86d093c2190030042c4a59" PV = "0.1+git" SRC_URI = "git://github.com/openthread/openthread.git;protocol=https;branch=main \ - file://0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch \ - file://mbedtls.patch \ " S = "${WORKDIR}/git" @@ -27,3 +25,5 @@ EXTRA_OECMAKE = "-DOT_DAEMON=ON \ -DOT_PLATFORM=posix \ -DCMAKE_BUILD_TYPE=Release \ " + +EXTRA_OECMAKE:append:libc-musl = " -DOT_TARGET_OPENWRT=ON" -- cgit v1.2.3-54-g00ecf