[mythtv] Mac OS X patch 2

Nigel Pearson nigel at ind.tansu.com.au
Wed Jun 2 00:21:25 EDT 2004

>> +#ifdef i386
>>      if (filter->mm_flags & MM_MMX)
>>          emms();
>> +#endif
> The #ifdefs around the & MM_MMX changes are unnecessary in both places;

	Sadly, no:

% make
cc -c -pipe -Wall -W -Os -O2 -Wno-missing-prototypes -fPIC  
-DCONFIG_DARWIN -I/Volumes/Backups/qt/mkspecs/default -I. 
-I/usr/local/include -I../../libs/libmythtv -o filter_denoise3d.o 
filter_denoise3d.c: In function `denoise3DFilter':
filter_denoise3d.c:441: warning: implicit declaration of function `emms'
rm -f libdenoise3d.dylib
c++ -headerpad_max_install_names -bundle -o libdenoise3d.dylib 
ld: Undefined symbols:

> mm_support() always returns 0 for non-i386.

	True, but the function won't compile on a non-intel machine,
because #include "mmx.h" is #ifdef i386'd.  I need either that extra
#ifdef, or to move the one before that #include, and add another few
in lib*/i386/mmx.h

> You conditionalized some stuff on __linux__ which is not 
> Linux-specific, but
> will be shared by things like FreeBSD in some cases.  That needs to be
> fixed.

1) From my point of view, #ifndef _WIN32 is less correct than #ifdef 

2) If the code is also relevant for *BSD, then it becomes something like
    #if defined(__linux__) || defined(FREEBSD) || defined(NETBSD)

3) True. I was lazy in some spots. The MythCDROM and MediaMonitor
    classes should be modified (even if only with dummy functions)
    for non Linux platforms.

> Update your tree to current CVS, resolve any conflicts and we'll review
> what patches are left.

	OK. More patches on the way.

	Thanks for looking through all this, Matt (and others :-).

Nigel Pearson, nigel at ind.tansu.com.au | "Reality is that which,
Telstra BI&D, Sydney, Australia       |  when you stop believing
Office: 8255 4222    Fax:  8255 3153  |  in it, doesn't go away."
Mobile: 0408 664435  Home: 9792 6998  |  Philip K. Dick - 'Valis'

More information about the mythtv-dev mailing list