You must (require …)
or (eval-and-compile (load …))
the libraries or files that provide the definitions of these macros in every file where you use these macros, before their first use, and you need to set up flycheck-emacs-lisp-load-path
to include the directories containing these libraries.
Otherwise the byte compiler does not even know that these symbols are macros and necessarily must treat invocations as normal function calls and arguments as normal Emacs Lisp expressions.