Do not run 'make install' in parallel in GCC.

Signed-off-by: Alexey Neyman <stilor@att.net>
This commit is contained in:
Alexey Neyman 2016-11-09 16:46:01 -08:00
parent 23e9a03a3f
commit f4c7688946

View File

@ -696,8 +696,16 @@ do_gcc_core_backend() {
CT_DoLog EXTRA "Building ${log_txt}"
CT_DoExecLog ALL ${make} ${JOBSFLAGS} ${core_targets_all}
# Do not pass ${JOBSFLAGS} here: recent GCC builds have been failing
# in parallel 'make install' at random locations: libitm, libcilk,
# always for the files that are installed more than once to the same
# location (such as libitm.info).
# The symptom is that the install command fails with "File exists"
# error; running the same command manually succeeds. It looks like
# attempts to remove the destination and re-create it, but another
# install gets in the way.
CT_DoLog EXTRA "Installing ${log_txt}"
CT_DoExecLog ALL ${make} ${JOBSFLAGS} ${core_targets_install}
CT_DoExecLog ALL ${make} ${core_targets_install}
# Remove the libtool "pseudo-libraries": having them in the installed
# tree makes the libtoolized utilities that are built next assume
@ -1128,11 +1136,12 @@ do_gcc_backend() {
CT_DoLog EXTRA "Building final gcc compiler"
CT_DoExecLog ALL ${make} ${JOBSFLAGS} all
# See the note on issues with parallel 'make install' in GCC above.
CT_DoLog EXTRA "Installing final gcc compiler"
if [ "${CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES}" = "y" ]; then
CT_DoExecLog ALL ${make} ${JOBSFLAGS} install-strip
CT_DoExecLog ALL ${make} install-strip
else
CT_DoExecLog ALL ${make} ${JOBSFLAGS} install
CT_DoExecLog ALL ${make} install
fi
# Remove the libtool "pseudo-libraries": having them in the installed