On 01/23/13 20:55, David Edelsohn wrote:
> This patch looks okay, although it needs a ChangeLog entry.

Ok, inside the patch file now rather than at the end of the mail text.
I'm still unsure if the patch should contain a real ChangeLog diff or
a simple comment, as I doubt the ChangeLog diff would apply smoothly.

> Also, is this really sufficient? I guess you are linking the shared
> libstdc++ library statically, which is bulky but will work. In the
> past there have been problems linking libstdc++ statically without
> explicitly linking libsupc++ as well.

It is not me using --static-libstdc++, but gcc itself when linking xgcc/xg++.

Since switching to C++ inside gcc, it isn't possible to get working gcc/g++
binaries installed using native ld on AIX without this patch, as these need
dynamic libstdc++.a from builddir(!). Even after successful build with the
workaround from PR55105[1], installed binaries break when removing builddir.

Since --disable-build-with-cxx/--disable-build-poststage1-with-cxx [2] aren't
supported any more too, this really feels like a regression with 4.8.

[1] http://gcc.gnu.org/PR55105
[2] http://gcc.gnu.org/PR52623

Thank you!
/haubi/
2014-01-23  Michael Haubenwallner  <michael.haubenwall...@salomon.at>

	AIX ld does support -bstatic/-bdynamic instead of -Bstatic/-Bdynamic.
	* configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld.
	* configure: Regenerate.

diff --git a/gcc/configure b/gcc/configure
index 10ff5ae..f153294 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -23650,6 +23650,12 @@ elif test x$gcc_cv_ld != x; then
       gcc_cv_ld_static_dynamic=yes
   else
     case "$target" in
+      # AIX ld uses -b flags
+      *-*-aix4.[23]*|*-*-aix[5-9]*)
+	gcc_cv_ld_static_dynamic=yes
+	gcc_cv_ld_static_option="-bstatic"
+	gcc_cv_ld_dynamic_option="-bdynamic"
+	;;
       # HP-UX ld uses -a flags to select between shared and archive.
       *-*-hpux*)
 	if test x"$gnu_ld" = xno; then
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 3703a20..d33fcb2 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -3317,6 +3317,12 @@ elif test x$gcc_cv_ld != x; then
       gcc_cv_ld_static_dynamic=yes
   else
     case "$target" in
+      # AIX ld uses -b flags
+      *-*-aix4.[[23]]*|*-*-aix[[5-9]]*)
+	gcc_cv_ld_static_dynamic=yes
+	gcc_cv_ld_static_option="-bstatic"
+	gcc_cv_ld_dynamic_option="-bdynamic"
+	;;
       # HP-UX ld uses -a flags to select between shared and archive.
       *-*-hpux*)
 	if test x"$gnu_ld" = xno; then

Reply via email to