Hello all,
It seems that the XCode bundle's Run and Build & Run commands assume that the build folder is in the same location as the (TextMate project file? XCode project file? [1]).
At least in my case, the build folder is somewhere else. The attached patch lets you override the default build folder location with an optional TM_XCODE_BUILD_FOLDER environmental variable. It also explicitly prints out where the XCode bundle is trying to launch the app from, to (hopefully) point people in the direction of TM_XCODE_BUILD_FOLDER.
On the topic of Xcode bundle patches, I also have one to provide a TM_XCODE_PRODUCT_NAME, for when you can't find the product name to run. I thought this just had something to do with my project's complex setup, but looking through the log of run_xcode_target.rb it seems the XCode bundle makes a few guesses which may not turn out (see log for r7057), and there's no way for the user to _force_ the issue. If TM_XCODE_PRODUCT_NAME would be useful, I'll send that in a separate email.
_______________________________
[1] Or maybe the XCode bundle is reading the information from the project file? If this is the case, my project uses a series of .xcconfig files to specify settings (including TARGET_BUILD_DIR / CONFIGURATION_BUILD_DIR), so that's why the default doesn't work for me....
_______________________________
Let me know if you have any questions or concerns and I'll try to resolve them.
Later, _Ryan Wilcox
On 30. Jul 2007, at 17:35, Ryan Wilcox wrote:
[...] Or maybe the XCode bundle is reading the information from the project file? If this is the case, my project uses a series of .xcconfig files to specify settings (including TARGET_BUILD_DIR / CONFIGURATION_BUILD_DIR), so that's why the default doesn't work for me....
It reads it from the user specific project file, falls back on the Xcode preferences, and finally falls back on ${PROJECT_DIR}/build.
Since the build dir depends on the active configuration, I am not sure setting the environment variable is that useful, also because you’d have to set this per project.
In your case, you have the build dir in the .xconfig file? Ideally we would extend our code to also look there.