From f09637de353b8322147d0bde67ad2bc997173d76 Mon Sep 17 00:00:00 2001 From: Brian Aker Date: Sun, 15 Mar 2026 19:12:17 -0700 Subject: [PATCH 1/2] autoconf: refresh bundled macros, remove AC_CANONICAL_TARGET This updates bundled autoconf-archive macros, remove AC_CANONICAL_TARGET from configure.ac which had been required because of bug in the version ax_pthread.m4 used. This keeps pthread/configure checks aligned with native host builds and pulls in newer macro behavior for compiler flag probing and compiler version detection. --- configure.ac | 1 - m4/ax_append_compile_flags.m4 | 31 ++++------------------- m4/ax_append_flag.m4 | 31 ++++------------------- m4/ax_check_compile_flag.m4 | 45 +++++++++++++--------------------- m4/ax_check_link_flag.m4 | 31 ++++------------------- m4/ax_compiler_version.m4 | 17 ++++++++++++- m4/ax_create_generic_config.m4 | 37 ++++++---------------------- m4/ax_pthread.m4 | 12 ++++----- 8 files changed, 62 insertions(+), 143 deletions(-) diff --git a/configure.ac b/configure.ac index 5e5ee7eb957..b96168d6452 100644 --- a/configure.ac +++ b/configure.ac @@ -25,7 +25,6 @@ CFLAGS="$CFLAGS $C_EXTRA_FLAGS $C_FLAGS" AC_PROG_CC AM_PROG_CC_C_O AC_CANONICAL_HOST -AC_CANONICAL_TARGET AC_CONFIG_MACRO_DIR([m4]) AM_INIT_AUTOMAKE([1.13.4 -Wall -Werror -Wno-portability foreign tar-ustar subdir-objects no-define color-tests]) diff --git a/m4/ax_append_compile_flags.m4 b/m4/ax_append_compile_flags.m4 index 5b6f1af51de..9c856356c0c 100644 --- a/m4/ax_append_compile_flags.m4 +++ b/m4/ax_append_compile_flags.m4 @@ -30,33 +30,12 @@ # # Copyright (c) 2011 Maarten Bosmans # -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation, either version 3 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see . -# -# As a special exception, the respective Autoconf Macro's copyright owner -# gives unlimited permission to copy, distribute and modify the configure -# scripts that are the output of Autoconf when processing the Macro. You -# need not follow the terms of the GNU General Public License when using -# or distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. -# -# This special exception to the GPL applies to versions of the Autoconf -# Macro released by the Autoconf Archive. When you make and distribute a -# modified version of the Autoconf Macro, you may extend this special -# exception to the GPL to apply to your modified version as well. +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. -#serial 6 +#serial 7 AC_DEFUN([AX_APPEND_COMPILE_FLAGS], [AX_REQUIRE_DEFINED([AX_CHECK_COMPILE_FLAG]) diff --git a/m4/ax_append_flag.m4 b/m4/ax_append_flag.m4 index e8c5312af61..dd6d8b61406 100644 --- a/m4/ax_append_flag.m4 +++ b/m4/ax_append_flag.m4 @@ -23,33 +23,12 @@ # Copyright (c) 2008 Guido U. Draheim # Copyright (c) 2011 Maarten Bosmans # -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation, either version 3 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see . -# -# As a special exception, the respective Autoconf Macro's copyright owner -# gives unlimited permission to copy, distribute and modify the configure -# scripts that are the output of Autoconf when processing the Macro. You -# need not follow the terms of the GNU General Public License when using -# or distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. -# -# This special exception to the GPL applies to versions of the Autoconf -# Macro released by the Autoconf Archive. When you make and distribute a -# modified version of the Autoconf Macro, you may extend this special -# exception to the GPL to apply to your modified version as well. +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. -#serial 7 +#serial 8 AC_DEFUN([AX_APPEND_FLAG], [dnl diff --git a/m4/ax_check_compile_flag.m4 b/m4/ax_check_compile_flag.m4 index dcabb92a141..54191c55353 100644 --- a/m4/ax_check_compile_flag.m4 +++ b/m4/ax_check_compile_flag.m4 @@ -29,40 +29,29 @@ # Copyright (c) 2008 Guido U. Draheim # Copyright (c) 2011 Maarten Bosmans # -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation, either version 3 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see . -# -# As a special exception, the respective Autoconf Macro's copyright owner -# gives unlimited permission to copy, distribute and modify the configure -# scripts that are the output of Autoconf when processing the Macro. You -# need not follow the terms of the GNU General Public License when using -# or distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. -# -# This special exception to the GPL applies to versions of the Autoconf -# Macro released by the Autoconf Archive. When you make and distribute a -# modified version of the Autoconf Macro, you may extend this special -# exception to the GPL to apply to your modified version as well. +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. -#serial 5 +#serial 11 AC_DEFUN([AX_CHECK_COMPILE_FLAG], [AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl -AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ +AC_CACHE_CHECK([whether the _AC_LANG compiler accepts $1], CACHEVAR, [ ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS - _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1" + if test x"m4_case(_AC_LANG, + [C], [$GCC], + [C++], [$GXX], + [Fortran], [$GFC], + [Fortran 77], [$G77], + [Objective C], [$GOBJC], + [Objective C++], [$GOBJCXX], + [no])" = xyes ; then + add_gnu_werror="-Werror" + fi + _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1 $add_gnu_werror" AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], [AS_VAR_SET(CACHEVAR,[yes])], [AS_VAR_SET(CACHEVAR,[no])]) diff --git a/m4/ax_check_link_flag.m4 b/m4/ax_check_link_flag.m4 index 819409a20a4..03a30ce4c73 100644 --- a/m4/ax_check_link_flag.m4 +++ b/m4/ax_check_link_flag.m4 @@ -29,33 +29,12 @@ # Copyright (c) 2008 Guido U. Draheim # Copyright (c) 2011 Maarten Bosmans # -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation, either version 3 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see . -# -# As a special exception, the respective Autoconf Macro's copyright owner -# gives unlimited permission to copy, distribute and modify the configure -# scripts that are the output of Autoconf when processing the Macro. You -# need not follow the terms of the GNU General Public License when using -# or distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. -# -# This special exception to the GPL applies to versions of the Autoconf -# Macro released by the Autoconf Archive. When you make and distribute a -# modified version of the Autoconf Macro, you may extend this special -# exception to the GPL to apply to your modified version as well. +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. -#serial 5 +#serial 6 AC_DEFUN([AX_CHECK_LINK_FLAG], [AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF diff --git a/m4/ax_compiler_version.m4 b/m4/ax_compiler_version.m4 index 0581d1bc0f8..01d1ed5c7ac 100644 --- a/m4/ax_compiler_version.m4 +++ b/m4/ax_compiler_version.m4 @@ -36,7 +36,7 @@ # and this notice are preserved. This file is offered as-is, without any # warranty. -#serial 12 +#serial 14 # for intel AC_DEFUN([_AX_COMPILER_VERSION_INTEL], @@ -442,6 +442,20 @@ AC_DEFUN([_AX_COMPILER_VERSION_WATCOM],[dnl ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor" ]) +# for NVHPC +AC_DEFUN([_AX_COMPILER_VERSION_NVHPC],[ + AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, + __NVCOMPILER_MAJOR__,, + AC_MSG_FAILURE([[[$0]] unknown nvhpc major])) + AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, + __NVCOMPILER_MINOR__,, + AC_MSG_FAILURE([[[$0]] unknown nvhpc minor])) + AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, + [__NVCOMPILER_PATCHLEVEL__],, + AC_MSG_FAILURE([[[$0]] unknown nvhpc patch level])) + ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" + ]) + # for PGI AC_DEFUN([_AX_COMPILER_VERSION_PORTLAND],[ AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, @@ -521,6 +535,7 @@ AC_DEFUN([AX_COMPILER_VERSION],[dnl [microsoft],[_AX_COMPILER_VERSION_MICROSOFT], [metrowerks],[_AX_COMPILER_VERSION_METROWERKS], [watcom],[_AX_COMPILER_VERSION_WATCOM], + [nvhpc],[_AX_COMPILER_VERSION_NVHPC], [portland],[_AX_COMPILER_VERSION_PORTLAND], [tcc],[_AX_COMPILER_VERSION_TCC], [sdcc],[_AX_COMPILER_VERSION_SDCC], diff --git a/m4/ax_create_generic_config.m4 b/m4/ax_create_generic_config.m4 index 59aeee61793..299292d0af0 100644 --- a/m4/ax_create_generic_config.m4 +++ b/m4/ax_create_generic_config.m4 @@ -1,6 +1,6 @@ -# ============================================================================ -# http://www.gnu.org/software/autoconf-archive/ax_create_generic_config.html -# ============================================================================ +# ============================================================================= +# https://www.gnu.org/software/autoconf-archive/ax_create_generic_config.html +# ============================================================================= # # SYNOPSIS # @@ -33,33 +33,12 @@ # # Copyright (c) 2008 Guido U. Draheim # -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 3 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see . -# -# As a special exception, the respective Autoconf Macro's copyright owner -# gives unlimited permission to copy, distribute and modify the configure -# scripts that are the output of Autoconf when processing the Macro. You -# need not follow the terms of the GNU General Public License when using -# or distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. -# -# This special exception to the GPL applies to versions of the Autoconf -# Macro released by the Autoconf Archive. When you make and distribute a -# modified version of the Autoconf Macro, you may extend this special -# exception to the GPL to apply to your modified version as well. +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. -#serial 6 +#serial 11 AU_ALIAS([AC_CREATE_GENERIC_CONFIG], [AX_CREATE_GENERIC_CONFIG]) AC_DEFUN([AX_CREATE_GENERIC_CONFIG],[# create a generic PACKAGE-config file diff --git a/m4/ax_pthread.m4 b/m4/ax_pthread.m4 index e5858e50c3c..9f35d139149 100644 --- a/m4/ax_pthread.m4 +++ b/m4/ax_pthread.m4 @@ -87,11 +87,11 @@ # modified version of the Autoconf Macro, you may extend this special # exception to the GPL to apply to your modified version as well. -#serial 30 +#serial 31 AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD]) AC_DEFUN([AX_PTHREAD], [ -AC_REQUIRE([AC_CANONICAL_TARGET]) +AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([AC_PROG_SED]) AC_LANG_PUSH([C]) @@ -158,7 +158,7 @@ ax_pthread_flags="pthreads none -Kthread -pthread -pthreads -mthreads pthread -- # --thread-safe: KAI C++ # pthread-config: use pthread-config program (for GNU Pth library) -case $target_os in +case $host_os in freebsd*) @@ -248,7 +248,7 @@ AS_IF([test "x$ax_pthread_clang" = "xyes"], # definitions is, on some systems, a strong hint that pthreads support is # correctly enabled -case $target_os in +case $host_os in darwin* | hpux* | linux* | osf* | solaris*) ax_pthread_check_macro="_REENTRANT" ;; @@ -450,7 +450,7 @@ if test "x$ax_pthread_ok" = "xyes"; then AC_CACHE_CHECK([whether more special flags are required for pthreads], [ax_cv_PTHREAD_SPECIAL_FLAGS], [ax_cv_PTHREAD_SPECIAL_FLAGS=no - case $target_os in + case $host_os in solaris*) ax_cv_PTHREAD_SPECIAL_FLAGS="-D_POSIX_PTHREAD_SEMANTICS" ;; @@ -480,7 +480,7 @@ if test "x$ax_pthread_ok" = "xyes"; then # More AIX lossage: compile with *_r variant if test "x$GCC" != "xyes"; then - case $target_os in + case $host_os in aix*) AS_CASE(["x/$CC"], [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6], From db986d16a017132927295c51fc4c4bb294a2aeb8 Mon Sep 17 00:00:00 2001 From: Brian Aker Date: Mon, 16 Mar 2026 14:45:54 -0700 Subject: [PATCH 2/2] Delete ax_compiler_version.m4 AX_COMPILER_VERSION is inappropriately polluting the compiler options, it also no longer needed. --- m4/ax_compiler_version.m4 | 544 -------------------------------------- 1 file changed, 544 deletions(-) delete mode 100644 m4/ax_compiler_version.m4 diff --git a/m4/ax_compiler_version.m4 b/m4/ax_compiler_version.m4 deleted file mode 100644 index 01d1ed5c7ac..00000000000 --- a/m4/ax_compiler_version.m4 +++ /dev/null @@ -1,544 +0,0 @@ -# =========================================================================== -# https://www.gnu.org/software/autoconf-archive/ax_compiler_version.html -# =========================================================================== -# -# SYNOPSIS -# -# AX_COMPILER_VERSION -# -# DESCRIPTION -# -# This macro retrieves the compiler version and returns it in the cache -# variable $ax_cv_c_compiler_version for C and $ax_cv_cxx_compiler_version -# for C++. -# -# Version is returned as epoch:major.minor.patchversion -# -# Epoch is used in order to have an increasing version number in case of -# marketing change. -# -# Epoch use: * borland compiler use chronologically 0turboc for turboc -# era, -# -# 1borlanc BORLANDC++ before 5, 2cppbuilder for cppbuilder era, -# 3borlancpp for return of BORLANDC++ (after version 5.5), -# 4cppbuilder for cppbuilder with year version, -# and 5xe for XE era. -# -# An empty string is returned otherwise. -# -# LICENSE -# -# Copyright (c) 2014 Bastien ROUCARIES -# -# Copying and distribution of this file, with or without modification, are -# permitted in any medium without royalty provided the copyright notice -# and this notice are preserved. This file is offered as-is, without any -# warranty. - -#serial 14 - -# for intel -AC_DEFUN([_AX_COMPILER_VERSION_INTEL], - [ dnl - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - [__INTEL_COMPILER/100],, - AC_MSG_FAILURE([[[$0]] unknown intel compiler version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - [(__INTEL_COMPILER%100)/10],, - AC_MSG_FAILURE([[[$0]] unknown intel compiler version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [(__INTEL_COMPILER%10)],, - AC_MSG_FAILURE([[[$0]] unknown intel compiler version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# for IBM -AC_DEFUN([_AX_COMPILER_VERSION_IBM], - [ dnl - dnl check between z/OS C/C++ and XL C/C++ - AC_COMPILE_IFELSE([ - AC_LANG_PROGRAM([], - [ - #if defined(__COMPILER_VER__) - choke me; - #endif - ])], - [ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - [__xlC__/100],, - AC_MSG_FAILURE([[[$0]] unknown IBM compiler major version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - [__xlC__%100],, - AC_MSG_FAILURE([[[$0]] unknown IBM compiler minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [__xlC_ver__/0x100],, - AC_MSG_FAILURE([[[$0]] unknown IBM compiler patch version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_build, - [__xlC_ver__%0x100],, - AC_MSG_FAILURE([[[$0]] unknown IBM compiler build version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_build" - ], - [ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [__xlC__%1000],, - AC_MSG_FAILURE([[[$0]] unknown IBM compiler patch version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - [(__xlC__/10000)%10],, - AC_MSG_FAILURE([[[$0]] unknown IBM compiler minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - [(__xlC__/100000)%10],, - AC_MSG_FAILURE([[[$0]] unknown IBM compiler major version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) -]) - -# for pathscale -AC_DEFUN([_AX_COMPILER_VERSION_PATHSCALE],[ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - __PATHCC__,, - AC_MSG_FAILURE([[[$0]] unknown pathscale major])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - __PATHCC_MINOR__,, - AC_MSG_FAILURE([[[$0]] unknown pathscale minor])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [__PATHCC_PATCHLEVEL__],, - AC_MSG_FAILURE([[[$0]] unknown pathscale patch level])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# for clang -AC_DEFUN([_AX_COMPILER_VERSION_CLANG],[ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - __clang_major__,, - AC_MSG_FAILURE([[[$0]] unknown clang major])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - __clang_minor__,, - AC_MSG_FAILURE([[[$0]] unknown clang minor])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [__clang_patchlevel__],,0) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# for crayc -AC_DEFUN([_AX_COMPILER_VERSION_CRAY],[ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - _RELEASE,, - AC_MSG_FAILURE([[[$0]] unknown crayc release])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - _RELEASE_MINOR,, - AC_MSG_FAILURE([[[$0]] unknown crayc minor])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor" - ]) - -# for fujitsu -AC_DEFUN([_AX_COMPILER_VERSION_FUJITSU],[ - AC_COMPUTE_INT(ax_cv_[]_AC_LANG_ABBREV[]_compiler_version, - __FCC_VERSION,, - AC_MSG_FAILURE([[[$0]]unknown fujitsu release])) - ]) - -# for GNU -AC_DEFUN([_AX_COMPILER_VERSION_GNU],[ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - __GNUC__,, - AC_MSG_FAILURE([[[$0]] unknown gcc major])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - __GNUC_MINOR__,, - AC_MSG_FAILURE([[[$0]] unknown gcc minor])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [__GNUC_PATCHLEVEL__],, - AC_MSG_FAILURE([[[$0]] unknown gcc patch level])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# For sun -AC_DEFUN([_AX_COMPILER_VERSION_SUN],[ - m4_define([_AX_COMPILER_VERSION_SUN_NUMBER], - [ - #if defined(__SUNPRO_CC) - __SUNPRO_CC - #else - __SUNPRO_C - #endif - ]) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_until59, - !!(_AX_COMPILER_VERSION_SUN_NUMBER < 0x1000),, - AC_MSG_FAILURE([[[$0]] unknown sun release version])) - AS_IF([test "X$_ax_[]_AC_LANG_ABBREV[]_compiler_version_until59" = X1], - [dnl - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - _AX_COMPILER_VERSION_SUN_NUMBER % 0x10,, - AC_MSG_FAILURE([[[$0]] unknown sun patch version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - (_AX_COMPILER_VERSION_SUN_NUMBER / 0x10) % 0x10,, - AC_MSG_FAILURE([[[$0]] unknown sun minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - (_AX_COMPILER_VERSION_SUN_NUMBER / 0x100),, - AC_MSG_FAILURE([[[$0]] unknown sun major version])) - ], - [dnl - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - _AX_COMPILER_VERSION_SUN_NUMBER % 0x10,, - AC_MSG_FAILURE([[[$0]] unknown sun patch version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - (_AX_COMPILER_VERSION_SUN_NUMBER / 0x100) % 0x100,, - AC_MSG_FAILURE([[[$0]] unknown sun minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - (_AX_COMPILER_VERSION_SUN_NUMBER / 0x1000),, - AC_MSG_FAILURE([[[$0]] unknown sun major version])) - ]) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" -]) - -AC_DEFUN([_AX_COMPILER_VERSION_HP],[ - m4_define([_AX_COMPILER_VERSION_HP_NUMBER], - [ - #if defined(__HP_cc) - __HP_cc - #else - __HP_aCC - #endif - ]) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_untilA0121, - !!(_AX_COMPILER_VERSION_HP_NUMBER <= 1),, - AC_MSG_FAILURE([[[$0]] unknown hp release version])) - AS_IF([test "X$_ax_[]_AC_LANG_ABBREV[]_compiler_version_untilA0121" = X1], - [dnl By default output last version with this behavior. - dnl it is so old - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="01.21.00" - ], - [dnl - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - (_AX_COMPILER_VERSION_HP_NUMBER % 100),, - AC_MSG_FAILURE([[[$0]] unknown hp release version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - ((_AX_COMPILER_VERSION_HP_NUMBER / 100)%100),, - AC_MSG_FAILURE([[[$0]] unknown hp minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - ((_AX_COMPILER_VERSION_HP_NUMBER / 10000)%100),, - AC_MSG_FAILURE([[[$0]] unknown hp major version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) -]) - -AC_DEFUN([_AX_COMPILER_VERSION_DEC],[dnl - m4_define([_AX_COMPILER_VERSION_DEC_NUMBER], - [ - #if defined(__DECC_VER) - __DECC_VER - #else - __DECCXX_VER - #endif - ]) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - (_AX_COMPILER_VERSION_DEC_NUMBER % 10000),, - AC_MSG_FAILURE([[[$0]] unknown dec release version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - ((_AX_COMPILER_VERSION_DEC_NUMBER / 100000UL)%100),, - AC_MSG_FAILURE([[[$0]] unknown dec minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - ((_AX_COMPILER_VERSION_DEC_NUMBER / 10000000UL)%100),, - AC_MSG_FAILURE([[[$0]] unknown dec major version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# borland -AC_DEFUN([_AX_COMPILER_VERSION_BORLAND],[dnl - m4_define([_AX_COMPILER_VERSION_TURBOC_NUMBER], - [ - #if defined(__TURBOC__) - __TURBOC__ - #else - choke me - #endif - ]) - m4_define([_AX_COMPILER_VERSION_BORLANDC_NUMBER], - [ - #if defined(__BORLANDC__) - __BORLANDC__ - #else - __CODEGEARC__ - #endif - ]) - AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM(, - _AX_COMPILER_VERSION_TURBOC_NUMBER)], - [dnl TURBOC - AC_COMPUTE_INT( - _ax_[]_AC_LANG_ABBREV[]_compiler_version_turboc_raw, - _AX_COMPILER_VERSION_TURBOC_NUMBER,, - AC_MSG_FAILURE([[[$0]] unknown turboc version])) - AS_IF( - [test $_ax_[]_AC_LANG_ABBREV[]_compiler_version_turboc_raw -lt 661 || test $_ax_[]_AC_LANG_ABBREV[]_compiler_version_turboc_raw -gt 1023], - [dnl compute normal version - AC_COMPUTE_INT( - _ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - _AX_COMPILER_VERSION_TURBOC_NUMBER % 0x100,, - AC_MSG_FAILURE([[[$0]] unknown turboc minor version])) - AC_COMPUTE_INT( - _ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - (_AX_COMPILER_VERSION_TURBOC_NUMBER/0x100)%0x100,, - AC_MSG_FAILURE([[[$0]] unknown turboc major version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="0turboc:$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor"], - [dnl special version - AS_CASE([$_ax_[]_AC_LANG_ABBREV[]_compiler_version_turboc_raw], - [661],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="0turboc:1.00"], - [662],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="0turboc:1.01"], - [663],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="0turboc:2.00"], - [ - AC_MSG_WARN([[[$0]] unknown turboc version between 0x295 and 0x400 please report bug]) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="" - ]) - ]) - ], - # borlandc - [ - AC_COMPUTE_INT( - _ax_[]_AC_LANG_ABBREV[]_compiler_version_borlandc_raw, - _AX_COMPILER_VERSION_BORLANDC_NUMBER,, - AC_MSG_FAILURE([[[$0]] unknown borlandc version])) - AS_CASE([$_ax_[]_AC_LANG_ABBREV[]_compiler_version_borlandc_raw], - dnl BORLANDC++ before 5.5 - [512] ,[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="1borlanc:2.00"], - [1024],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="1borlanc:3.00"], - [1024],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="1borlanc:3.00"], - [1040],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="1borlanc:3.1"], - [1106],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="1borlanc:4.0"], - [1280],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="1borlanc:5.0"], - [1312],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="1borlanc:5.02"], - dnl C++ Builder era - [1328],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="2cppbuilder:3.0"], - [1344],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="2cppbuilder:4.0"], - dnl BORLANDC++ after 5.5 - [1360],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="3borlancpp:5.5"], - [1361],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="3borlancpp:5.51"], - [1378],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="3borlancpp:5.6.4"], - dnl C++ Builder with year number - [1392],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="4cppbuilder:2006"], - [1424],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="4cppbuilder:2007"], - [1555],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="4cppbuilder:2009"], - [1569],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="4cppbuilder:2010"], - dnl XE version - [1584],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="5xe"], - [1600],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="5xe:2"], - [1616],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="5xe:3"], - [1632],[ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="5xe:4"], - [ - AC_MSG_WARN([[[$0]] Unknown borlandc compiler version $_ax_[]_AC_LANG_ABBREV[]_compiler_version_borlandc_raw please report bug]) - ]) - ]) - ]) - -# COMO -AC_DEFUN([_AX_COMPILER_VERSION_COMEAU], - [ dnl - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - [__COMO_VERSION__%100],, - AC_MSG_FAILURE([[[$0]] unknown comeau compiler minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - [(__COMO_VERSION__/100)%10],, - AC_MSG_FAILURE([[[$0]] unknown comeau compiler major version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor" - ]) - -# KAI -AC_DEFUN([_AX_COMPILER_VERSION_KAI],[ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [__KCC_VERSION%100],, - AC_MSG_FAILURE([[[$0]] unknown kay compiler patch version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - [(__KCC_VERSION/100)%10],, - AC_MSG_FAILURE([[[$0]] unknown kay compiler minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - [(__KCC_VERSION/1000)%10],, - AC_MSG_FAILURE([[[$0]] unknown kay compiler major version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -dnl LCC -dnl LCC does not output version... - -# SGI -AC_DEFUN([_AX_COMPILER_VERSION_SGI],[ - m4_define([_AX_COMPILER_VERSION_SGI_NUMBER], - [ - #if defined(_COMPILER_VERSION) - _COMPILER_VERSION - #else - _SGI_COMPILER_VERSION - #endif - ]) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [_AX_COMPILER_VERSION_SGI_NUMBER%10],, - AC_MSG_FAILURE([[[$0]] unknown SGI compiler patch version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - [(_AX_COMPILER_VERSION_SGI_NUMBER/10)%10],, - AC_MSG_FAILURE([[[$0]] unknown SGI compiler minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - [(_AX_COMPILER_VERSION_SGI_NUMBER/100)%10],, - AC_MSG_FAILURE([[[$0]] unknown SGI compiler major version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# microsoft -AC_DEFUN([_AX_COMPILER_VERSION_MICROSOFT],[ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - _MSC_VER%100,, - AC_MSG_FAILURE([[[$0]] unknown microsoft compiler minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - (_MSC_VER/100)%100,, - AC_MSG_FAILURE([[[$0]] unknown microsoft compiler major version])) - dnl could be overridden - _ax_[]_AC_LANG_ABBREV[]_compiler_version_patch=0 - _ax_[]_AC_LANG_ABBREV[]_compiler_version_build=0 - # special case for version 6 - AS_IF([test "X$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major" = "X12"], - [AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - _MSC_FULL_VER%1000,, - _ax_[]_AC_LANG_ABBREV[]_compiler_version_patch=0)]) - # for version 7 - AS_IF([test "X$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major" = "X13"], - [AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - _MSC_FULL_VER%1000,, - AC_MSG_FAILURE([[[$0]] unknown microsoft compiler patch version])) - ]) - # for version > 8 - AS_IF([test $_ax_[]_AC_LANG_ABBREV[]_compiler_version_major -ge 14], - [AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - _MSC_FULL_VER%10000,, - AC_MSG_FAILURE([[[$0]] unknown microsoft compiler patch version])) - ]) - AS_IF([test $_ax_[]_AC_LANG_ABBREV[]_compiler_version_major -ge 15], - [AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_build, - _MSC_BUILD,, - AC_MSG_FAILURE([[[$0]] unknown microsoft compiler build version])) - ]) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_build" - ]) - -# for metrowerks -AC_DEFUN([_AX_COMPILER_VERSION_METROWERKS],[dnl - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - __MWERKS__%0x100,, - AC_MSG_FAILURE([[[$0]] unknown metrowerks compiler patch version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - (__MWERKS__/0x100)%0x10,, - AC_MSG_FAILURE([[[$0]] unknown metrowerks compiler minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - (__MWERKS__/0x1000)%0x10,, - AC_MSG_FAILURE([[[$0]] unknown metrowerks compiler major version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# for watcom -AC_DEFUN([_AX_COMPILER_VERSION_WATCOM],[dnl - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - __WATCOMC__%100,, - AC_MSG_FAILURE([[[$0]] unknown watcom compiler minor version])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - (__WATCOMC__/100)%100,, - AC_MSG_FAILURE([[[$0]] unknown watcom compiler major version])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor" - ]) - -# for NVHPC -AC_DEFUN([_AX_COMPILER_VERSION_NVHPC],[ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - __NVCOMPILER_MAJOR__,, - AC_MSG_FAILURE([[[$0]] unknown nvhpc major])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - __NVCOMPILER_MINOR__,, - AC_MSG_FAILURE([[[$0]] unknown nvhpc minor])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [__NVCOMPILER_PATCHLEVEL__],, - AC_MSG_FAILURE([[[$0]] unknown nvhpc patch level])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# for PGI -AC_DEFUN([_AX_COMPILER_VERSION_PORTLAND],[ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - __PGIC__,, - AC_MSG_FAILURE([[[$0]] unknown pgi major])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - __PGIC_MINOR__,, - AC_MSG_FAILURE([[[$0]] unknown pgi minor])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [__PGIC_PATCHLEVEL__],, - AC_MSG_FAILURE([[[$0]] unknown pgi patch level])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# tcc -AC_DEFUN([_AX_COMPILER_VERSION_TCC],[ - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version=[`tcc -v | $SED 's/^[ ]*tcc[ ]\+version[ ]\+\([0-9.]\+\).*/\1/g'`] - ]) - -# for GNU -AC_DEFUN([_AX_COMPILER_VERSION_SDCC],[ - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_major, - /* avoid parse error with comments */ - #if(defined(__SDCC_VERSION_MAJOR)) - __SDCC_VERSION_MAJOR - #else - SDCC/100 - #endif - ,, - AC_MSG_FAILURE([[[$0]] unknown sdcc major])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor, - /* avoid parse error with comments */ - #if(defined(__SDCC_VERSION_MINOR)) - __SDCC_VERSION_MINOR - #else - (SDCC%100)/10 - #endif - ,, - AC_MSG_FAILURE([[[$0]] unknown sdcc minor])) - AC_COMPUTE_INT(_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch, - [ - /* avoid parse error with comments */ - #if(defined(__SDCC_VERSION_PATCH)) - __SDCC_VERSION_PATCH - #elsif(defined(_SDCC_VERSION_PATCHLEVEL)) - __SDCC_VERSION_PATCHLEVEL - #else - SDCC%10 - #endif - ],, - AC_MSG_FAILURE([[[$0]] unknown sdcc patch level])) - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version="$_ax_[]_AC_LANG_ABBREV[]_compiler_version_major.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_minor.$_ax_[]_AC_LANG_ABBREV[]_compiler_version_patch" - ]) - -# main entry point -AC_DEFUN([AX_COMPILER_VERSION],[dnl - AC_REQUIRE([AX_COMPILER_VENDOR]) - AC_REQUIRE([AC_PROG_SED]) - AC_CACHE_CHECK([for _AC_LANG compiler version], - ax_cv_[]_AC_LANG_ABBREV[]_compiler_version, - [ dnl - AS_CASE([$ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor], - [intel],[_AX_COMPILER_VERSION_INTEL], - [ibm],[_AX_COMPILER_VERSION_IBM], - [pathscale],[_AX_COMPILER_VERSION_PATHSCALE], - [clang],[_AX_COMPILER_VERSION_CLANG], - [cray],[_AX_COMPILER_VERSION_CRAY], - [fujitsu],[_AX_COMPILER_VERSION_FUJITSU], - [gnu],[_AX_COMPILER_VERSION_GNU], - [sun],[_AX_COMPILER_VERSION_SUN], - [hp],[_AX_COMPILER_VERSION_HP], - [dec],[_AX_COMPILER_VERSION_DEC], - [borland],[_AX_COMPILER_VERSION_BORLAND], - [comeau],[_AX_COMPILER_VERSION_COMEAU], - [kai],[_AX_COMPILER_VERSION_KAI], - [sgi],[_AX_COMPILER_VERSION_SGI], - [microsoft],[_AX_COMPILER_VERSION_MICROSOFT], - [metrowerks],[_AX_COMPILER_VERSION_METROWERKS], - [watcom],[_AX_COMPILER_VERSION_WATCOM], - [nvhpc],[_AX_COMPILER_VERSION_NVHPC], - [portland],[_AX_COMPILER_VERSION_PORTLAND], - [tcc],[_AX_COMPILER_VERSION_TCC], - [sdcc],[_AX_COMPILER_VERSION_SDCC], - [ax_cv_[]_AC_LANG_ABBREV[]_compiler_version=""]) - ]) -])