[Ffmpeg-devel] libavutil conflict with system headers on Darwin

Diego Biurrun diego
Sat Dec 2 21:03:20 CET 2006


On Tue, Nov 28, 2006 at 05:58:11PM +0000, M?ns Rullg?rd wrote:
> Diego Biurrun <diego at biurrun.de> writes:
> 
> > On Sat, Nov 25, 2006 at 05:42:58PM -0500, Alexander Strange wrote:
> >> This no longer compiles:
> >> #include <libavutil/common.h>
> >> #include <math.h>
> >> 
> >> because of:
> >> #ifndef always_inline
> >> #if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
> >> #    define always_inline __attribute__((always_inline)) inline
> >> #else
> >> #    define always_inline inline
> >> #endif
> >> #endif
> >> 
> >> on common.h:55.
> >> 
> >> On Darwin, some headers use __attribute__((always_inline)) on their  
> >> own, which the above macro then mangles.
> >> (__GNUC__ is defined as 4 on all darwin/x86 systems and almost all  
> >> ppc systems)
> >
> > Any ideas how to fix this (cleanly)?  Just add something like ifndef
> > Darwin to the above declaration?
> 
> That's not what I call clean.  Renaming our version to
> ff_always_inline or something would be better.

So is renaming always_inline to ff_always_inline acceptable?  If I don't
hear objections I will implement this after the weekend.

Diego




More information about the ffmpeg-devel mailing list