this allows once instance of an lsp to understand multiple cmake build directories.
ifc can be used to compile .if files into self-contained header-only C libraries, which can be used to send/receive messages that conform to the described interface.