As a continuation of this question, does a Makefile modification when building GPL source mean my own program becomes GPL also ? For example, if some third-party GPL'd source contains exit(), and I add to the Makefile -Derror_handling=exit and link an error_handling() function that performs error handling and returns without exiting, does that count as a GPL modification ? I could also change link order and supply my own exit() function to achieve the same result, would that count as a GPL modification ?
Your program doesn’t “become GPL” at all. That’s not how GPL works.
The GPL license gives you two permissions without any obligation: You are allowed to use the software, and you are allowed to modify the software and use the modified software. If the software is a combination of GPL licensed and your own software, then your own software is not GPL licensed.
The GPL license only comes into play when you distribute it (hand a copy to someone else), with or without your software added.
You then have the choice: Either you ship the complete software under the GPL license and everything is legally fine, or you ship it without the GPL license which makes it copyright infringement. It’s your choice. Changing the make file does nothing to the license, you have to do that yourself. Of course when I say “choice” is like leaving a store with goods, you have the choice to pay or become a thief. It doesn’t mean it’s legal, it isn’t.