PBTOMAKE is a nice program to convert Xcode and Project Builder files from MacOS X to Makefiles that can be used on Linux (or other Unix varients). This is useful, for example, as a first step to porting an application from Cocoa to GNUstep.
The tool is described prominently in this MacDevCenter article which unfortunately shows up nowhere on Google - at least, not if you search for any combination of "Xcode", "Linux", and "GNUstep". It's the second hit for "Xcode Unix", though. It's a shame I never thought to search for that - I eventually found a Usenet post by the author and emailed him for the download link, but it could have saved me days if it had been found by Google under "Linux" and Xode as well.
So this post is my attempt to give the tool more visibility: XCODE XCODE XCODE XCODE LINUX LINUX LINUX LINUX.
There. And now for some content: to use it on Linux, put it in a directory and unzip it there. This gives you lots of directores with _'s in their names, which I assume are from Resource Forks and other Mac wackiness. Go to TOMAKE-Xcode2.1/Source/PBTOMAKE/ and edit the makefile there - ignore the makefile in the Source directory, it doesn't work. Take out the "CC=/usr/bin/g++-4.0" line (YOU should be setting the CC variable, not the makefile), and change the "$(CC) $(LNK_OPTIONS)" line to "$(CXX) $(LNK_OPTIONS)" to be sure it links with a C++ compiler. Now it should build!
The instructions are in a file called "pbtomake.pdf", and they start out by telling you to prepare your XCode source by "making all file references Project Relative". This is pretty easy to do without just an editor, as long as the project doesn't use the old binary-only Xcode format: open the .xcodeproj (Xcode) or .pbxproj (ProjectBuilder, I assume) file, and replace all instances of "<group>" and "<absolute>" with "<project>". Only problem is then you'll have to fix a bunch of paths in the resulting makefile. I'm still not sure the best way around that.