This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [v3] use AM_ICONV
Marco Trudel wrote:
Marco Trudel wrote:
Benjamin Kosnik wrote:
How to disable iconv now? Is it now always required?
Yeah.
Ok, if it's now a requirement, then it should be added to
http://gcc.gnu.org/install/prerequisites.html. Because it isn't there,
I assumed that configure fails detecting if it is available or not.
Also, from http://gcc.gnu.org/install/configure.html:
--with-libiconv-prefix=dir
Search for libiconv header files in dir/include and libiconv library
files in dir/lib
That seems to not be used. I have to do some dirty workarounds that my
cross-libiconv is used. Otherwise I can now compile again.
Oops, this should be able to be used: if not, this is a bug. Also,
--without-libiconv-prefix. I confess, I thought this was picked up in
AM_ICONV.
Really, the goal here was to just re-use the toplevel iconv configure
and make bits instead of libstdc++ rolling it's own thing (and not
really getting it right.)
Is there another flag than --with-libiconv-prefix? For consistency, I
would expect --with-iconv=... (because of --with-gmp=... and
--with-mpfr=...) or is --with-libiconv-prefix currently just "broken"?
I don't think there is a --with-iconv.
I agree, for consistency, it seems like a good idea.
I suppose adding _GLIBCXX_HAVE_ICONV guards in
include/ext/enc_filebuf.h and include/ext/codecvt_specializations.h
may be necessary, or these two files should be dropped from the
extc++.h pre-compiled header file.
Well, if it is a requirement now, I will see that I have it...
It shouldn't really be a requirement though.
The only things that need iconv are GNU C++ extensions, namely
codecvt_specializations.h and enc_filebuf.h. For the normal build
process nothing actually needs iconv. (modulo the extc++.gch building,
which maybe should be changed?)
For testing of the extensions, iconv is necessary, but dg-require-iconv
seems to be taking care of that, so that part is ok.
Really, it seems simple enough to just remove the two files from
include/precompiled/extc++.h, if it will make things easier for people
without iconv.
Thoughts? Thanks for your patience.
-benjamin