Just a minor thing, but I think you should use lower case for CMake functions like the rest of the file uses. Ok I know that the CHECK_* stuff doesn't, but all target_link_libraries and the like does.