Does this mean I can compile for Mac without a Mac?
Not quite. You need a Mac to extract the SDK. After that, you can toss it out. I can't bundle the SDK because that's against Apple's TOS.
Does this mean I compile for Mac by compiling in a virtual machine embedding Mac inside a Linux or Windows PC?
Maybe? But I don't think that's a particularly useful way of doing things. And, as you say later, running OSX in a VM is against Apple's TOS. So let's forget VM's; they're not relevant to this discussion.
Both of which go against Apple's terms. I could be wrong but this isn't legal either. You buy a Mac, you don't own it, you rent it for life, either you go by their terms or you have to jump in a lake.
I couldn't care a fig for Apple's TOS. And being in violation of a TOS is not illegal if the TOS can be shown to be wrong. I'd love to see someone dragged to court for buying OSX (which I did) and then extracting a file from the package ---there's no way that would hold up. However, your point is very much valid with respect to distribution, which I'll cover next.
Mac software can only be built on Mac in order for it to be accepted on their store.
This is a very good point! I will assume it is true, since I am not too familiar with the App store. In light of this, the purpose of cross-compiling is either:
- To distribute unofficial apps, or:
- To build apps for testing (Linux builds faster than OSX).
If you want to distribute your cross-compiled app, you will have to boot up a Mac and compile it there. But you can cross-compile it hundreds of times to test it, as long as the final build is from OS-X (which also works; I checked). This is valuable to me, at least. If it is valuable to other contributors, it will be merged; else, it will remain in my fork.
I'm glad you brought up these points, because anyone who develops for OS-X should be aware of Apple's inane policies. But I think they do not apply to the tools (or ENIGMA), as we do not bundle anything from OSX itself, so Apple cannot assume that someone who downloads ENIGMA has signed their TOS.
Have I mentioned lately how much I hate Apple, Inc?
They're not worth your time, honestly. I deal with OS-X because I care very much for Apple's users. My opinions on the company are not relevant to the discussion (but I suspect they are the same as yours).