Actually, in MPIR's aclocal.m4 there looks to be code to use -DPIC
only when it is meaningful.

Somewhere between lines 4433 and 4463 we can probably add something.

It looks like it does a test to make sure -DPIC actually works, which
for some reason passes on this platform.

Unfortunately, I don't know m4, so it is going to take me ages to fix
this issue. I'll add it to the todo list, but if anyone comes up with
a patch in the mean time, I'd be delighted.

Bill.

On 3 December 2012 14:55, Bill Hart <goodwillh...@googlemail.com> wrote:
> I assume you mean divexact_1.asm.
>
> I don't think we set -DPIC anywhere, so I think this is an autotools
> bug. How recent is the report? It might have been fixed by the latest
> autotools upgrade that we did.
>
> Bill.
>
> On 3 December 2012 14:47, leif <not.rea...@online.de> wrote:
>> Bill Hart wrote:
>>>
>>> There's a lot of mention of PPC in that thread. Obviously the
>>> applenopic stuff is for x86, not PPC. But then again, deleting the
>>> assembly files wouldn't work there either.
>>>
>>> So we really need the person who reported that to tell us the output
>>> of ./config.guess. And of course to tell us if the problem still
>>> happens when MPIR gets to choose the build target for itself.
>>
>>
>> According to his log, Apple's assembler bails out on divexact_1.s, which is
>> [made from] mpn/x86/divexact_1.asm (or x86/core2/divexact_1.asm), which
>> contains
>>
>> ...
>> ifdef(`PIC',`
>>         call    L(movl_eip_edx)
>>         addl    $_GLOBAL_OFFSET_TABLE_, %edx
>>         movl    modlimb_invert_table@GOT(%edx), %edx
>>         movzbl  (%eax,%edx), %eax                       C inv 8 bits
>> ',`
>> dnl non-PIC
>>         movzbl  modlimb_invert_table(%eax), %eax        C inv 8 bits
>> ')
>> ...
>>
>> Unfortunately, -DPIC is passed to m4 on his system:
>>
>>
>> /bin/sh ../libtool --mode=compile --tag=CC ../mpn/m4-ccas --m4="m4"
>> /usr/bin/gcc-4.2 -std=gnu99 -c -DHAVE_CONFIG_H    -m32 -O2
>> -fomit-frame-pointer -mtune=core2 -march=core2  -g  -D__GMP_WITHIN_GMP -I..
>> -DOPERATION_`echo divexact_1 | sed 's/_$//'` -I. -I..  `test -f
>> 'divexact_1.asm' || echo './'`divexact_1.asm
>> libtool: compile:  ../mpn/m4-ccas --m4=m4 /usr/bin/gcc-4.2 -std=gnu99 -c
>> -DHAVE_CONFIG_H -m32 -O2 -fomit-frame-pointer -mtune=core2 -march=core2 -g
>> -D__GMP_WITHIN_GMP -I.. -DOPERATION_divexact_1 -I. -I.. divexact_1.asm
>> -fno-common -DPIC -o .libs/divexact_1.o
>> m4  -DHAVE_CONFIG_H -D__GMP_WITHIN_GMP -DOPERATION_divexact_1 -DPIC
>> divexact_1.asm >tmp-divexact_1.s
>>  /usr/bin/gcc-4.2 -std=gnu99 -c -DHAVE_CONFIG_H -m32 -O2
>> -fomit-frame-pointer -mtune=core2 -march=core2 -g -D__GMP_WITHIN_GMP -I..
>> -DOPERATION_divexact_1 -I. -I.. tmp-divexact_1.s -fno-common -DPIC -o
>> .libs/divexact_1.o
>> tmp-divexact_1.s:119:junk `@GOT' after expression
>> make[2]: *** [divexact_1.lo] Error 1
>> make[1]: *** [all-recursive] Error 1
>> make: *** [all] Error 2
>> Error building MPIR.
>>
>>
>>
>> -leif
>>
>>
>>
>>
>>> On 3 December 2012 13:19, Jean-Pierre Flori <jpfl...@gmail.com> wrote:
>>>>
>>>> With your hints I found
>>>>
>>>> https://groups.google.com/forum/?fromgroups=#!msg/mpir-devel/iSzn88nJO58/4efX1gWB5kIJ
>>>>
>>>> I'll ask for a full log on sage-devel.
>>>
>>>
>>
>>
>> --
>> () The ASCII Ribbon Campaign
>> /\   Help Cure HTML E-Mail
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "mpir-devel" group.
>> To post to this group, send email to mpir-devel@googlegroups.com.
>> To unsubscribe from this group, send email to
>> mpir-devel+unsubscr...@googlegroups.com.
>>
>> For more options, visit this group at
>> http://groups.google.com/group/mpir-devel?hl=en.
>>

-- 
You received this message because you are subscribed to the Google Groups 
"mpir-devel" group.
To post to this group, send email to mpir-devel@googlegroups.com.
To unsubscribe from this group, send email to 
mpir-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/mpir-devel?hl=en.

Reply via email to