How is the darktable usermanual is generated?

This is the part where the user manual is generated, there are some comments which helps to understand how that works:

and
https://github.com/darktable-org/darktable/blob/master/doc/usermanual/CMakeLists.txt