This is a C preprocessor question: How to convert a shell command which outputs a string with whitespaces within it into a valid preprocessor token?

I have this program:
Code:
int main()
{
   printf("%s\n", GCCVERSION);
}
And I try to compile it using:
% gcc -DGCCVERSION="\"`gcc --version`\"" testver.c
Unmatched ".
FYI:
% gcc --version
gcc (GCC) 3.4.4
Copyright (C) 2004 Free Software Foundation, Inc. ....

I appreciate your help.