On Tue, Dec 20, 2005 at 03:52:23PM +0100, Paolo Bonzini wrote:
> So, the AIX makefile fragments config/mh-ppc-aix and config/mt-ppc-aix
> could not just do
>
> ADAFLAGS += -mminimal-toc
> ADAFLAGS_FOR_TARGET += -mminimal-toc
We can't use += in the top level, can we?
--
Daniel Jacobowitz
CodeSo
Personally, I think that the way ADAFLAGS is specified is too
error-prone. I understood that Kenner said, -gnatg is necessary on
the language components, but is actually removing a legitimate warning
for other files such as the compiler.
No, because -gnatg also imposes strict st
Well if that's your criteria then sure, your previous change was also not
in the obvious category ;-)
Well, the `obvious' part of it was
flags_to_pass = { flag = ADAFLAGS };
flags_to_pass = { flag = BOOT_ADAFLAGS };
flags_to_pass = { flag = BOOT_LDFLAGS };
which I admit should not have commi
> I'm not saying I don't like the idea, but I'm not prepared to do it and
> I surely don't want to "slip it under the door" as obvious.
Well if that's your criteria then sure, your previous change was also not
in the obvious category ;-)
Arno
[thanks for the general info on what minimal-toc is about, I should
have mentioned I am familiar with the general issue and with this option]
> When Ada builds on AIX, libada contains a very large number of TOC
> entries. Even the smallest, simplest executable overflows because the
> entir
Since I don't understand really if what I'm saying makes sense, I think
the best solution is to revert because it is also affecting people that
use --disable-bootstrap (whom I cannot blame at all).
That would certainly be better than the current situation, although if
you look at Makefile
> You can set it for gcc/ada only, not for the benefit of the entire
> tree. It makes it hard, for example, to make libada really its own
> toplevel directory, because T_ADAFLAGS is set within the gcc target
> fragments.
Well, so you're saying there will be, in the future, a potential
problem
When the data section patch is merged into GCC, this may not be
necessary, so maybe we should just declare GNU Ada unusable on AIX until
that patch is committed.
Didn't you mention it is already broken for other reasons?
Paolo
> Arnaud Charlet writes:
Arnaud> Although I would need to see the entire issue we're trying to solve
under
Arnaud> AIX, since it's not clear at all to me that forcing -mminimal-toc
Arnaud> systematically is a good idea to start with. Could you point to a
detailed
Arnaud> discussion on the AI
What is T_ADAFLAGS used for if as you say there is no way to set it globally ?
You can set it for gcc/ada only, not for the benefit of the entire
tree. It makes it hard, for example, to make libada really its own
toplevel directory, because T_ADAFLAGS is set within the gcc target
fragment
> Yes, but it provides no way to set them globally. That means, if
> something is written in Ada, it has to be in gcc/ada, and if you want to
> change some parameter you more or less have to invoke `make' from the
> gcc/ada directory.
Well, I'm afraid you've lost me...
What is T_ADAFLAGS used fo
So, the AIX makefile fragments config/mh-ppc-aix and
config/mt-ppc-aix could not just do
ADAFLAGS += -mminimal-toc
ADAFLAGS_FOR_TARGET += -mminimal-toc
The Ada Makefile already takes into account $(X_ADAFLAGS) and
$(T_ADAFLAGS)
Yes, but it provides no way to set them globally. That means
>>>gcc -c -g -I- -I. -Iada -I/cvs/gcc-svn/trunk/gcc/ada
>>>/cvs/gcc-svn/trunk/gcc/ada/ada.ads -o ada/ada.o
>>>ada.ads:16:01: language defined units may not be recompiled
So you need a -gnat option, or compilation fails?
Yes, because, as it says, the Ada standard does not pe
> Because the line above, as you know, does not pass LANGUAGES if it is
> not set. But if it is set, the value is reset completely, rather than
> combined with the value in the subdirectory.
Right, as intended.
> So, the AIX makefile fragments config/mh-ppc-aix and config/mt-ppc-aix
> could n
Arnaud Charlet wrote:
EXTRA_GCC_FLAGS = \
[...]
"`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
Unfortunately, there is no really easy and elegant solution. This one,
for example, would really oblige targets that want to specify Ada-only
flags to also include -Wall
> >EXTRA_GCC_FLAGS = \
> >[...]
> > "`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
> >
> >
> Unfortunately, there is no really easy and elegant solution. This one,
> for example, would really oblige targets that want to specify Ada-only
> flags to also include -Wall
ln: creating symbolic link `x86_64-suse-linux-gnu/stage1-x86_64-suse-linux-gnu'
to `stage1-x86_64-suse-linux-gnu': File exists
make[3]: *** [stage1-start] Error 1
make[3]: Leaving directory `/builds/gcc/misc'
make[2]: *** Waiting for unfinished jobs
make[2]: *** [configure-build-fixincludes
Arnaud Charlet wrote:
Could you please find a more elegant solution ? Thanks in advance.
See e.g. setting of EXTRA_GCC_FLAGS in Makefile.tpl for a way to handle that:
EXTRA_GCC_FLAGS = \
[...]
"`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
Unfortunately, t
> Could you please find a more elegant solution ? Thanks in advance.
See e.g. setting of EXTRA_GCC_FLAGS in Makefile.tpl for a way to handle that:
EXTRA_GCC_FLAGS = \
[...]
"`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
Arno
> Ok. For now I'd stick with the patch I proposed to Andreas, but please
> tell me if these assertions are right or wrong:
Note that this patch is really kludgy, since it duplicates the default
value of ADAFLAGS in several (at least 3) places, which means that if/when
we decide to change this de
Arnaud Charlet wrote:
So you need a -gnat option, or compilation fails?
You need at the very least -gnatg, although -gnatpg is highly recommended,
and -gnata is highly desirable for development
Ok. For now I'd stick with the patch I proposed to Andreas, but please
tell me if these asse
> So you need a -gnat option, or compilation fails?
You need at the very least -gnatg, although -gnatpg is highly recommended,
and -gnata is highly desirable for development.
Arno
gcc -c -g -I- -I. -Iada -I/cvs/gcc-svn/trunk/gcc/ada
/cvs/gcc-svn/trunk/gcc/ada/ada.ads -o ada/ada.o
ada.ads:16:01: language defined units may not be recompiled
Here you are missing "-gnatpg gnata" in your line, although that could be
"-gnatg" or "-gnatpgn"
So you need a -gnat
> Sorry if I don't understand. How is a debugging option related to the
> error Andreas reported, which is:
No relation, but that was not the question you were asking ;-)
> >gcc -c -g -I- -I. -Iada -I/cvs/gcc-svn/trunk/gcc/ada
> >/cvs/gcc-svn/trunk/gcc/ada/ada.ads -o ada/ada.o
> >ada.ads
Yes, -gnatp is certainly not required in all cases (e.g. for debugging).
Sorry if I don't understand. How is a debugging option related to the
error Andreas reported, which is:
gcc -c -g -I- -I. -Iada -I/cvs/gcc-svn/trunk/gcc/ada
/cvs/gcc-svn/trunk/gcc/ada/ada.ads -o ada/ada.o
ada.
Bonzini <[EMAIL PROTECTED]> writes:
> Hi Andreas, this should be related to the fixes to AIX toplevel
> bootstrap. My apologies if it is the cause.
>
> Can you try adding these lines to the toplevel Makefile.tpl?
>
> ADAFLAGS = -W -Wall -gnatpg -gnata
> ADAFLAGS_FOR_TARGET = -W -Wall -gnatpg -gna
> ADAFLAGS = -W -Wall -gnatpg -gnata
> ADAFLAGS_FOR_TARGET = -W -Wall -gnatpg -gnata
>
> and changing = to += in config/mt-ppc-aix?
>
> Arnaud, it seems strange that "required" flags like -gnatpg are on
> ADAFLAGS rather than the makefile rules. -c is not in CFLAGS, for
> example. Is it possibl
Hi Andreas, this should be related to the fixes to AIX toplevel
bootstrap. My apologies if it is the cause.
Can you try adding these lines to the toplevel Makefile.tpl?
ADAFLAGS = -W -Wall -gnatpg -gnata
ADAFLAGS_FOR_TARGET = -W -Wall -gnatpg -gnata
and changing = to += in config/mt-ppc-aix?
A
> gcc -c -g -I- -I. -Iada -I/cvs/gcc-svn/trunk/gcc/ada
> /cvs/gcc-svn/trunk/gcc/ada/ada.ads -o ada/ada.o
> ada.ads:16:01: language defined units may not be recompiled
> make[3]: *** [ada/ada.o] Error 1
>
> This worked 24 hours ago - with the same bootstrap compiler.
>
> I'm trying to hunt
29 matches
Mail list logo