[PATCH] powerpc: Automatically guess --with-cpu value
Carlos Eduardo Seo
cseo@linux.vnet.ibm.com
Mon Jan 18 16:25:00 GMT 2016
On 1/8/16 6:25 PM, Andreas Schwab wrote:
>
> sort -V isn't portable, you should use -n instead.
>
> Andreas.
>
Thanks for catching that. Corrected.
--
Carlos Eduardo Seo
Software Engineer - Linux on Power Toolchain
cseo@linux.vnet.ibm.com
-------------- next part --------------
>From 782a15891797c6fe061eb972aa8711dceefc2a39 Mon Sep 17 00:00:00 2001
From: Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
Date: Sun, 15 Nov 2015 19:31:30 -0200
Subject: [PATCH] powerpc: Automatic CPU detection in preconfigure
Added a check to detect the CPU value in preconfigure, so that glibc is built
with the correct --with-cpu value. This is only done for Power servers.
2016-01-18 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
* sysdeps/powerpc/preconfigure: Added a check to identify the CPU value
and set it for the --with-cpu configure parameter.
---
sysdeps/powerpc/preconfigure | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/sysdeps/powerpc/preconfigure b/sysdeps/powerpc/preconfigure
index 0c6fdde..da3a5ce 100644
--- a/sysdeps/powerpc/preconfigure
+++ b/sysdeps/powerpc/preconfigure
@@ -15,3 +15,35 @@ powerpc*)
rm -f conftest.i
;;
esac
+
+# Lets ask the compiler which Power processor we've got, in case the user did
+# not choose a --with-cpu value.
+# Note if you add patterns here you must ensure that an appropriate directory
+# exists in sysdeps/powerpc
+if test -z "$with_cpu"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: --with-cpu not set. Trying to detect CPU." >&5
+ $as_echo "$as_me: --with-cpu not set. Trying to detect CPU." >&6;}
+ archcpu=`$CC $CFLAGS $CPPFLAGS -E -dM -xc /dev/null |
+ sed -n 's/^#define \(_ARCH_PWR[0-9].*\) .*$/\1/p' |
+ sort -nr | head -n 1`
+
+# Set --with-cpu as appropriate.
+ case "$archcpu" in
+ _ARCH_PWR5X)
+ submachine="power5+"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: CPU identified as $submachine" >&5
+ $as_echo "$as_me: CPU identified as $submachine" >&6;}
+ ;;
+ _ARCH_PWR*)
+ submachine=`echo $archcpu | sed "s/_ARCH_PWR/power/" |
+ tr '[:upper:]' '[:lower:]'`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: CPU identified as $submachine" >&5
+ $as_echo "$as_me: CPU identified as $submachine" >&6;}
+ ;;
+ *)
+ submachine=""
+ { $as_echo "$as_me:${as_lineno-$LINENO}: CPU not identified; using default" >&5
+ $as_echo "$as_me: CPU not identified; using default" >&6;}
+ ;;
+ esac
+fi
--
2.5.4 (Apple Git-61)
More information about the Libc-alpha
mailing list