3f66f6a5b3
This keyword is not expanded by Git which means it's not replaced with the correct revision value in the releases made using git-based scripts and it's confusing to have lines with unexpanded "$Id$" in the released files. As expanding them with Git is not that simple (it could be done with git archive and export-subst attribute) and there are not many benefits in having them in the first place, just remove all these lines. If nothing else, this will make an eventual transition to Git simpler. Closes #14487. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
315 lines
9.7 KiB
Plaintext
315 lines
9.7 KiB
Plaintext
dnl
|
|
dnl This file is part of Bakefile (http://www.bakefile.org)
|
|
dnl
|
|
dnl Copyright (C) 2003-2007 Vaclav Slavik, David Elliott and others
|
|
dnl
|
|
dnl Permission is hereby granted, free of charge, to any person obtaining a
|
|
dnl copy of this software and associated documentation files (the "Software"),
|
|
dnl to deal in the Software without restriction, including without limitation
|
|
dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
dnl and/or sell copies of the Software, and to permit persons to whom the
|
|
dnl Software is furnished to do so, subject to the following conditions:
|
|
dnl
|
|
dnl The above copyright notice and this permission notice shall be included in
|
|
dnl all copies or substantial portions of the Software.
|
|
dnl
|
|
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
dnl DEALINGS IN THE SOFTWARE.
|
|
dnl
|
|
dnl Compiler detection macros by David Elliott and Vadim Zeitlin
|
|
dnl
|
|
|
|
|
|
dnl ===========================================================================
|
|
dnl Macros to detect different C/C++ compilers
|
|
dnl ===========================================================================
|
|
|
|
dnl Based on autoconf _AC_LANG_COMPILER_GNU
|
|
dnl _AC_BAKEFILE_LANG_COMPILER(NAME, LANG, SYMBOL, IF-YES, IF-NO)
|
|
AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER],
|
|
[
|
|
AC_LANG_PUSH($2)
|
|
AC_CACHE_CHECK(
|
|
[whether we are using the $1 $2 compiler],
|
|
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3],
|
|
[AC_TRY_COMPILE(
|
|
[],
|
|
[
|
|
#ifndef $3
|
|
choke me
|
|
#endif
|
|
],
|
|
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3=yes],
|
|
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3=no]
|
|
)
|
|
]
|
|
)
|
|
if test "x$bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3" = "xyes"; then
|
|
:; $4
|
|
else
|
|
:; $5
|
|
fi
|
|
AC_LANG_POP($2)
|
|
])
|
|
|
|
dnl More specific version of the above macro checking whether the compiler
|
|
dnl version is at least the given one (assumes that we do use this compiler)
|
|
dnl
|
|
dnl _AC_BAKEFILE_LANG_COMPILER_LATER_THAN(NAME, LANG, SYMBOL, VER, VERMSG, IF-YES, IF-NO)
|
|
AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER_LATER_THAN],
|
|
[
|
|
AC_LANG_PUSH($2)
|
|
AC_CACHE_CHECK(
|
|
[whether we are using $1 $2 compiler v$5 or later],
|
|
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3[]_lt_[]$4],
|
|
[AC_TRY_COMPILE(
|
|
[],
|
|
[
|
|
#ifndef $3 || $3 < $4
|
|
choke me
|
|
#endif
|
|
],
|
|
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3[]_lt_[]$4=yes],
|
|
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3[]_lt_[]$4=no]
|
|
)
|
|
]
|
|
)
|
|
if test "x$bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3[]_lt_[]$4" = "xyes"; then
|
|
:; $6
|
|
else
|
|
:; $7
|
|
fi
|
|
AC_LANG_POP($2)
|
|
])
|
|
|
|
dnl CodeWarrior Metrowerks compiler defines __MWERKS__ for both C and C++
|
|
AC_DEFUN([AC_BAKEFILE_PROG_MWCC],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(Metrowerks, C, __MWERKS__, MWCC=yes)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_MWCXX],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(Metrowerks, C++, __MWERKS__, MWCXX=yes)
|
|
])
|
|
|
|
dnl IBM xlC compiler defines __xlC__ for both C and C++
|
|
AC_DEFUN([AC_BAKEFILE_PROG_XLCC],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER([IBM xlC], C, __xlC__, XLCC=yes)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_XLCXX],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER([IBM xlC], C++, __xlC__, XLCXX=yes)
|
|
])
|
|
|
|
dnl recent versions of SGI mipsPro compiler define _SGI_COMPILER_VERSION
|
|
dnl
|
|
dnl NB: old versions define _COMPILER_VERSION but this could probably be
|
|
dnl defined by other compilers too so don't test for it to be safe
|
|
AC_DEFUN([AC_BAKEFILE_PROG_SGICC],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(SGI, C, _SGI_COMPILER_VERSION, SGICC=yes)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_SGICXX],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(SGI, C++, _SGI_COMPILER_VERSION, SGICXX=yes)
|
|
])
|
|
|
|
dnl Sun compiler defines __SUNPRO_C/__SUNPRO_CC
|
|
AC_DEFUN([AC_BAKEFILE_PROG_SUNCC],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(Sun, C, __SUNPRO_C, SUNCC=yes)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_SUNCXX],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(Sun, C++, __SUNPRO_CC, SUNCXX=yes)
|
|
])
|
|
|
|
dnl Intel icc compiler defines __INTEL_COMPILER for both C and C++
|
|
AC_DEFUN([AC_BAKEFILE_PROG_INTELCC],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(Intel, C, __INTEL_COMPILER, INTELCC=yes)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_INTELCXX],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(Intel, C++, __INTEL_COMPILER, INTELCXX=yes)
|
|
])
|
|
|
|
dnl Intel compiler command line options changed in incompatible ways sometimes
|
|
dnl before v8 (-KPIC was replaced with gcc-compatible -fPIC) and again in v10
|
|
dnl (-create-pch deprecated in favour of -pch-create) so we need to test for
|
|
dnl its exact version too
|
|
AC_DEFUN([AC_BAKEFILE_PROG_INTELCC_8],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER_LATER_THAN(Intel, C, __INTEL_COMPILER, 800, 8, INTELCC8=yes)
|
|
])
|
|
AC_DEFUN([AC_BAKEFILE_PROG_INTELCXX_8],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER_LATER_THAN(Intel, C++, __INTEL_COMPILER, 800, 8, INTELCXX8=yes)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_INTELCC_10],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER_LATER_THAN(Intel, C, __INTEL_COMPILER, 1000, 10, INTELCC10=yes)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_INTELCXX_10],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER_LATER_THAN(Intel, C++, __INTEL_COMPILER, 1000, 10, INTELCXX10=yes)
|
|
])
|
|
|
|
dnl HP-UX aCC: see http://docs.hp.com/en/6162/preprocess.htm#macropredef
|
|
AC_DEFUN([AC_BAKEFILE_PROG_HPCC],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(HP, C, __HP_cc, HPCC=yes)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_HPCXX],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(HP, C++, __HP_aCC, HPCXX=yes)
|
|
])
|
|
|
|
dnl Tru64 cc and cxx
|
|
AC_DEFUN([AC_BAKEFILE_PROG_COMPAQCC],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(Compaq, C, __DECC, COMPAQCC=yes)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_COMPAQCXX],
|
|
[
|
|
_AC_BAKEFILE_LANG_COMPILER(Compaq, C++, __DECCXX, COMPAQCXX=yes)
|
|
])
|
|
|
|
dnl ===========================================================================
|
|
dnl macros to detect specialty compiler options
|
|
dnl ===========================================================================
|
|
|
|
dnl Figure out if we need to pass -ext o to compiler (MetroWerks)
|
|
AC_DEFUN([AC_BAKEFILE_METROWERKS_EXTO],
|
|
[AC_CACHE_CHECK([if the _AC_LANG compiler requires -ext o], bakefile_cv_[]_AC_LANG_ABBREV[]_exto,
|
|
dnl First create an empty conf test
|
|
[AC_LANG_CONFTEST([AC_LANG_PROGRAM()])
|
|
dnl Now remove .o and .c.o or .cc.o
|
|
rm -f conftest.$ac_objext conftest.$ac_ext.o
|
|
dnl Now compile the test
|
|
AS_IF([AC_TRY_EVAL(ac_compile)],
|
|
dnl If the test succeeded look for conftest.c.o or conftest.cc.o
|
|
[for ac_file in `(ls conftest.* 2>/dev/null)`; do
|
|
case $ac_file in
|
|
conftest.$ac_ext.o)
|
|
bakefile_cv_[]_AC_LANG_ABBREV[]_exto="-ext o"
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|
|
done],
|
|
[AC_MSG_FAILURE([cannot figure out if compiler needs -ext o: cannot compile])
|
|
]) dnl AS_IF
|
|
|
|
rm -f conftest.$ac_ext.o conftest.$ac_objext conftest.$ac_ext
|
|
]) dnl AC_CACHE_CHECK
|
|
|
|
if test "x$bakefile_cv_[]_AC_LANG_ABBREV[]_exto" '!=' "x"; then
|
|
if test "[]_AC_LANG_ABBREV[]" = "c"; then
|
|
CFLAGS="$bakefile_cv_[]_AC_LANG_ABBREV[]_exto $CFLAGS"
|
|
fi
|
|
if test "[]_AC_LANG_ABBREV[]" = "cxx"; then
|
|
CXXFLAGS="$bakefile_cv_[]_AC_LANG_ABBREV[]_exto $CXXFLAGS"
|
|
fi
|
|
fi
|
|
]) dnl AC_DEFUN
|
|
|
|
|
|
dnl ===========================================================================
|
|
dnl Macros to do all of the compiler detections as one macro
|
|
dnl ===========================================================================
|
|
|
|
dnl check for different proprietary compilers depending on target platform
|
|
dnl _AC_BAKEFILE_PROG_COMPILER(LANG)
|
|
AC_DEFUN([_AC_BAKEFILE_PROG_COMPILER],
|
|
[
|
|
AC_REQUIRE([AC_PROG_$1])
|
|
|
|
dnl Intel compiler can be used under several different OS and even
|
|
dnl different architectures (x86, amd64 and Itanium) so it's easier to just
|
|
dnl always test for it
|
|
AC_BAKEFILE_PROG_INTEL$1
|
|
|
|
dnl If we use Intel compiler we also need to know its version
|
|
if test "$INTEL$1" = "yes"; then
|
|
AC_BAKEFILE_PROG_INTEL$1_8
|
|
AC_BAKEFILE_PROG_INTEL$1_10
|
|
fi
|
|
|
|
dnl if we're using gcc, we can't be using any of incompatible compilers
|
|
if test "x$G$1" != "xyes"; then
|
|
if test "x$1" = "xC"; then
|
|
AC_BAKEFILE_METROWERKS_EXTO
|
|
if test "x$bakefile_cv_c_exto" '!=' "x"; then
|
|
unset ac_cv_prog_cc_g
|
|
_AC_PROG_CC_G
|
|
fi
|
|
fi
|
|
|
|
dnl most of these compilers are only used under well-defined OS so
|
|
dnl don't waste time checking for them on other ones
|
|
case `uname -s` in
|
|
AIX*)
|
|
AC_BAKEFILE_PROG_XL$1
|
|
;;
|
|
|
|
Darwin)
|
|
AC_BAKEFILE_PROG_MW$1
|
|
if test "$MW$1" != "yes"; then
|
|
AC_BAKEFILE_PROG_XL$1
|
|
fi
|
|
;;
|
|
|
|
IRIX*)
|
|
AC_BAKEFILE_PROG_SGI$1
|
|
;;
|
|
|
|
Linux*)
|
|
dnl Sun CC is now available under Linux too, test for it unless
|
|
dnl we already found that we were using a different compiler
|
|
if test "$INTEL$1" != "yes"; then
|
|
AC_BAKEFILE_PROG_SUN$1
|
|
fi
|
|
;;
|
|
|
|
HP-UX*)
|
|
AC_BAKEFILE_PROG_HP$1
|
|
;;
|
|
|
|
OSF1)
|
|
AC_BAKEFILE_PROG_COMPAQ$1
|
|
;;
|
|
|
|
SunOS)
|
|
AC_BAKEFILE_PROG_SUN$1
|
|
;;
|
|
esac
|
|
fi
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_CC],
|
|
[
|
|
_AC_BAKEFILE_PROG_COMPILER(CC)
|
|
])
|
|
|
|
AC_DEFUN([AC_BAKEFILE_PROG_CXX],
|
|
[
|
|
_AC_BAKEFILE_PROG_COMPILER(CXX)
|
|
])
|
|
|