Improve/Standardize install targets and location
This migrates VecGeom to use CMake's builtin GNUInstallDirs
to set and provide an interface to locations where files should be installed. It provides both a known semi-standard interface for variables, and Filesystem Hierarchy compliant paths by default.
An uninstall
target is added when not defined to allow un-installation of files, but not directories.
All uses of CMAKE_{SOURCE,BINARY}_DIR
for in-project use are replaced with PROJECT
variants. This is clearer and also safer should use of VecGeom as a "subproject" of others be supported. CMAKE
variants are retained in Jenkins scripts (as these are internal), and in the RecordCmdLine.cmake module as this is always called before any invocation of project
.