…otherwise they would have stopped as they felt the pain when they pulled it out
Now why do I have a sudden need to express my frustrations on the build systems, they are after all made to help us, not to frustrate us.
My problem is that I have not yet worked with any build system more complicated than building a single file that I have been able to trust – I mean really trust – so that you just know that when you have a failed build, then it is because you did something wrong, not because you were unlucky with the build process it self.
So last week, back in Denmark, I had this perfectly fine source-tree that build without any issues on my desktop, I copied it to my USB stick and took it and my laptop with me on the plane to California – arrived at the Mozilla headquarter copied the content of the USB stick onto my laptop – rebuild… – error…
Oh what, I thought, maybe I were too bold copying the obj dir from one machine to another – so deleted the objdir and did a rebuild – still error… hmm… did a remote login to my desktop back in DK, deleted the objdir and did a rebuild => error… arghh… what was happening?
Not having too much confidence in the build systems, I tried again, with same result – a linking failure – now about a day of frustrations later I copied my source tree on the remote machine into a new directory, deleted the objdir and did a new build – do you know what… now it succeeded
Talking to one of the guys here – it seems like it is a good idea to keep your objdir out of your source dir – I have now reconfigured my build to do that – but come on… why did it stop working in the first place???? – why did I have to waste the most of a day on a non-issue???
I want to do coding not fighting with the tools why isn’t it possible to make a deterministic build system?