cproc should accept getopt-style arguments in this syntax.
I'm not sure what you mean bygetopt-style arguments. The cproc driver does indeed support both
-D foo=bar, and passes them on to the preprocessor.
I'm guessing you had some other flag that was not supported. I've run into this occasionally, too, since cproc didn't make it clear which option was problematic. C compilers are typically passed a lot of options, which makes it difficult to figure it out by inspecting the full command.
I pushed a commit that should help with this.