gcc version number from autotools
Bob Rossi
bob_rossi@cox.net
Wed Dec 20 21:44:00 GMT 2006
On Wed, Dec 20, 2006 at 09:09:33AM -0800, Ian Lance Taylor wrote:
> Bob Rossi <bob_rossi@cox.net> writes:
>
> > What's the best way to get the gcc version number from an autotools
> > project? I could start gcc and parse the output. Could I write a small
> > program that checks some #define that has gcc's version number?
>
> You can check __GNUC__, __GNUC_MINOR__, and __GNUC_PATCHLEVEL__. Is
> that the sort of thing you are looking for?
>
> > If so, how far back does that work for?
>
> __GNUC__ and __GNUC_MINOR__ have been around for a long time,
> certainly since before gcc 3.0 (and, although I didn't check, probably
> before gcc 2.0). I believe that __GNUC_PATCHLEVEL__ was added in gcc
> 3.0.
Thanks, here is what I did, in case others find it useful.
Bob Rossi
AC_MSG_CHECKING([for $CC version])
AC_RUN_IFELSE([AC_LANG_PROGRAM(
[[#include <stdio.h>]], [[
FILE *fp;
fp = fopen("conftest.cc", "w");
if (fp == 0) return(1);
fprintf(fp, "ac_cv_cc_major_version=%d;ac_cv_cc_minor_version=%d;ac_cv_cc_patch_version=%d",
__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__);
fclose(fp);
]])],
[eval `cat conftest.cc`],
[ac_cv_cc_major_version=no])
if test "$ac_cv_cc_major_version" = "no"; then
AC_MSG_RESULT([no])
AC_MSG_FAILURE(Requires that $CC is usable],[1])
else
ac_cv_cc_version="$ac_cv_cc_major_version.$ac_cv_cc_minor_version.$ac_cv_cc_patch_version"
AC_MSG_RESULT([$ac_cv_cc_version])
fi;
More information about the Gcc-help
mailing list