From: Thomas Petazzoni Date: Mon, 3 Dec 2018 12:38:00 +0000 (+0100) Subject: package/dt-utils: fix build with glibc 2.28 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7e5094033df2efc88928071c6e7a2867c396ca68;p=buildroot.git package/dt-utils: fix build with glibc 2.28 This commit backports an upstream patch that fixes the build of dt-utils with glibc 2.28+. Fixes bug #11536. Signed-off-by: Thomas Petazzoni --- diff --git a/package/dt-utils/0001-src-fix-compilation-for-glibc-version-2.27.9000-36.f.patch b/package/dt-utils/0001-src-fix-compilation-for-glibc-version-2.27.9000-36.f.patch new file mode 100644 index 0000000000..8c2f585946 --- /dev/null +++ b/package/dt-utils/0001-src-fix-compilation-for-glibc-version-2.27.9000-36.f.patch @@ -0,0 +1,75 @@ +From 1c80e31872aec9f2ef7eca6a52aa89c0ea759d8f Mon Sep 17 00:00:00 2001 +From: Enrico Joerns +Date: Wed, 5 Sep 2018 12:28:28 +0200 +Subject: [PATCH] src: fix compilation for glibc version 2.27.9000-36.fc29 and + newer + +As recent glibc versions (>= 2.27.9000-36.fc29) also define 'struct +statx' which is also defined in linux/stat.h, compilation fails with +error: + +| In file included from ../dt-utils-2018.05.0/src/crypto/digest.c:24: +| [..]/usr/include/linux/stat.h:56:8: error: redefinition of 'struct statx_timestamp' +| struct statx_timestamp { +| ^~~~~~~~~~~~~~~ +| In file included from [..]/usr/include/sys/stat.h:446, +| from ../dt-utils-2018.05.0/src/dt/common.h:15, +| from ../dt-utils-2018.05.0/src/crypto/digest.c:19: +| [..]/usr/include/bits/statx.h:25:8: note: originally defined here +| struct statx_timestamp +| ^~~~~~~~~~~~~~~ +| In file included from ../dt-utils-2018.05.0/src/crypto/digest.c:24: +| [..]/usr/include/linux/stat.h:99:8: error: redefinition of 'struct statx' +| struct statx { +| ^~~~~ +| In file included from [..]/usr/include/sys/stat.h:446, +| from ../dt-utils-2018.05.0/src/dt/common.h:15, +| from ../dt-utils-2018.05.0/src/crypto/digest.c:19: +| [..]/usr/include/bits/statx.h:36:8: note: originally defined here +| struct statx +| ^~~~~ + +The linux/stat.h originates from the code that was copied from barebox +but is not explicitly required to be linux/stat.h instead of sys/stat.h +and we do not actually use struct statx. + +Thus it is safe to simply replace occurrences of linux/stat.h by +sys/stat.h to fix compilation. + +Signed-off-by: Enrico Joerns +[Thomas: backport from upstream.] +Signed-off-by: Thomas Petazzoni +--- + src/barebox-state/backend_storage.c | 2 +- + src/crypto/digest.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/barebox-state/backend_storage.c b/src/barebox-state/backend_storage.c +index 53fe829..1052656 100644 +--- a/src/barebox-state/backend_storage.c ++++ b/src/barebox-state/backend_storage.c +@@ -19,7 +19,7 @@ + #include + #include + #include +-#include ++#include + #include + #include + #include +diff --git a/src/crypto/digest.c b/src/crypto/digest.c +index 7a8c3c0..8353412 100644 +--- a/src/crypto/digest.c ++++ b/src/crypto/digest.c +@@ -21,7 +21,7 @@ + #include + #include + #include +-#include ++#include + #include + #include + #include +-- +2.19.2 +