... we are talking about one program that can run on two systems. we are not claiming they are the same thing. we are talking about running the same thing on two diff kernels
*nix is an abbreviation for every variation of linux/unix. Why wouldn't you use it if you're not specifying a specific distro?
After you dig into them makefiles don't seem so foreign. Like Disch said, it's like a project file. When compiling things by command line, (especially when projects get lengthy), it becomes almost impossible to type every flag out and specify every source file. And sometimes there are multiple build steps, which aren't fun to type out every time you build your project either. So Makefiles are used to shorten a command like
Depends on the executable image, file format, and middleware services, along with a GUI system as the interface.
Although the kernel is responsible for actually taking care of allocating a stack frame and the like, the Linux kernel uses ELF images(so does Unix and such).
However, even so, the kernel can have special priveleges associated with different file headers and demands, thus, further complicating the process.
This is why I have chosen to implement my own executable file format, structure and extension for my OS.
Also, the only relation from Mac OSX and/or iOS to Unix-like standards would be directory structure hierarchy, and command-line interpretation specifications of terminal GUI programs.
Other than that Apple doesn't have any relation to Unix.
Unix is a dinosaur of an OS that virtually 90% of the average computer user population (excluding developers or those who work with computer software and/or scientists) doesn't even know what the hell Unix is.
At least maybe 10% of the average people on the street may have heard of Linux one or twice, although millions of people use M-Linux (modified Linux with Android), most idiots don't know what software lives beneath their multi-touch germ gorilla glass screens for their primate fingers and low IQs.