On May 3, 2008, at 9:18 AM, Jean-François Mertens wrote:
>
> On 03 May 2008, at 14:20, Martin Costabel wrote:
>
>> Alexander Hansen wrote:
>> []
>>>>> gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include -I/sw/
>>>>> include -g
>>>>> -O2 -D_REENTRANT -D_THREAD_SAFE -g -Wall -c demo.c
>>>>> In file included from demo.c:37:
>>>>> /usr/include/stdlib.h:223: error: conflicting types for 'rand'
>>>>> /usr/include/stdlib.h:175: error: previous declaration of 'rand'
>>>>> was
>>>>> here
>>>>> ...
>>>> The issue seems more related to 10.5 than to pangocairo.
>>>> On 10.4 I can't reproduce this.
>>>> A conflict within the same (so standard ..) header looks
>>>> suspicious..
>>>> (no ill-defined macros could be involved ?)
>>
>> The two "conflictiong" macros #define rand and random, respectively.
>> They conflict only because demo.c #defines random rand, and this
>> happens
>> because apparently configure wrongly #undefs HAVE_RANDOM. So there is
>> something wrong with the configure phase of libggi2.
>> Sorry, no more time to find out what.
>
> I get indeed on 10.4
> checking for random ...yes
> and :
> config.h:#define HAVE_RANDOM 1
>
> Sorry, can't do more w/o a 10.5 (except of course caching the
> result ..)
>
> JF
>
Ah. On 10.5, I get
checking for random... no
And from config.log the only references to "random" (in a case
insensitive search) are:
configure:6963: checking for random
configure:6991: gcc -o conftest.dSYM -g -O2 -I/sw2/include -L/sw2/lib
conftest.c 1>&5
error: Not a directory - unable to create 'conftest.dSYM/Contents'
bundle directory.
configure: failed program was:
#line 6968 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char random(); below. */
#include <assert.h>
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */
char random();
int main() {
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
#if defined (__stub_random) || defined (__stub___random)
choke me
#else
random();
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Fink-devel mailing list
[email protected]
http://news.gmane.org/gmane.os.apple.fink.devel