This is the mail archive of the
mailing list for the GCC project.
Re: PATCH: Fix libcpp configury/portability issue
- From: Gerald Pfeifer <gerald at pfeifer dot com>
- To: Zack Weinberg <zack at codesourcery dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Thu, 4 Nov 2004 16:00:22 +0100 (CET)
- Subject: Re: PATCH: Fix libcpp configury/portability issue
- References: <Pine.BSF.firstname.lastname@example.org><email@example.com> <Pine.BSF.firstname.lastname@example.org><email@example.com> <Pine.BSF.firstname.lastname@example.org><email@example.com> <Pine.BSF.firstname.lastname@example.org><email@example.com>
On Sun, 31 Oct 2004, Zack Weinberg wrote:
There are no inclusions of libcpp/internal.h anywhere in gcc/java (nor
should there be - any use of that header outside of cpplib is a bug).
And my patch has exactly the same effect as yours, it's just more
readable. Thus I am inclined to think that this must be an unrelated
After some debugging, I believe you are right.
Definitely. This is a complete and utter mess: two config.h files
plus auto-host.h, all containing definitions of HAVE_ICONV and
HAVE_ICONV_H (though not all have both and the latter even is not
consistent) is a software engineering nightmare.
I think maybe we should do with iconv.h what we already do with
libintl - have the intl directory determine the answer, and everyone
else just defers to that.
That seems like an excellent plan. Will you be able to work on that
For now, okay to commit the following patch, which is based on your
suggestions and passed bootstrap on i386-unknown-freesbsd4.10 as well
2004-11-04 Zack Weinberg <firstname.lastname@example.org>
Gerald Pfeifer <email@example.com>
* internal.h (HAVE_ICONV): Undefine if we do not have
HAVE_ICONV_H as well.
RCS file: /cvs/gcc/gcc/libcpp/internal.h,v
retrieving revision 1.7
diff -u -3 -p -r1.7 internal.h
--- internal.h 9 Sep 2004 19:16:55 -0000 1.7
+++ internal.h 31 Oct 2004 05:41:27 -0000
@@ -26,7 +26,11 @@ Foundation, 59 Temple Place - Suite 330,
-#if defined HAVE_ICONV_H && defined HAVE_ICONV
#define HAVE_ICONV 0