Maybe I'm just confused, then. You weren't clear about the problem you're experiencing, or what you've tried to resolve it. It sounded in your initial email like you just don't know how to build a CMake project (using "g++", for instance, is not how that works). Further leading me to think this was that you apparently are doing this compilation in-tree, in gr-qtgui/examples, which isn't a good place for user projects.
The CMakeLists.txt you attached appears to be designed for in-tree compilation. This means your project would always have to be compiled along with your own custom branch of Gnuradio, which I'm almost positive is not what you actually want to do. The out-of-tree module template includes all of the CMake commands necessary to compile and link your own project outside the Gnuradio source tree. It should serve as a much better starting point for your project than the CMakeLists.txt that you attached, which lacks the necessary find_package calls to properly find and link to Gnuradio (and any other libraries you might use). You'll want to take a look at the toplevel CMakeLists.txt in the out-of-tree template as well as the one in lib/, which you'll want to modify to produce an executable instead of a library for your project.
You could also look at the CMake files from other standalone Gnuradio applications for inspiration, such as gqrx.