There is an open source version of NextStep (the basis of Cocoa) called GNUStep. Except for the name and functionality that they haven't caught up with yet, it is almost identical to Cocoa down to using the same Object and method names.
It is supposed to be simple (assuming you aren't using any Mac specific function calls) to build your App for Cocoa, then build it for GNUStep. I haven't tried it though so I don't know anymore than that.
I will say that GNUStep is a great resource when you are sub-classing something like NSButton or other UI elements. Apples documentation leaves a lot to be desired when you are getting down to overriding how the graphics are generated and being able to look at the GNUStep source is a huge resource.