backends/drm: make night light correct with ICC profiles as well
To do that, this implements absolute colorimetric transforms for ICC profiles and leaves it up to the compositor to change the whitepoint.
The complete pipeline then looks like this (in terms of white points), with a matrix-based profile:
application white point (usually 6504K) -> night light white point -(absolute colorimetric)-> display white point
and with a lut based profile:
application white point (usually 6504K) -> night light white point -(absolute colorimetric)-> display white point
-(relative colorimetric)-> XYZ D50 -(BToA1, also relative colorimetric)-> display white point <<< this part cancels itself out, as far as white points are concerned
Edited by Xaver Hugl