So the first question is how to force the XCode to compile it for 10.3 and later OSX?
Next I switched the juce.xcconfig to OSX 10.4 and later and I compiled the example successfully. The files is signed as Universal Binary but it works only on Intel Macs. On PPC machines it seems to be unrecognizable by any host or auval command line tool (auval -a)
I use XCode 2.5 and I have both MacOSX10.3.9.sdk and MacOSX10.4u.sdk installed in /Developer/SDKs
Latest version of Juce from svn. The only things changed in Juce by me are the juce.xcconfig as I wrote earlier and disabling the QuickTime features in juce_Config.h
Thanks oristan for this tip - that’s why the compiled UB didn’t work at PPC correct.
But I also discovered why I couldn’t compile JuceDemoAU for OSX 10.3 and later having these strange errors about “libkern/OSAtomic.h”
When I looked at the JuceDemoAU project info I saw only i386 value in the Architectures line but when I clicked Edit I saw both the PowerPC and Intel checkboxes set. Must be some weird XCode behavior but I must click OK to see “ppc i386” or type “(inherited)" manually to this field. Even stranger is that I need to delete "(inherited)” value from SDKROOT_ppc on the bottom of settings list. Only then I can successfully compile JuceDemoAU. I know it sounds like magic but it’s deterministic like hell
Argh! I’m getting officially mad now: the Juce plugin demo compiles fine for ppc with target 10.3.9. My own plug compiles as well, but only in Debug mode. In Release mode I get the error about OSAtomic.h not being found. I’ve checked all project settings for hours now and I can’t find any difference. Any idea what I might have overlooked?
Okay, I just realized there are TWO project settings, one for the plugin and one for the target (can’t say I really understand this, but anyway). When I remove the SDK10.3.9 reference in both of them it seems to work. I’m just hoping that setting MACOSX_DEPLOYMENT_TARGET_ppc to 10.3 is sufficient to make it work on a 10.3 ppc…