@hinken
Sry, I missed this one.
We did a lot changes from 0.4 to 1.6, the answer to your second issue is as what you said, we have a centralized torch.h added into the framework which will take a bunch of time to pull the symbols in.
I have no clear answer to your first issue at the moment, I was working on libtorch 1.5 with cpp files, it seems to me that ninja won’t rebuild everything. A following build is normally much faster than the first build. The ninja support is added not long ago by someone within the pytorch team, I will dig a bit and answer you later.