apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Branko Čibej <br...@xbc.nu>
Subject Re: build error on win32
Date Wed, 29 May 2002 20:16:57 GMT
Sander Striker wrote:

>>From: Branko Cibej [mailto:brane@xbc.nu]
>>Sent: 29 May 2002 21:58
>>    
>>
>
>  
>
>>Branko Čibej wrote:
>>
>>    
>>
>>>Patrik Husfloen wrote:
>>>
>>>      
>>>
>>>>I'm getting an error building svn on win32 using VC6.
>>>>I've got the latest version of apr, apr-util and svn (just got them 
>>>>from cvs/svn)
>>>>if anyone can confirm this it would be great.
>>>>
>>>>libsvn_subr.lib(svn_error.obj) : error LNK2001: unresolved external 
>>>>symbol _apr_allocator_set_mutex@8
>>>>Release/svn.exe : fatal error LNK1120: 1 unresolved externals
>>>>        
>>>>
>>>This looks like a bug in APR. Both apr_allocator_set_mutex and 
>>>apr_allocator_get_mutex are defined with APR_INLINE in apr_pools.c, 
>>>which is clearly major bogosity. Either that APR_INLINE shoudl go 
>>>away, or the inline definitions should move to a header (probably 
>>>apr_allocator.h, where they're declared now), and made static.
>>>
>>>Sander, looks like you're the culprit here (the rev 1.159 commit). 
>>>Comments?
>>>      
>>>
>>While we're at it, apr_allocator_alloc and apr_allocator_free are also 
>>defined inline. I don't think that makes much sense, given the size of 
>>those functions.
>>    
>>
>
>Hmm, so windows isn't smart enough to do both inlining and exporting?
>I'd like the stuff inlined in apr_pools.c (for performance), but need
>them exported for other callers than apr_pools.c.
>
That (extern inline) a C99 feature, which most compilers don't 
understand. GCC had something similar before the new standard.

>Suggestions?
>
I'm pretty sure _alloc and _free don't have to be inlined (measurements 
rule here, of course).

Are _set_mutex and _get_mutex really that sensitive? If yes, they're so 
trivial that you can easily inline them by hand inside apr_pools.c.


-- 
Brane Čibej   <brane@xbc.nu>   http://www.xbc.nu/brane/



Mime
View raw message