CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_INCLUDEDIR are allowed to be absolute as per CMake docs, so they shouldn't be concatenated to absolute paths. Instead, use CMAKE_INSTALL_FULL_LIBDIR and CMAKE_INSTALL_FULL_INCLUDEDIR, which are known to be absolute.
Absolute CMAKE_INSTALL_*DIR paths are used at least on NixOS. This is because NixOS packages are allowed to have multiple outputs (e.g. put docs in one dir, headers and other files for development to another, the binaries to a third one), and NixOS isn't FHS-compliant (There's no /usr, each package output has its own directory instead).
GNU Guix is a similar distro, but I'm not sure how CMake packages are built there. Either way, it's good to fully conform to the spec.
CMAKE_INSTALL_LIBDIR
andCMAKE_INSTALL_INCLUDEDIR
are allowed to be absolute as per CMake docs, so they shouldn't be concatenated to absolute paths. Instead, useCMAKE_INSTALL_FULL_LIBDIR
andCMAKE_INSTALL_FULL_INCLUDEDIR
, which are known to be absolute.Absolute
CMAKE_INSTALL_*DIR
paths are used at least on NixOS. This is because NixOS packages are allowed to have multiple outputs (e.g. put docs in one dir, headers and other files for development to another, the binaries to a third one), and NixOS isn't FHS-compliant (There's no/usr
, each package output has its own directory instead).GNU Guix is a similar distro, but I'm not sure how CMake packages are built there. Either way, it's good to fully conform to the spec.