[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GNU Libtool 1.5.8 released.
From: |
Peter O'Gorman |
Subject: |
Re: GNU Libtool 1.5.8 released. |
Date: |
Thu, 12 Aug 2004 13:13:34 +0900 |
User-agent: |
Mozilla Thunderbird 0.6 (Macintosh/20040502) |
Joe Orton wrote:
On Wed, Aug 11, 2004 at 02:27:00AM +0900, Peter O'Gorman wrote:
Bob Friesenhahn wrote:
It has been reported a number of times, and I believe I expressed on the
list that this was the single most significant bug related to libtool 1.5.
This should fix it. Please confirm.
As I understood it the only fix is to not use AC_PROG_CXX at all (i.e.
require AC_LIBTOOL_TAGS), since that macro always sets CXX = g++ in the
case where it can't find a C++ compiler. So with your patch, I still
get the same failure:
There's always more than one way to skin a cat.
I tried this without a c++ compiler, and with g++, it bootstrapped and
passed all tests both times.
If Joe (or someone else) confirms it works, okay to apply?
Peter
--
Peter O'Gorman - http://www.pogma.com
Index: ChangeLog
2004-08-12 Peter O'Gorman <address@hidden>
* configure.ac, libtool.m4: Ensure that a c++ compiler exists before
checking for the c++ preprocessor. Apparently reported by multiple
people, multiple times.
Index: configure.ac
===================================================================
RCS file: /cvsroot/libtool/libtool/configure.ac,v
retrieving revision 1.14.2.13
diff -u -3 -p -u -r1.14.2.13 configure.ac
--- configure.ac 7 Aug 2004 14:03:38 -0000 1.14.2.13
+++ configure.ac 11 Aug 2004 22:33:51 -0000
@@ -104,7 +104,10 @@ AC_PROG_LN_S
pushdef([AC_MSG_ERROR], [CXX=no])
AC_PROG_CXX
popdef([AC_MSG_ERROR])
-AM_CONDITIONAL(HAVE_CXX, [test "x$CXX" != xno])
+AM_CONDITIONAL(HAVE_CXX,
+[test -n "$CXX" && ( test "X$CXX" != "Xno" &&
+ ((test "X$CXX" = "Xg++" && `g++ -v >& /dev/null` ) ||
+ (test "X$CXX" != "Xg++")))])
pushdef([AC_MSG_ERROR], [F77=no])
AC_PROG_F77
Index: libtool.m4
===================================================================
RCS file: /cvsroot/libtool/libtool/Attic/libtool.m4,v
retrieving revision 1.314.2.46
diff -u -3 -p -u -r1.314.2.46 libtool.m4
--- libtool.m4 4 Aug 2004 14:12:05 -0000 1.314.2.46
+++ libtool.m4 11 Aug 2004 22:33:58 -0000
@@ -1688,7 +1688,9 @@ if test -f "$ltmain" && test -n "$tagnam
case $tagname in
CXX)
- if test -n "$CXX" && test "X$CXX" != "Xno"; then
+ if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
+ ((test "X$CXX" = "Xg++" && `g++ -v >& /dev/null` ) ||
+ (test "X$CXX" != "Xg++"))) ; then
AC_LIBTOOL_LANG_CXX_CONFIG
else
tagname=""
@@ -2432,10 +2434,21 @@ AC_DEFUN([AC_LIBTOOL_CXX],
# ---------------
AC_DEFUN([_LT_AC_LANG_CXX],
[AC_REQUIRE([AC_PROG_CXX])
-AC_REQUIRE([AC_PROG_CXXCPP])
+AC_REQUIRE([_LT_AC_PROG_CXXCPP])
_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX])
])# _LT_AC_LANG_CXX
+# _LT_AC_PROG_CXXCPP
+# ---------------
+AC_DEFUN([_LT_AC_PROG_CXXCPP],
+[
+AC_REQUIRE([AC_PROG_CXX])
+if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
+ ((test "X$CXX" = "Xg++" && `g++ -v >& /dev/null` ) ||
+ (test "X$CXX" != "Xg++"))) ; then
+ AC_PROG_CXXCPP
+fi
+])# _LT_AC_PROG_CXXCPP
# AC_LIBTOOL_F77
# --------------
@@ -2600,7 +2613,7 @@ AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [
AC_DEFUN([_LT_AC_LANG_CXX_CONFIG],
[AC_LANG_PUSH(C++)
AC_REQUIRE([AC_PROG_CXX])
-AC_REQUIRE([AC_PROG_CXXCPP])
+AC_REQUIRE([_LT_AC_PROG_CXXCPP])
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_AC_TAGVAR(allow_undefined_flag, $1)=