Is there, for example, a way to access arbitrary target properties?
Or do I need to hide my special parameters somewhere in the LINK_OPTIONS property?
I don't see how running arbitrary commands is possible in this way.
If you want to avoid the boilerplate of adding a post-build custom command use a macro that performs the add_executable() and add_custom_command(). Then use the macro for each of the executable.
Those markers aren't specified because it is part of implementation details of the Makefile (and Ninja?) generator and these items tend not to be documented for that reason (at least that is what I have come to understand from comments made on gitlab and developers mailing list).