On Sun, 20 Mar 2016, Bernd Edlinger wrote:
On 20.03.2016 11:03, Marc Glisse wrote:
On Sun, 20 Mar 2016, Bernd Edlinger wrote:
So I looked for a way to disable the asm code, and found it can be
done, but differently than for in-tree gmp. See the attached patch.
As noted in PR 67728, it seems that gcc's intrusive way of overriding
CFLAGS also breaks GMP itself, not just MPFR, by hiding the macro NO_ASM
that GMP tries to define through its own CFLAGS. So maybe Bernd's patch
should be duplicated to also apply to GMP?
I agree, the question is only when. Passing -DNO_ASM in AM_CFLAGS would
just define NO_ASM twice for GMP-4.3.2 which would not make any problems
and fix the mis-compilation of GMP-6.1.0. That might be possible in
stage4 if you like.
It is confusing that we are using the same names for stages in the
release cycle and stages in bootstrap, for a bit I couldn't understand
why this would only apply to that extra bootstrap stage :-(
I don't know if I *want* us to go there and pass -DNO_ASM, I think I'd
rather have gcc call plain "make" without a gazillion variables
appended, but if people care about those PRs, I am guessing that this
would be less intrusive.
I think the in-tree build uses different CFLAGS for each
bootstrap-stage, and there is a good reason for that.
Not every package would work in-tree, it needs co-operation and good
will from both sides, in general it does not work at all (e.g. in-tree
flex).
For most packages, providing CFLAGS for configure is enough, you don't
have to give them *again* to make.
--
Marc Glisse