added dependencies support for DEC/Compaq/HP cxx compiler (new bakefile files; regenerated configure)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35837 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2005-10-08 15:33:10 +00:00
parent d368dbeaef
commit a1aa0349f8
3 changed files with 436 additions and 236 deletions

View File

@@ -42,14 +42,14 @@ AC_LANG_POP(C++)
dnl Based on autoconf _AC_LANG_COMPILER_GNU
AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER_XLC],
[AC_CACHE_CHECK([whether we are using the IBM xlC _AC_LANG compiler],
[wx_cv_[]_AC_LANG_ABBREV[]_compiler_xlc],
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_xlc],
[AC_TRY_COMPILE([],[#ifndef __xlC__
choke me
#endif
],
[wx_compiler_xlc=yes],
[wx_compiler_xlc=no])
wx_cv_[]_AC_LANG_ABBREV[]_compiler_xlc=$wx_compiler_xlc
[bakefile_compiler_xlc=yes],
[bakefile_compiler_xlc=no])
bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_xlc=$bakefile_compiler_xlc
])
])
@@ -57,7 +57,7 @@ dnl Loosely based on autoconf AC_PROG_CC
AC_DEFUN([AC_BAKEFILE_PROG_XLCC],
[AC_LANG_PUSH(C)
_AC_BAKEFILE_LANG_COMPILER_XLC
XLCC=`test $wx_cv_c_compiler_xlc = yes && echo yes`
XLCC=`test $bakefile_cv_c_compiler_xlc = yes && echo yes`
AC_LANG_POP(C)
])
@@ -65,7 +65,7 @@ dnl Loosely based on autoconf AC_PROG_CXX
AC_DEFUN([AC_BAKEFILE_PROG_XLCXX],
[AC_LANG_PUSH(C++)
_AC_BAKEFILE_LANG_COMPILER_XLC
XLCXX=`test $wx_cv_cxx_compiler_xlc = yes && echo yes`
XLCXX=`test $bakefile_cv_cxx_compiler_xlc = yes && echo yes`
AC_LANG_POP(C++)
])
@@ -144,13 +144,24 @@ 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], wx_cv_[]_AC_LANG_ABBREV[]_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
@@ -161,7 +172,7 @@ 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)
wx_cv_[]_AC_LANG_ABBREV[]_exto="-ext o"
bakefile_cv_[]_AC_LANG_ABBREV[]_exto="-ext o"
;;
*)
;;
@@ -173,12 +184,12 @@ done],
rm -f conftest.$ac_ext.o conftest.$ac_objext conftest.$ac_ext
]) dnl AC_CACHE_CHECK
if test "x$wx_cv_[]_AC_LANG_ABBREV[]_exto" '!=' "x"; then
if test "x$bakefile_cv_[]_AC_LANG_ABBREV[]_exto" '!=' "x"; then
if test "[]_AC_LANG_ABBREV[]" = "c"; then
CFLAGS="$wx_cv_[]_AC_LANG_ABBREV[]_exto $CFLAGS"
CFLAGS="$bakefile_cv_[]_AC_LANG_ABBREV[]_exto $CFLAGS"
fi
if test "[]_AC_LANG_ABBREV[]" = "cxx"; then
CXXFLAGS="$wx_cv_[]_AC_LANG_ABBREV[]_exto $CXXFLAGS"
CXXFLAGS="$bakefile_cv_[]_AC_LANG_ABBREV[]_exto $CXXFLAGS"
fi
fi
]) dnl AC_DEFUN
@@ -198,7 +209,7 @@ AC_DEFUN([_AC_BAKEFILE_PROG_COMPILER],
if test "x$G$1" != "xyes"; then
if test "x$1" = "xC"; then
AC_BAKEFILE_METROWERKS_EXTO
if test "x$wx_cv_c_exto" '!=' "x"; then
if test "x$bakefile_cv_c_exto" '!=' "x"; then
unset ac_cv_prog_cc_g
_AC_PROG_CC_G
fi
@@ -220,13 +231,17 @@ AC_DEFUN([_AC_BAKEFILE_PROG_COMPILER],
AC_BAKEFILE_PROG_SGI$1
;;
SunOS)
AC_BAKEFILE_PROG_SUN$1
;;
HP-UX*)
AC_BAKEFILE_PROG_HP$1
;;
OSF1)
AC_BAKEFILE_PROG_COMPAQ$1
;;
SunOS)
AC_BAKEFILE_PROG_SUN$1
;;
esac
fi
])

View File

@@ -318,7 +318,7 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD],
dnl If using newer dev tools then there is a -single_module flag that
dnl we can use to do this, otherwise we'll need to use a helper
dnl script. Check the version of gcc to see which way we can go:
AC_CACHE_CHECK([for gcc 3.1 or later], wx_cv_gcc31, [
AC_CACHE_CHECK([for gcc 3.1 or later], bakefile_cv_gcc31, [
AC_TRY_COMPILE([],
[
#if (__GNUC__ < 3) || \
@@ -327,14 +327,14 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD],
#endif
],
[
wx_cv_gcc31=yes
bakefile_cv_gcc31=yes
],
[
wx_cv_gcc31=no
bakefile_cv_gcc31=no
]
)
])
if test "$wx_cv_gcc31" = "no"; then
if test "$bakefile_cv_gcc31" = "no"; then
AC_BAKEFILE_CREATE_FILE_SHARED_LD_SH
chmod +x shared-ld-sh
@@ -547,6 +547,10 @@ AC_DEFUN([AC_BAKEFILE_DEPS],
DEPSMODE=unixcc
DEPSFLAG="+make"
AC_MSG_RESULT([HP cc])
elif test "x$COMPAQCC" = "xyes"; then
DEPSMODE=gcc
DEPSFLAG="-MD"
AC_MSG_RESULT([Compaq cc])
else
DEPS_TRACKING=0
AC_MSG_RESULT([none])
@@ -1275,7 +1279,12 @@ if test ${D}DEPSMODE = gcc ; then
sed -e "s,${D}depobjname:,${D}objfile:,g" ${D}depfile >${D}{DEPSDIR}/${D}{objfile}.d
rm -f ${D}depfile
else
# "g++ -MMD -o fooobj.o foosrc.cpp" produces fooobj.d
depfile=\`basename ${D}objfile | sed -e 's/\\..*${D}/.d/g'\`
if test ! -f ${D}depfile ; then
# "cxx -MD -o fooobj.o foosrc.cpp" creates fooobj.o.d (Compaq C++)
depfile="${D}objfile.d"
fi
if test -f ${D}depfile ; then
sed -e "/^${D}objfile/!s,${D}depobjname:,${D}objfile:,g" ${D}depfile >${D}{DEPSDIR}/${D}{objfile}.d
rm -f ${D}depfile