Bruno Haible writes: > Arsen Arsenović wrote: >> > * If yes, then the question is how distributors will in general package >> > libintl on AIX. If it's installed in public locations (such as in >> > /opt/freeware/{lib,lib64}/libintl.a on gcc119.fsffrance.org), then we >> > have a problem: It may cause undefined behaviour in multithreaded >> > packages that use GNU libintl. >> > If you can guarantee that it will be installed in GCC-private directories >> > (and outside the path where GCC looks for libraries to link with!) then >> > it would be OK to install such a non-thread-safe libintl. >> > But if you cannot guarantee that, we are in trouble. >> >> The in-tree configuration already passes --disable-shared, so I imagine >> passing --disable-threads would be OK too, for the case that it is >> utilized. (relevant for the latter case: GCC-private build of libintl) > > Yeah, but this affects only those people who use the in-tree build of > the libraries. > > The problem for distributors remains the same: They have a strong tendency > of building libraries indepently, with --enable-shared (so that they can > easily apply fixes without rebuilding the world). These distributors on AIX > would notice that the GCC configuration attempts to link with "-lintl" > but not with "-lintl -pthread" and thus the configuration detects that NLS > is not usable. > > Arsen: Where in the GCC tree is this part of the GCC configuration? Is it > in some configure.ac owned by GCC, or does it come from gettext.m4 ? See Makefile.def. It specifies a host-gettext module that has the extra flags set. If the in-tree configuration is used, then the uninstalled-config.sh gettext generates is used. See config/gettext-sister.m4. gettext.m4 is unaltered, but it is essentially only used when the gettext in-tree source is not present (because, otherwise, gettext-runtime generates uninstalled-config.sh even if it builds nothing) Hope that answers it. > Bruno -- Arsen Arsenović