From 5701add1ec981bbf10819a70c063e89eef2e8c2c Mon Sep 17 00:00:00 2001 From: Carlos Eduardo Seo 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-04-07 Carlos Eduardo Seo * 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..b0e036c 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 | + grep "#define _ARCH_PWR" | sed "s/^.*PWR//" | sed "s/ 1$//" | + sort -nr | head -n 1 | sed "s/^/_ARCH_PWR/" + +# 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.6.4 (Apple Git-63)