CPack: Add NuGet support
In fact, NuGet packages could be easily produced from a
*.nuspec file (running
nuget pack in the directory w/ the spec file). The spec filename does not affect the result
*.nupkg name -- only
version elements of the spec are used (by NuGet).
Some implementation details:
- Minimize C++ code -- use CMake script do to the job. It just let the base class (
cmCPackGenerator) to preinstall everything to a temp directory, render the spec file and run
nuget packin it, harvesting
- Ignore package name (and use default paths) prepared by the base class (only
CPACK_TEMPORARY_DIRECTORYis important) -- final package filename is a responsibility of NuGet, so after generation just scan the temp directory for the result
*.nupkgfile(s) and update
packageFileNamesdata-member of the generator;
- The generator supports all-in-one (default), one-group-per-package and one-component-per-package modes.