
Dear Richard Retanubun,
In message 49C399AA.2030107@RuggedCom.com you wrote:
echo __GNUC__ __GNUC_MINOR__ | $(CC) -E -xc - \ | tail -n 1 | sed -e 's/ /0/'
would be any better than parsing the output of "$(CC) --version"?
The fact that it takes 4 processes instead of one (or say two if we add the filtering) is not a recommendation.
sorry if I'm (re)stating the obvious, but just to be clear:
ifneq ($(findstring 4.1,$(shell $(CC) --version)),4.1)
while simple, will cause gcc-4.0.x or gcc-3.x.x to try to use the -mcpu option which is not supported yet until gcc-4.2.+ (if I am not mistaken).
Well, when I say "parsing the output" I had a little more intelligent testing in ming than a fixed string compare and decision between 4.1 or anything else.
I am sure there are many better ways of extracting the version string, my attempt is to highlight one way that converts the version to a number and use the '-gt' to compare on it.
You get the number for free from "gcc -v".
Best regards,
Wolfgang Denk