feed2js_ck = true;

document.write('<div class="rss-box-posterous">');
document.write('<ul class="rss-items">');
document.write('<li class="rss-item"><a class="rss-item" href="http://tofodo.posterous.com/be-careful-when-using-custom-iphone-framework" title="&lt;p&gt;&lt;p&gt;In my previous post (&lt;a rel=&quot;nofollow&quot; target=&quot;_blank&quot; href=&quot;http://tofodo.posterous.com/watch-out-for-iphone-deployment-target-defini)&quot;&gt;http://tofodo.posterous.com/watch-out-for-iphone-deployment-targ..." target="_self">Be careful when using custom iPhone frameworks</a><br />');
document.write('<span class="rss-date">Tue, 22 Sep 2009 23:53:00 -0700</span><br />');
document.write('<p><p>In my previous post (<a rel=\"nofollow\" target=\"_blank\" href=\"http://tofodo.posterous.com/watch-out-for-iphone-deployment-target-defini)\">http://tofodo.posterous.com/watch-out-for-iphone-deployment-target-defini)</a>, I went into details about the deployment target variables, and it\'s importance to be setup right. Despite this, I was still running into a strange issue. I was basically seeing the following compilation directives. <p /> For the simulator : <p /> -D__IPHONE_OS_VERSION_MIN_REQUIRED=20000 <p /> and for the device : <p /> -miphoneos-version-min=2.0 <p /> I spent a *long* time trying to find where these were coming from, searching all over the iPhone SDK, my project files, everywhere, or at least I thought so. I then had the idea of creating an empty project and comparing the project information between the two. That is when I came across the fact that I was linking to an custom iPhone Framework that I use for AppShaker: json-framework. Curious, I went into the framework files and guess what I found in these ? <p /> In ~/Library/SDKs/JSON/iphonesimulator.sdk/SDKSettings.plist : <p><span style=\"\"> </span>&lt;key&gt;GCC_PRODUCT_TYPE_PREPROCESSOR_DEFINITIONS&lt;/key&gt;</p> <p><span style=\"\"> </span>&lt;string&gt; __IPHONE_OS_VERSION_MIN_REQUIRED=20000&lt;/string&gt;</p> <p>and in ~/Library/SDKs/JSON/iphoneos.sdk/SDKSettings.plist :</p> <p><span style=\"\"> </span>&lt;key&gt;IPHONEOS_DEPLOYMENT_TARGET&lt;/key&gt;</p> <p><span style=\"\"> </span>&lt;string&gt;2.0&lt;/string&gt;</p> <p>So there you have it ! What I had been searching for all this time. Seems like it was a very poor idea for this SDK to include such directives, because it means that they will always override your project settings. Looks like, although less clean, it is a better idea for the moment to copy the source files into your project, as I have been doing with ASIHttpRequest, than to link to a framework setup that can be quite obscure.</p>  <p><a rel=\"nofollow\" target=\"_blank\" href=\"http://tofodo.posterous.com/be-careful-when-using-custom-iphone-framework\">Permalink</a> | <a rel=\"nofollow\" target=\"_blank\" href=\"http://tofodo.posterous.com/be-careful-when-using-custom-iphone-framework#comment\">Leave a comment&nbsp;&nbsp;&raquo;</a> </p>');
document.write('</li>');
document.write('</ul></div>');
