@StanEpp find_package is like specifying a static library for your compiler... what I mean by that is that you have to have a corresponding FindX.cmake file in your CMAKE_MODULE_PATH when you do find_package(X). Cmake ships with a lot of FindX.cmake files by itself, but most projects must supply their own FindX.cmake file in order for other people to use find_package. So, essentially, it's up to @lefticus to supply that file. You don't truly have to use find_package, you could just drop the header files of chaiscript in your source tree. It'd be nice to have functionality for find_package though, because header-only libs (so called INTERFACE libraries in cmake jargon) can also provide their compiler flags like -std=c++14 and then transitively pass them to the targets that link with them.