Until now we’ve been using the Visual Studio solution for describing how the bits and pieces fits together. But it’s a bit difficult to maintain the growing number of (own) libraries and configurations.
Currently there is 3 libraries and 2 applications in the solution. All projects have 3 solution configurations. Then there are 15 different configurations. And all are for the x86 target platform. When we start using x64 there will be 30 different configurations. To say it mildly, Visual Studio is not good at managing these things.
To add a preprocessor definition, there will be 30 places to update. To update a library, there will be 30 places which need to be considered. Sure, there is the All configurations configuration, but sometimes it does more harm than good.
This is were premake comes into the picture.
With premake it is possible to make a static configuration of your solution and projects. That is, a file describing how the solution is set up, what include paths and what preprocessor defines to be defined for a set of configuration.
However, there is one major flaw with premake. There is no way to make source code groups in Visual Studio specified with a list of files. There is the vpaths command, but it’s limited to pattern matching and not a list of files.
What I want to do is to have a list of files and put them into a defined filter.
Until that is resolved, I’ll be on the lookout for other utilities for configuring a build environment.