Open a-teammate opened 8 years ago
If you meant with complete build time the entire project with all deps, it is absolutely impossible.
If you meant in 3 minutes only Inexor itself, without deps, then I have to ask in what enviornment do you want to test that?
The rest is done.
I think we could close this issue when we made https://github.com/sakra/cotire work in Inexor.
Currently it breaks the build. Dunno how to change that, but I haven't looked into it too deeply..
But you are right, the rest of the issue seems done :)
Currently - at least in visual studio - it takes more than 15 min to clone and build inexor (see e.g. https://ci.appveyor.com/project/inexor-game/code/build/0.1191).
There are several reasons for it:
We use CMake, which doesn't generate projects as effective as possible. And maybe we're additionally using it wrong.
We have a giantific prebuilts repo including our dependencies not only for Visual Studio but also some prebuilt libraries for linux which aren't in package managers. This takes hours to clone + it is hard to maintain.
We have a reflection prepass generating our networking code based on an easier interface. This is currently using libclang internally and hence actually almost means currently to parse the code twice (and it seems libclang is the wrong thing for this or we use it wrong, since it takes almost as long as a normal rebuild).
Some random solution possibilities for anyone approaching these tasks:
Goals: