summaryrefslogtreecommitdiffstats
path: root/libgomp
diff options
context:
space:
mode:
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2009-01-31 17:09:24 +0000
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2009-01-31 17:09:24 +0000
commitd3d87030e32a6aa54c5f1166d6af9a8624d07e54 (patch)
tree51c3ac58889ec103b190859ab0fe78f9f9140a34 /libgomp
parent98de8b69796c50fb1250b1b8138d66167a42f2b9 (diff)
downloadppe42-gcc-d3d87030e32a6aa54c5f1166d6af9a8624d07e54.tar.gz
ppe42-gcc-d3d87030e32a6aa54c5f1166d6af9a8624d07e54.zip
* acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
libgomp_ld_is_gold. Get gold version number. (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning. * configure: Rebuild. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@143822 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgomp')
-rw-r--r--libgomp/ChangeLog7
-rw-r--r--libgomp/acinclude.m49
-rwxr-xr-xlibgomp/configure8
3 files changed, 22 insertions, 2 deletions
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index d23a23342fe..1261f3174a4 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,10 @@
+2009-01-30 Ian Lance Taylor <iant@google.com>
+
+ * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
+ libgomp_ld_is_gold. Get gold version number.
+ (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
+ * configure: Rebuild.
+
2009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
* testsuite/lib/libgomp.exp: Add -B option for targets that
diff --git a/libgomp/acinclude.m4 b/libgomp/acinclude.m4
index c6d9c308d9a..ac450ca9b8f 100644
--- a/libgomp/acinclude.m4
+++ b/libgomp/acinclude.m4
@@ -115,6 +115,7 @@ dnl OPT_LDFLAGS='-Wl,-O1' if possible
dnl LD (as a side effect of testing)
dnl Sets:
dnl with_gnu_ld
+dnl libgomp_ld_is_gold (possibly)
dnl libgomp_gnu_ld_version (possibly)
dnl
dnl The last will be a single integer, e.g., version 1.23.45.0.67.89 will
@@ -146,9 +147,13 @@ AC_DEFUN([LIBGOMP_CHECK_LINKER_FEATURES], [
# Start by getting the version number. I think the libtool test already
# does some of this, but throws away the result.
+ libgomp_ld_is_gold=no
+ if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then
+ libgomp_ld_is_gold=yes
+ fi
changequote(,)
ldver=`$LD --version 2>/dev/null | head -1 | \
- sed -e 's/GNU ld \(version \)\{0,1\}\(([^)]*) \)\{0,1\}\([0-9.][0-9.]*\).*/\3/'`
+ sed -e 's/GNU \(go\)\{0,1\}ld \(version \)\{0,1\}\(([^)]*) \)\{0,1\}\([0-9.][0-9.]*\).*/\4/'`
changequote([,])
libgomp_gnu_ld_version=`echo $ldver | \
$AWK -F. '{ if (NF<3) [$]3=0; print ([$]1*100+[$]2)*100+[$]3 }'`
@@ -270,6 +275,8 @@ if test $enable_symvers = yes; then
then
if test $libgomp_gnu_ld_version -ge $libgomp_min_gnu_ld_version ; then
enable_symvers=gnu
+ elif test $libgomp_ld_is_gold = yes ; then
+ enable_symvers=gnu
else
# The right tools, the right setup, but too old. Fallbacks?
AC_MSG_WARN(=== Linker version $libgomp_gnu_ld_version is too old for)
diff --git a/libgomp/configure b/libgomp/configure
index 432543b2795..948fd3e4105 100755
--- a/libgomp/configure
+++ b/libgomp/configure
@@ -18481,9 +18481,13 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
# Start by getting the version number. I think the libtool test already
# does some of this, but throws away the result.
+ libgomp_ld_is_gold=no
+ if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then
+ libgomp_ld_is_gold=yes
+ fi
ldver=`$LD --version 2>/dev/null | head -1 | \
- sed -e 's/GNU ld \(version \)\{0,1\}\(([^)]*) \)\{0,1\}\([0-9.][0-9.]*\).*/\3/'`
+ sed -e 's/GNU \(go\)\{0,1\}ld \(version \)\{0,1\}\(([^)]*) \)\{0,1\}\([0-9.][0-9.]*\).*/\4/'`
libgomp_gnu_ld_version=`echo $ldver | \
$AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
@@ -18725,6 +18729,8 @@ if test $enable_symvers = yes; then
then
if test $libgomp_gnu_ld_version -ge $libgomp_min_gnu_ld_version ; then
enable_symvers=gnu
+ elif test $libgomp_ld_is_gold = yes ; then
+ enable_symvers=gnu
else
# The right tools, the right setup, but too old. Fallbacks?
{ echo "$as_me:$LINENO: WARNING: === Linker version $libgomp_gnu_ld_version is too old for" >&5
OpenPOWER on IntegriCloud