Some general observations: * There are various toplevel GCC subdirectories that are built for the host (possibly in addition to the target in some cases) but aren't changed in this patch. Do they get a PIE or PIC build anyway by default? Such directories include, I think: fixincludes (as a corner case, for the installed fixincludes), gmp, mpfr, mpc, isl (host libraries whose configure scripts aren't part of GCC, so any changes to ensure they build as PIE when needed would need to be at top level), intl, libbacktrace, libiberty, gnattools, gotools.
(Using a bootstrap compiler that *doesn't* default to PIE might help detect any such issues, though only for directores that get built for the host in that build - some may not get built by default.) For directories that are only used as host libraries but don't install any executables, even if this patch needs additions the -z now one shouldn't. * I don't see anything obvious here (or for the existing --enable-host-shared) that actually causes the configure option to apply only to the host and not to the target, in the case of subdirectories such as libbacktrace that get built for both host and target. (Though static target libraries may well default to PIC in many cases anyway.) -- Joseph S. Myers jos...@codesourcery.com