It allows you prepend to the install prefix, but it gives you no way afaict to actually change the prefix.
This is the opposite of nice. If you set a prefix for your build and you try to get your bindings slotted in with them, via DESTDIR, you get this:
- cmake -DCMAKE_INSTALL_PREFIX:PATH=/opt/myplace /var/tmp/jross/baker/proton/source
- make install DESTDIR=/opt/myplace
^^ Note "/opt/myplace/opt/myplace", the first from DESTDIR, the second from CMAKE_INSTALL_PREFIX
What it is doing now is simply abuse of DESTDIR. DESTDIR is intended to be a mechanism for staged installs (packaging systems use this), and it cannot function correctly as an override for prefix.
My proposed solution to this is to stop this madness: make the binding install honor CMAKE_INSTALL_PREFIX. Let the developer be responsible for choosing the right location for his or her distribution.