Date: Thu, 27 Mar 2014 20:44:58 +0100 From: Dimitry Andric <dim@FreeBSD.org> To: Jilles Tjoelker <jilles@stack.nl> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Warner Losh <imp@bsdimp.com> Subject: Re: svn commit: r263778 - in head: bin lib lib/clang sbin share/mk usr.bin usr.sbin Message-ID: <7A86F5E9-DBE9-4D3F-B166-C02F8386B722@FreeBSD.org> In-Reply-To: <20140327181245.GA69977@stack.nl> References: <201403262230.s2QMUdH6021943@svn.freebsd.org> <AA90F6B0-3A7A-473D-82C2-CFDFD263E9AC@gmail.com> <20140327181245.GA69977@stack.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_4ABB0343-EB17-4279-B172-D88A99B7369C Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On 27 Mar 2014, at 19:12, Jilles Tjoelker <jilles@stack.nl> wrote: > On Thu, Mar 27, 2014 at 11:05:00AM -0600, Warner Losh wrote: >> On Mar 26, 2014, at 4:30 PM, Dimitry Andric <dim@freebsd.org> wrote: >>> Author: dim >>> Date: Wed Mar 26 22:30:38 2014 >>> New Revision: 263778 >>> URL: http://svnweb.freebsd.org/changeset/base/263778 >=20 >>> Log: >>> Add a SUBDIR_PARALLEL option to bsd.subdir.mk, to allow make to = process >>> all the SUBDIR entries in parallel, instead of serially. Apply this >>> option to a selected number of Makefiles, which can greatly speed up = the >>> build on multi-core machines, when using make -j. >=20 >>> This can be extended to more Makefiles later on, whenever they are >>> verified to work correctly with parallel building. >=20 >> Why not have this =91opt out=92 rather than =91opt in=92 like it is = now? Are >> there any known bad dependencies this introduces? >=20 > I'm paranoid about build systems ;) It is easy to add dependencies > across directories and as long as directories are built in sequence, > nothing goes wrong. >=20 > In fact, I had enabled SUBDIR_PARALLEL in sys/modules/Makefile as = well, > but this caused mysterious failures with some kernels such as mips > ADM5120. There are a bunch of other parts that don't really like parallel builds at the moment. For example, gnu/usr.bin/binutils needs its libraries (libbfd.a, etc) built first, before it can link the programs. Similar for gnu/usr.bin/cc, which needs libiberty, libcpp, etc before being able to build the rest of gcc. Most of these cases can hopefully be solved by adding .WAIT targets at strategic points in the SUBDIR lists, but this also needs a bit of extra logic in bsd.subdir.mk. -Dimitry =20 --Apple-Mail=_4ABB0343-EB17-4279-B172-D88A99B7369C Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.22 (Darwin) iEYEARECAAYFAlM0f8sACgkQsF6jCi4glqOTfQCaAkGJu5927wUpXeC6pdZVbRpN wBQAoMvQEgXk7FN66EWB0z2vlxDcabyC =DEBK -----END PGP SIGNATURE----- --Apple-Mail=_4ABB0343-EB17-4279-B172-D88A99B7369C--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7A86F5E9-DBE9-4D3F-B166-C02F8386B722>