From 3a167e62901eef2ac95fac269d2b13d8fdf88c34 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 11 May 2016 10:35:41 -0700 Subject: mdadm: Fix build with clang (From OE-Core rev: d701293b9de2e23cac2f1b57af5b3d44f489c404) Signed-off-by: Khem Raj Signed-off-by: Richard Purdie --- ...dadm.h-Undefine-dprintf-before-redefining.patch | 43 ++++++++++++++++++++++ meta/recipes-extended/mdadm/mdadm_3.4.bb | 1 + 2 files changed, 44 insertions(+) create mode 100644 meta/recipes-extended/mdadm/files/0001-mdadm.h-Undefine-dprintf-before-redefining.patch (limited to 'meta/recipes-extended') diff --git a/meta/recipes-extended/mdadm/files/0001-mdadm.h-Undefine-dprintf-before-redefining.patch b/meta/recipes-extended/mdadm/files/0001-mdadm.h-Undefine-dprintf-before-redefining.patch new file mode 100644 index 0000000000..4cf809290d --- /dev/null +++ b/meta/recipes-extended/mdadm/files/0001-mdadm.h-Undefine-dprintf-before-redefining.patch @@ -0,0 +1,43 @@ +From 6d369e8f226594632ce4260129509daf7030de0a Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 9 May 2016 22:03:57 +0000 +Subject: [PATCH] mdadm.h: Undefine dprintf before redefining + +dprintf is also defined in libc see +usr/include/bits/stdio2.h, this comes into +play especially when fortify sources is enabled +and compilers like clang reports the override + +In file included from policy.c:25: +./mdadm.h:1562:9: error: 'dprintf' macro redefined [-Werror,-Wmacro-redefined] + ^ +/mnt/oe/openembedded-core/build/tmp-glibc/sysroots/qemux86/usr/include/bits/stdio2.h:145:12: note: previous definition is here + +Signed-off-by: Khem Raj +--- +Upstream-Status: Pending + + mdadm.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/mdadm.h b/mdadm.h +index 230e60f..8c8f4d1 100755 +--- a/mdadm.h ++++ b/mdadm.h +@@ -1554,11 +1554,13 @@ static inline char *to_subarray(struct mdstat_ent *ent, char *container) + } + + #ifdef DEBUG ++#undef dprintf + #define dprintf(fmt, arg...) \ + fprintf(stderr, "%s: %s: "fmt, Name, __func__, ##arg) + #define dprintf_cont(fmt, arg...) \ + fprintf(stderr, fmt, ##arg) + #else ++#undef dprintf + #define dprintf(fmt, arg...) \ + ({ if (0) fprintf(stderr, "%s: %s: " fmt, Name, __func__, ##arg); 0; }) + #define dprintf_cont(fmt, arg...) \ +-- +1.9.1 + diff --git a/meta/recipes-extended/mdadm/mdadm_3.4.bb b/meta/recipes-extended/mdadm/mdadm_3.4.bb index 0e55de4450..513a3ce470 100644 --- a/meta/recipes-extended/mdadm/mdadm_3.4.bb +++ b/meta/recipes-extended/mdadm/mdadm_3.4.bb @@ -20,6 +20,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/raid/mdadm/${BPN}-${PV}.tar.xz \ file://0001-Fix-the-path-of-corosync-and-dlm-header-files-check.patch \ file://run-ptest \ file://0001-raid6check-Fix-if-else-indentation.patch \ + file://0001-mdadm.h-Undefine-dprintf-before-redefining.patch \ " SRC_URI[md5sum] = "04b8b21f637540350f8517c7e68d3c63" SRC_URI[sha256sum] = "27d0be4627d38a12ddcd1c1c3721d649d4e89e1093914497e22b57245cda8808" -- cgit 1.2.3-korg