See the discussion in D30906 for how it must be robust to downstream
projects that might not use GNUInstallDirs.
I think an easier approach is just to include GNUInstallDirs so that
we can always rely on it. Looking at its definition in
https://gitlab.kitware.com/cmake/cmake/-/blob/master/Modules/GNUInstallDirs.cmake
it appears safe to include multiple times.
I am trying this out because we will face the same problem many times
over if we use GNUInstallDirs more widely, as proposed in D99484 and
its parent revisions, since we do not know what downstream projects do
and rather not break them.