This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: Anyone got irix5? I have questions about your ctype implementation
- From: Alexandre Oliva <aoliva at redhat dot com>
- To: "Kaveh R. Ghazi" <ghazi at caip dot rutgers dot edu>
- Cc: mark at codesourcery dot com, cgf at redhat dot com, gcc at gcc dot gnu dot org, ro at TechFak dot Uni-Bielefeld dot DE, gcc-patches at gcc dot gnu dot org, libstdc++ at gcc dot gnu dot org, java-patches at gcc dot gnu dot org
- Date: 07 May 2002 20:48:14 -0300
- Subject: Re: Anyone got irix5? I have questions about your ctype implementation
- Organization: GCC Team, Red Hat
- References: <200205020414.AAA15565@caip.rutgers.edu><20020503013353.GA2985@redhat.com><200205031423.KAA13608@caip.rutgers.edu><yddg019w2mf.fsf@xayide.TechFak.Uni-Bielefeld.DE><200205032010.QAA10493@caip.rutgers.edu><or8z6zrxh2.fsf@livre.redhat.lsd.ic.unicamp.br><200205060400.AAA21303@caip.rutgers.edu><ory9explnm.fsf@free.redhat.lsd.ic.unicamp.br><200205061211.IAA02448@caip.rutgers.edu><orbsbr50h0.fsf@free.redhat.lsd.ic.unicamp.br><or8z6v3ebk.fsf@free.redhat.lsd.ic.unicamp.br><orit5z1rcw.fsf@free.redhat.lsd.ic.unicamp.br>
On May 7, 2002, Alexandre Oliva <aoliva@redhat.com> wrote:
> On May 7, 2002, Alexandre Oliva <aoliva@redhat.com> wrote:
>> Never mind. I've just duplicated it with a full bootstrap. Something
>> is polluting mabi=64/config.cache with an incorrect setting of LD.
>> Either libf2c or libstdc++-v3. I'm looking into it.
> Ok, any libtool library would do it, due to an ill effect of (some)
> shells.
> My understanding is that, if an exported variable is modified in a
> shell script, the modified value is not supposed to be automatically
> re-exported. It should be kept private to the script.
> It appears that IRIX's /bin/sh doesn't agree with my understanding, so
> this work around was necessary. Ideally, libtool shouldn't mess up
> with LD, but I'd rather not touch this at this point.
> This patch sucessfully bootstrapped the gcc 3.1 branch on
> mips-sgi-irix6.5, and lt_cv_path_LD in both multilibs' config.cache
> contained exactly the original value of LD, not the one modified by
> libtool.m4.
> Mark, ok for 3.1?
Err... So, where's the patch?
Index: boehm-gc/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.
Index: boehm-gc/configure.in
===================================================================
RCS file: /cvs/gcc/egcs/boehm-gc/configure.in,v
retrieving revision 1.39.2.1
diff -u -p -r1.39.2.1 configure.in
--- boehm-gc/configure.in 15 Mar 2002 16:54:58 -0000 1.39.2.1
+++ boehm-gc/configure.in 7 May 2002 22:43:29 -0000
@@ -1,4 +1,4 @@
-# Copyright (c) 1999-2001 by Red Hat, Inc. All rights reserved.
+# Copyright (c) 1999, 2000, 2001, 2002 by Red Hat, Inc. All rights reserved.
#
# THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
# OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
@@ -15,6 +15,12 @@ dnl Process this file with autoconf to p
AC_INIT(gcj_mlc.c)
+# This works around the fact that libtool configuration may change LD
+# for this particular configuration, but some shells, instead of
+# keeping the changes in LD private, export them just because LD is
+# exported.
+ORIGINAL_LD_FOR_MULTILIBS=$LD
+
dnl Can't be done in GC_CONFIGURE because that confuses automake.
AC_CONFIG_AUX_DIR(.)
@@ -272,6 +278,7 @@ dnl Put all the -D options in a file.
echo "$DEFS" > boehm-cflags
if test -n "$CONFIG_FILES"; then
+ LD="${ORIGINAL_LD_FOR_MULTILIBS}"
ac_file=Makefile . ${gc_basedir}/../config-ml.in
fi],
srcdir=${srcdir}
Index: libf2c/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.
Index: libf2c/configure.in
===================================================================
RCS file: /cvs/gcc/egcs/libf2c/configure.in,v
retrieving revision 1.31
diff -u -p -r1.31 configure.in
--- libf2c/configure.in 29 Jan 2002 13:21:06 -0000 1.31
+++ libf2c/configure.in 7 May 2002 22:43:29 -0000
@@ -1,5 +1,5 @@
# Process this file with autoconf to produce a configure script.
-# Copyright (C) 1995, 1997, 1998, 1999 Free Software Foundation, Inc.
+# Copyright (C) 1995, 1997, 1998, 1999, 2002 Free Software Foundation, Inc.
# Contributed by Dave Love (d.love@dl.ac.uk).
#
#This file is part of GNU Fortran.
@@ -22,6 +22,12 @@
AC_PREREQ(2.13)
AC_INIT(libF77/Version.c)
+# This works around the fact that libtool configuration may change LD
+# for this particular configuration, but some shells, instead of
+# keeping the changes in LD private, export them just because LD is
+# exported.
+ORIGINAL_LD_FOR_MULTILIBS=$LD
+
AC_CANONICAL_SYSTEM
target_alias=${target_alias-$target}
AC_SUBST(target_alias)
@@ -113,6 +119,7 @@ AC_CONFIG_SUBDIRS(libU77 libI77 libF77)
AC_OUTPUT(Makefile g2c.h:g2c.hin,
[test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h
if test -n "$CONFIG_FILES"; then
+ LD="${ORIGINAL_LD_FOR_MULTILIBS}"
if test -n "${with_target_subdir}"; then
# FIXME: We shouldn't need to set ac_file
ac_file=Makefile
Index: libffi/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.
Index: libffi/configure.in
===================================================================
RCS file: /cvs/gcc/egcs/libffi/configure.in,v
retrieving revision 1.19.2.4
diff -u -p -r1.19.2.4 configure.in
--- libffi/configure.in 29 Apr 2002 05:47:08 -0000 1.19.2.4
+++ libffi/configure.in 7 May 2002 22:43:30 -0000
@@ -2,6 +2,12 @@ dnl Process this with autoconf to create
AC_INIT(fficonfig.h.in)
AM_CONFIG_HEADER(fficonfig.h)
+# This works around the fact that libtool configuration may change LD
+# for this particular configuration, but some shells, instead of
+# keeping the changes in LD private, export them just because LD is
+# exported.
+ORIGINAL_LD_FOR_MULTILIBS=$LD
+
dnl Default to --enable-multilib
AC_ARG_ENABLE(multilib,
[ --enable-multilib build many library versions (default)],
@@ -154,6 +160,7 @@ fi
AC_OUTPUT(include/Makefile include/ffi.h Makefile,
[
if test -n "$CONFIG_FILES"; then
+ LD="${ORIGINAL_LD_FOR_MULTILIBS}"
ac_file=Makefile . ${libffi_basedir}/../config-ml.in
fi
],
Index: libiberty/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.
Index: libiberty/configure.in
===================================================================
RCS file: /cvs/gcc/egcs/libiberty/configure.in,v
retrieving revision 1.46
diff -u -p -r1.46 configure.in
--- libiberty/configure.in 31 Jan 2002 18:19:39 -0000 1.46
+++ libiberty/configure.in 7 May 2002 22:43:30 -0000
@@ -3,6 +3,12 @@ dnl Process this file with autoconf to p
AC_PREREQ(2.13)
AC_INIT(pexecute.c)
+# This works around the fact that libtool configuration may change LD
+# for this particular configuration, but some shells, instead of
+# keeping the changes in LD private, export them just because LD is
+# exported. We don't use libtool yet, but some day we might, so...
+ORIGINAL_LD_FOR_MULTILIBS=$LD
+
dnl We use these options to decide which functions to include.
AC_ARG_WITH(target-subdir,
[ --with-target-subdir=SUBDIR Configuring in a subdirectory])
@@ -397,6 +403,7 @@ if test -n "$CONFIG_FILES"; then
if test -n "${with_target_subdir}"; then
# FIXME: We shouldn't need to set ac_file
ac_file=Makefile
+ LD="${ORIGINAL_LD_FOR_MULTILIBS}"
. ${libiberty_topdir}/config-ml.in
fi
fi],
Index: libjava/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.
Index: libjava/configure.in
===================================================================
RCS file: /cvs/gcc/egcs/libjava/configure.in,v
retrieving revision 1.114.2.15
diff -u -p -r1.114.2.15 configure.in
--- libjava/configure.in 21 Apr 2002 09:35:59 -0000 1.114.2.15
+++ libjava/configure.in 7 May 2002 22:43:31 -0000
@@ -1,6 +1,12 @@
dnl Process this with autoconf to create configure
AC_INIT(java/lang/System.java)
+# This works around the fact that libtool configuration may change LD
+# for this particular configuration, but some shells, instead of
+# keeping the changes in LD private, export them just because LD is
+# exported.
+ORIGINAL_LD_FOR_MULTILIBS=$LD
+
AC_PROG_LN_S
dnl We use these options to decide which functions to include.
@@ -957,6 +963,7 @@ AC_OUTPUT(Makefile libgcj.spec libgcj-te
[# Only add multilib support code if we just rebuilt top-level Makefile.
case " $CONFIG_FILES " in
*" Makefile "*)
+ LD="${ORIGINAL_LD_FOR_MULTILIBS}"
ac_file=Makefile . ${libgcj_basedir}/../config-ml.in
;;
esac
Index: libobjc/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.
Index: libobjc/configure.in
===================================================================
RCS file: /cvs/gcc/egcs/libobjc/configure.in,v
retrieving revision 1.16
diff -u -p -r1.16 configure.in
--- libobjc/configure.in 11 Feb 2002 18:10:05 -0000 1.16
+++ libobjc/configure.in 7 May 2002 22:43:31 -0000
@@ -1,5 +1,5 @@
# Process this file with autoconf to produce a configure script.
-# Copyright (C) 1995, 1997, 1998, 1999 Free Software Foundation, Inc.
+# Copyright (C) 1995, 1997, 1998, 1999, 2002 Free Software Foundation, Inc.
# Contributed by Dave Love (d.love@dl.ac.uk).
#
#This file is part of GNU Objective C.
@@ -23,6 +23,12 @@ AC_PREREQ(2.13)
AC_INIT(objc/objc.h)
AC_CONFIG_HEADER(config.h)
+# This works around the fact that libtool configuration may change LD
+# for this particular configuration, but some shells, instead of
+# keeping the changes in LD private, export them just because LD is
+# exported.
+ORIGINAL_LD_FOR_MULTILIBS=$LD
+
AC_CANONICAL_SYSTEM
target_alias=${target_alias-$target}
AC_SUBST(target_alias)
@@ -123,6 +129,7 @@ if test -n "$CONFIG_FILES"; then
if test -n "${with_target_subdir}"; then
# FIXME: We shouldn't need to set ac_file
ac_file=Makefile
+ LD="${ORIGINAL_LD_FOR_MULTILIBS}"
. ${toplevel_srcdir}/config-ml.in
fi
fi],
Index: libstdc++-v3/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.
Index: libstdc++-v3/configure.in
===================================================================
RCS file: /cvs/gcc/egcs/libstdc++-v3/configure.in,v
retrieving revision 1.83.2.3
diff -u -p -r1.83.2.3 configure.in
--- libstdc++-v3/configure.in 25 Mar 2002 21:02:06 -0000 1.83.2.3
+++ libstdc++-v3/configure.in 7 May 2002 22:43:31 -0000
@@ -4,6 +4,12 @@
AC_PREREQ(2.13)
AC_INIT(src/ios.cc)
+# This works around the fact that libtool configuration may change LD
+# for this particular configuration, but some shells, instead of
+# keeping the changes in LD private, export them just because LD is
+# exported.
+ORIGINAL_LD_FOR_MULTILIBS=$LD
+
PACKAGE=libstdc++
AC_SUBST(PACKAGE)
# For typical GNU versioning info, format is MAJOR.MINOR.MICRO
@@ -316,6 +322,7 @@ AC_OUTPUT(Makefile \
libmath/Makefile libio/Makefile libsupc++/Makefile \
po/Makefile testsuite/Makefile mkcheck testsuite_flags,
[if test -n "$CONFIG_FILES"; then
+ LD="${ORIGINAL_LD_FOR_MULTILIBS}"
ac_file=Makefile . ${glibcpp_basedir}/../config-ml.in
grep '^MULTISUBDIR =' Makefile >> src/Makefile
grep '^MULTISUBDIR =' Makefile >> libsupc++/Makefile
Index: zlib/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.
Index: zlib/configure.in
===================================================================
RCS file: /cvs/gcc/egcs/zlib/configure.in,v
retrieving revision 1.12
diff -u -p -r1.12 configure.in
--- zlib/configure.in 3 Jul 2001 22:29:32 -0000 1.12
+++ zlib/configure.in 7 May 2002 22:43:31 -0000
@@ -2,6 +2,12 @@ dnl Process this with autoconf to create
AC_INIT(zlib.h)
+# This works around the fact that libtool configuration may change LD
+# for this particular configuration, but some shells, instead of
+# keeping the changes in LD private, export them just because LD is
+# exported.
+ORIGINAL_LD_FOR_MULTILIBS=$LD
+
dnl We may get other options which we dont document:
dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
@@ -118,6 +124,7 @@ fi
AC_OUTPUT(Makefile,
[if test -n "$CONFIG_FILES"; then
+ LD="${ORIGINAL_LD_FOR_MULTILIBS}"
ac_file=Makefile . ${zlib_basedir}/../config-ml.in
fi],
srcdir=${srcdir}
--
Alexandre Oliva Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist Professional serial bug killer