aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2021-02-27 00:18:11 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-03-06 22:39:06 +0000
commit4d5ae5920f4c0bb3d9e559ca75b99e66be5672af (patch)
tree608e8edafa7465fc8eb45b3366a500f0bc949dcf
parentb245a14eaa3c428ea0ae09d2ada1d07c25da81fc (diff)
downloadopenembedded-core-contrib-4d5ae5920f4c0bb3d9e559ca75b99e66be5672af.tar.gz
openembedded-core-contrib-4d5ae5920f4c0bb3d9e559ca75b99e66be5672af.tar.bz2
openembedded-core-contrib-4d5ae5920f4c0bb3d9e559ca75b99e66be5672af.zip
spirv-tools: Replace strncpy with memcpy
Fixes warnings produced with gcc 11 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-graphics/spir/files/0001-fix-strncpy-bound-error.patch30
-rw-r--r--meta/recipes-graphics/spir/spirv-tools_2020.6.bb4
2 files changed, 33 insertions, 1 deletions
diff --git a/meta/recipes-graphics/spir/files/0001-fix-strncpy-bound-error.patch b/meta/recipes-graphics/spir/files/0001-fix-strncpy-bound-error.patch
new file mode 100644
index 00000000000..bc59faa37b6
--- /dev/null
+++ b/meta/recipes-graphics/spir/files/0001-fix-strncpy-bound-error.patch
@@ -0,0 +1,30 @@
+From 1ba007583b83468494c4146bcb7267d863de6a7b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 26 Feb 2021 23:54:10 -0800
+Subject: [PATCH] fix strncpy bound error
+
+This patch fixes the following error while using gcc 11
+error: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' specified bound depends on the length of the source argument [-Werror=stringop-overflow=]
+
+Upstream-Status: Submitted [https://github.com/KhronosGroup/SPIRV-Tools/pull/4151]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ source/diagnostic.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/source/diagnostic.cpp b/source/diagnostic.cpp
+index edc27c8fd..77c29d70c 100644
+--- a/source/diagnostic.cpp
++++ b/source/diagnostic.cpp
+@@ -37,7 +37,7 @@ spv_diagnostic spvDiagnosticCreate(const spv_position position,
+ diagnostic->position = *position;
+ diagnostic->isTextSource = false;
+ memset(diagnostic->error, 0, length);
+- strncpy(diagnostic->error, message, length);
++ memcpy(diagnostic->error, message, length);
+ return diagnostic;
+ }
+
+--
+2.30.1
+
diff --git a/meta/recipes-graphics/spir/spirv-tools_2020.6.bb b/meta/recipes-graphics/spir/spirv-tools_2020.6.bb
index f1fe40096ec..ea89766e922 100644
--- a/meta/recipes-graphics/spir/spirv-tools_2020.6.bb
+++ b/meta/recipes-graphics/spir/spirv-tools_2020.6.bb
@@ -8,7 +8,9 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRCREV = "b27b1afd12d05bf238ac7368bb49de73cd620a8e"
-SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git"
+SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git \
+ file://0001-fix-strncpy-bound-error.patch \
+ "
UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>\d+(\.\d+)+)$"
S = "${WORKDIR}/git"