This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: libstdc++-v3 won't build on AIX 4.1 any more (3.0 branch)
- To: David Edelsohn <dje at watson dot ibm dot com>
- Subject: Re: libstdc++-v3 won't build on AIX 4.1 any more (3.0 branch)
- From: Alexandre Oliva <aoliva at redhat dot com>
- Date: 18 May 2001 02:07:07 -0300
- Cc: Benjamin Kosnik <bkoz at redhat dot com>, libstdc++ at gcc dot gnu dot org, gcc-bugs at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Organization: GCC Team, Red Hat
- References: <200105180418.AAA28660@makai.watson.ibm.com>
On May 18, 2001, David Edelsohn <dje@watson.ibm.com> wrote:
> Fine with me.
> What doesn't work on AIX 4.1?
Originally, it failed to build because os_include_dir was set to
config/os/generic, but there was no atomicity.h in there. Then, Ben
suggested me to use config/cpu/powerpc, because the primitives we
needed were defined there. Unfortunately, they used PowerPC-specific
opcodes, but since we compile the main multilib variant with
-mcpu=common, it failed to assemble. Finally, I switched to using
config/cpu/generic, where there are fake implementations of the needed
functions, and it is working fine.
> fetch_and_add() does not exist?
No. I had just failed to realize that config/os/aix/bits/atomicity.h
might work on AIX 4.1. I've just verified that fetch_and_add() does
exist, so it's probably ok to use the AIX-specific atomicity.h on AIX
4.1, in which case this patch would work. I'm testing it now. Do we
want to use this, even though we don't support threads, or should I
just leave it at that? I.e., ok to install, if this works?
Index: libstdc++-v3/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* configure.target (ATOMICITYH): Actually use AIX-specific code on
earlier versions of AIX.
Index: libstdc++-v3/configure.target
===================================================================
RCS file: /cvs/gcc/egcs/libstdc++-v3/configure.target,v
retrieving revision 1.21
diff -u -p -r1.21 configure.target
--- libstdc++-v3/configure.target 2001/05/18 04:50:27 1.21
+++ libstdc++-v3/configure.target 2001/05/18 05:04:57
@@ -105,11 +105,11 @@ esac
# THIS TABLE IS SORTED. KEEP IT THAT WAY.
case "${target}" in
- *-*-aix4.[3456789]* | *-*-aix[56789]*)
- ATOMICITYH=$os_include_dir
- ;;
*-*-aix*)
- ATOMICITYH=config/cpu/generic
+ # We set os_include_dir to config/os/aix only on AIX 4.3 and
+ # newer, but config/os/aix/bits/atomicity.h works on earlier
+ # versions of AIX, so we explicitly duplicate the directory here.
+ ATOMICITYH="config/os/aix"
;;
*-*-irix*)
ATOMICITYH=$os_include_dir
--
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 *Please* write to mailing lists, not to me