From e2dba281429384cc22a73a58eaf79459e64be266 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 15 May 2020 17:05:45 -0700
Subject: [PATCH] wordsize.h: Unify the header between arm and aarch64

This helps OE multilibs to not sythesize this header which causes all
kind of recursions and other issues since wordsize is fundamental header
and ends up including itself in many case e.g. clang tidy, bpf etc.

Upstream-Status: Inappropriate [ OE-Specific ]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 sysdeps/aarch64/bits/wordsize.h          | 8 ++++++--
 sysdeps/{aarch64 => arm}/bits/wordsize.h | 8 ++++++--
 2 files changed, 12 insertions(+), 4 deletions(-)
 copy sysdeps/{aarch64 => arm}/bits/wordsize.h (85%)

diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/aarch64/bits/wordsize.h
index 4635431f0e..5ef0ed21f3 100644
--- a/sysdeps/aarch64/bits/wordsize.h
+++ b/sysdeps/aarch64/bits/wordsize.h
@@ -17,12 +17,16 @@
    License along with the GNU C Library; if not, see
    <https://www.gnu.org/licenses/>.  */
 
-#ifdef __LP64__
+#if defined (__aarch64__) && defined (__LP64__)
 # define __WORDSIZE			64
-#else
+#elif defined (__aarch64__)
 # define __WORDSIZE			32
 # define __WORDSIZE32_SIZE_ULONG	1
 # define __WORDSIZE32_PTRDIFF_LONG	1
+#else
+# define __WORDSIZE			32
+# define __WORDSIZE32_SIZE_ULONG	0
+# define __WORDSIZE32_PTRDIFF_LONG	0
 #endif
 
 #define __WORDSIZE_TIME64_COMPAT32	0
diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h
similarity index 85%
copy from sysdeps/aarch64/bits/wordsize.h
copy to sysdeps/arm/bits/wordsize.h
index 4635431f0e..5ef0ed21f3 100644
--- a/sysdeps/aarch64/bits/wordsize.h
+++ b/sysdeps/arm/bits/wordsize.h
@@ -17,12 +17,16 @@
    License along with the GNU C Library; if not, see
    <https://www.gnu.org/licenses/>.  */
 
-#ifdef __LP64__
+#if defined (__aarch64__) && defined (__LP64__)
 # define __WORDSIZE			64
-#else
+#elif defined (__aarch64__)
 # define __WORDSIZE			32
 # define __WORDSIZE32_SIZE_ULONG	1
 # define __WORDSIZE32_PTRDIFF_LONG	1
+#else
+# define __WORDSIZE			32
+# define __WORDSIZE32_SIZE_ULONG	0
+# define __WORDSIZE32_PTRDIFF_LONG	0
 #endif
 
 #define __WORDSIZE_TIME64_COMPAT32	0
