From e1dcd27e816520bdabc69511d90c4a2ebc242831 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 6 Jan 2023 18:51:34 -0800
Subject: [PATCH] configure: Fix compoiler detection logic for
 cross-compilation

We can not run binaries during cross compile, so poke at compiler to
figure out if it is clang or gcc, for OE we do not have other compilers
in opensource world if there are we can extend this logic

Upstream-Status: Inappropriate [OE-Specific]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 configure | 56 ++++++++++++++++---------------------------------------
 1 file changed, 16 insertions(+), 40 deletions(-)

--- a/configure
+++ b/configure
@@ -661,48 +661,24 @@ if test "$PROFILE"; then
 fi
 
 printf "Finding suitable compiler........"
-if test ! -x "${CC}"; then
-	CC=`pathsearch "${CC:-cc}"`
-	if test -z "$CC" -o ! -x "$CC"; then
-		CC=`pathsearch "${CC:-gcc}"`
-	fi
+if test -z "$CC"; then
+  if test ! -x "${CC}"; then
+	  CC=`pathsearch "${CC:-cc}"`
+	  if test -z "$CC" -o ! -x "$CC"; then
+		  CC=`pathsearch "${CC:-gcc}"`
+	  fi
+  fi
+  assert "$CC" "not found"
+fi
+if `$CC --version | grep gcc > /dev/null 2>&1`; then
+  COMPILER=gcc
+elif `$CC --version | grep clang > /dev/null 2>&1`; then
+  COMPILER=clang
+else
+  COMPILER="not-found"
 fi
-assert "$CC" "not found"
-
-cat << EOF > .1.c
-#include <stdio.h>
-int main(void) {
-#if defined(_WIN32)
-#if defined(__MINGW64__)
-	puts("mingw64");
-	return (0);
-#elif defined(__MINGW32__) && (__MINGW32_MAJOR_VERSION >= 3)
-	puts("mingw32");
-	return (0);
-#else
-	return (1);
-#endif /* __MINGW32__ && __MINGW32_MAJOR_VERSION >= 3 */
-#elif defined(__clang__) && (__clang_major__ >= 3)
-	puts("clang");
-	return (0);
-#elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5110)
-	puts("suncc");
-	return (0);
-#elif defined(__GNUC__) && (__GNUC__ >= 4)
-	puts("gcc");
-	return (0);
-#else
-	return (1);
-#endif
-}
-EOF
-
-$CC -o .1 .1.c
-COMPILER=`./.1 2> /dev/null`
-r=$?
-rm -f .1.c .1
 
-if test "$r" -ne 0; then
+if test "$COMPILER" = "not-found"; then
 	assert "" "update compiler"
 else
 	echo "success [$CC]"
