The flags.cmake file shows that I can (and should?) set 4 variables: app_include_dirs, app_link_libs, app_definitions, and app_compile_flags. Are these the only variables I can set? What are some examples of how I might set them for a given external system? What useful variables do I have access to in this flags.cmake? For instance, do I know the project root folder path? Can I use relative paths to set these variables? Relative to where? (Again, where's the project root?)
examples/user_flags/
should show how to use flags.cmake to cooperate with the build system to connect with some external system (e.g., Leap Motion SDK C++ API, MySQL C API, OpenCV C++ API). Instead, it presents code that does not even try to use an external system and a flags.cmake file that does not show how one might practically use a flags.cmake file.The flags.cmake file shows that I can (and should?) set 4 variables: app_include_dirs, app_link_libs, app_definitions, and app_compile_flags. Are these the only variables I can set? What are some examples of how I might set them for a given external system? What useful variables do I have access to in this flags.cmake? For instance, do I know the project root folder path? Can I use relative paths to set these variables? Relative to where? (Again, where's the project root?)