-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Jeremy Chadwick wrote: > On Sun, Oct 19, 2008 at 06:39:34AM -0700, Jeremy Chadwick wrote: >> On Sun, Oct 19, 2008 at 09:21:18AM -0400, Eitan Adler wrote: >>> -----BEGIN PGP SIGNED MESSAGE----- >>> Hash: SHA1 >>> >>> I have a simple idea to make use the threads without any possibility of >>> conflicts. I am sure there will be someone to point out a negative, but >>> I don't see any. >>> When you do "make install" launch a "make fetch-recursive" thread at the >>> same time. That way you don't need to wait for the files to >>> install->fetch the next one->install it->fetch the next one... >>> For those who don't want that you could get the old behavior with "make >>> onlyinstall". I currently do this with a "make" wrapper script and I >>> find installation to be faster. >> What about this scenario? >> >> # cd /usr/ports/friendly/apes >> # make install >> >> <forked copy of 'make fetch-recursive' is launched in background> >> <fetch for friendly/apes finishes, "make" starts> >> <"make" finds a dependency which isn't installed, friendly/dogs> >> <"make" begins to build friendly/dogs, but friendly/dogs is still being >> downloaded from fetch-recursive, because the source is very large; >> say, 30MBytes> >> <"make" for friendly/dogs forks another fetch-recursive......> >> >> What I'm trying to say is, there would need to be mechanisms put in >> place to cause the entire build process to block (halt/pause) until the >> backgrounded fetch-recursive has completed. > > And I forgot another scenario: > > Let's say you've added perl as a package, e.g. pkg_add -r perl, and > now you're going to build a program that's dependent upon it. > > One of the known problems with ports/pkg "stuff" is that in the above > scenario, fetch and fetch-recursive will download a copy of the source > for perl (when detected as a dependency for something), which ultimately > serves zero purpose. This doesn't happen when simply doing "make" or > "make install". If you use packages/ports and you don't want to download the perl source in this case you would use make onlyinstall. Perhaps instead there could be a make fetchinstall or make fastinstall for this type of thing. > > More food for thought. >
- -- GNU Key fingerptrint: 2E13 BC16 5F54 0FBD 62ED 42B6 B65F 24AB E9C2 CCD1 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (FreeBSD) iEYEARECAAYFAkj7SuEACgkQtl8kq+nCzNH46ACghp90QtCuI/j6qHCYrNMfr7HU khUAn0Qmo97KliIGacXKTsybmDQKCwUd =tFfI -----END PGP SIGNATURE----- _______________________________________________ freebsd-ports@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "[EMAIL PROTECTED]"