I’m afraid I’ll have to be the bearer of bad news: Kaleidoscope plugins use the Arduino build system under the hood, and are supposed to work without any makefile at all, from the Arduino IDE. This means they have to follow a certain layout, have a library.properties file at their root, and so on. Introducing CMake into this mix would be… challenging, to say the least.
The easiest way to use an external library is to make that library Arduino-compatible, and then just use it like any other library: put it somewhere the arduino tools can find it, and #include "LibraryHeader.h" and let the tools figure out the rest.
They’re there to help building without the IDE (but still use the underlying arduino-builder tool). The makefiles don’t do much but call out to kaleidoscope-builder, which is a big hack around arduino-builder that sets up some parameters and post-processes the output here and there.
To the best of my knowledge, no. Not in a reasonable way on the library level. You can tell the Arduino tools a few things (on a board level), but that is both awkward and too high level. So the easiest course of action is still to make the library Arduino-compatible.