+2002-11-29  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       (Continuing slow-motion replay)
+       * configure.in (v810*): Remove special setting of tools.
+
+       * configure: Add support for extra required flags for ar or nm.
+       * configure.in (aix4.3+): Use above support for target-specific
+       issues, rather than using config/mt-aix43.
+
 2002-11-29  Nathanael Nerode  <neroden@gcc.gnu.org>
 
        (Starting slow-motion replay merge from gcc 3.4 b-i-b branch)
 
 
   AR=${AR-${host_alias}-ar}
   AR_FOR_TARGET=${AR_FOR_TARGET-${target_alias}-ar}
+  AR_FOR_TARGET=${AR_FOR_TARGET}${extra_arflags_for_target}
   AS=${AS-${host_alias}-as}
   AS_FOR_TARGET=${AS_FOR_TARGET-${target_alias}-as}
   BISON=${BISON-bison}
   MAKEINFO=${MAKEINFO-makeinfo}
   NM=${NM-${host_alias}-nm}
   NM_FOR_TARGET=${NM_FOR_TARGET-${target_alias}-nm}
+  NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target}
   RANLIB=${RANLIB-${host_alias}-ranlib}
   RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET-${target_alias}-ranlib}
   WINDRES=${WINDRES-${host_alias}-windres}
 
   AR=ar
   AR_FOR_TARGET='\$(USUAL_AR_FOR_TARGET)'
+  AR_FOR_TARGET=${AR_FOR_TARGET}${extra_arflags_for_target}
   AS=as
   AS_FOR_TARGET='\$(USUAL_AS_FOR_TARGET)'
   BISON='$(USUAL_BISON)'
   MAKEINFO='\$(USUAL_MAKEINFO)'
   NM=nm
   NM_FOR_TARGET='\$(USUAL_NM_FOR_TARGET)'
+  NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target}
   RANLIB_FOR_TARGET='\$(USUAL_RANLIB_FOR_TARGET)'
   WINDRES=windres
   WINDRES_FOR_TARGET='\$(USUAL_WINDRES_FOR_TARGET)'
 
   host_makefile_frag=mh-frag
 fi
 
+extra_arflags_for_target=
+extra_nmflags_for_target=
 case "${target}" in
-  v810*)
-    target_makefile_frag="config/mt-v810"
-    ;;
   i[3456]86-*-netware*)
     target_makefile_frag="config/mt-netware"
     ;;
     target_makefile_frag="config/mt-linux"
     ;;
   *-*-aix4.[3456789]* | *-*-aix[56789].*)
-    target_makefile_frag="config/mt-aix43"
+    # nm and ar from AIX 4.3 and above require -X32_64 flag to all ar and nm 
+    # commands to handle both 32-bit and 64-bit objects.  These flags are
+    # harmless if we're using GNU nm or ar.
+    extra_arflags_for_target=" -X32_64"
+    extra_nmflags_for_target=" -B -X32_64"
     ;;
   mips*-*-pe | sh*-*-pe | *arm-wince-pe)
     target_makefile_frag="config/mt-wince"