What i meant as missing build up is that to me it didn't feel like Thanos felt much for Gamora, it felt like he always just viewed her as a tool, and sacrificing a tool isn't what should get you the soul stone. Maybe i'm wrong there, maybe sacrificing an effective tool is enough, but then Gamora's speech that Thanos will never get the soul stone wouldn't fit.
As for the slaughter: First of all, it's still a slaughter. And with the "indiscriminate" part i meant that by killing half of the population of every planet he is also killing countless people where there is absolutely no "need" to do so, even in his twisted logic.
As for "ensuring Earth's survival": He isn't doing that for Tony or anything, it's what he thinks he does by killing ever second living being, so he'd do it whether Tony had opposed him or not.
I get what the scriptwriters wanted to do, they wanted to put him into a morally gray area, but to me it doesn't work out, they did a bad job at their attempt. The writers of the Witcher games (Witcher 1 in particular) did a much better job at this. One scene that stuck to me: In general non human races are oppressed and are subject to heavy racism, as a result there are rebel/terrorist groups of elves and dwarfes. One of these groups raids a bank and takes hostages. You are sent in by the human army to negotiate with them, to ensure them they will not be harmed if they release the hostages and pull back. You can kill them or negotiate with them. If you do negotiate, after they released the hostages, the human army charges in and wants to kill them, ignoring their promise. What do you do now? Do you help the terrorists and bank robbers to escape as they were promised or do you kill them? They are terrorist that have killed innocent people before after all. Imo THAT's a well done morally gray situation where you feel for both sides.