This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gnat -m31/-m32 broken on 64bit with gcc 4.x


> Returning to a single system.ads as before is not an option here because the
> split was done for a good reason:

Right, definitely not an option. In particular since there are potentially
many other files that will be different between configurations.

Ada currently does not have built-in support for multilibs (there's a related
PR I believe).

Instead, it has another (similar but different) mechanism via the --RTS
make/compile/bind switch, which require manual build/install of several
gnatlib via calls to make -C gcc gnatlib with appropriate options.

For instance to build a 64 bit run time with a 32 bits Solaris compiler:

make -C gcc THREAD_KIND=m64 GNATLIBCFLAGS="-O2 -m64" gnatlib

Connecting this capability with the multilib mechanism would be nice although
nobody has done it so far (for either lack of interest or lack of knowledge
of the gcc makefiles), and there are non trivial issues since there are some
run-times that are supported by the Ada compiler (e.g. pthread run-time
on Solaris, the gnatlib-sjlj and gnatlib-zcx targets) that have no
corresponding multilib configuration, and vice-versa.

Combining all the possibilities would simply create an explosion of run-time,
which is also not desirable.

Arno


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]