The file looks fine to me, thanks!
But it contains some texts that are already defined somewhere else. Currently the concept is that "kwave.lsm" is some kind of "master" and settings from there are extracted and re-used where possible, like for example homepage, title, short description, there are some cmake variables for this, see cmake/KwaveRPMSupport.cmake, it provides some variables already (although the name might be a bit misleading, it is not only for RPM, maybe I extract parts to KwaveLSM.cmake). So would you mind renaming it into "kwave.appdata.xml.in" and let the fields be filled in by cmake?
Additionally, the modification done to the toplevel CMakeLists.txt would fit better into the "install files" section of kwave/CMakeLists.txt.