espie
d8408ea93f
fix a long-standing stupid bug. Now I know why weight changes didn't matter,
...
I wasn't passing them through, sigh.
Add new -X option that sets xpaths, to be used...
2013-01-07 10:57:31 +00:00
espie
6f42ba6110
document asynchrony in engine.log
2013-01-06 18:21:52 +00:00
espie
7906ac8797
if I run into lockfiles that don't contain the requisite dpb property,
...
just hold on until they're there.
Should happen right away, so easy to spot !
2013-01-06 14:38:14 +00:00
espie
8a23d3ca7e
ask the ports tree to clean up stale locks, finally...
2013-01-06 11:59:40 +00:00
espie
3468bf1fd7
allow unlock to be called with SUBDIR=
2013-01-06 11:57:21 +00:00
espie
a8dab3a559
perl's gc doesn't play well with filehandles.
...
So explicitly close what it will have problems tracking...
problem noticed by sthen@, obviously linked to my previous change to
avoid opening the same log file again and again...
2013-01-05 23:38:08 +00:00
espie
a323bb36ea
better
2013-01-05 21:48:50 +00:00
espie
c1c2864b82
give every task a "name".
2013-01-05 21:48:18 +00:00
espie
fe8936deab
even if we've got pre-empted, we still have to lock.
...
otherwise, we're going to unlock something we don't own, which might
be a race.
2013-01-05 20:08:39 +00:00
espie
a5eeeec19c
store information about live dependencies in dpb proper, to avoid
...
synchronization issues with external fs...
the external locks are still used to synchronize with other dpbs running
2013-01-05 20:06:29 +00:00
espie
7184d32670
retrieve the lists of paths locked per-host from the old lock scanner,
...
to eventually be able to clean them in init.
2013-01-05 19:59:43 +00:00
espie
209b83159b
allow independent setup for the locks location. I strongly suggest
...
using a local fs.
2013-01-05 18:26:31 +00:00
espie
ba6937b81c
and put serialize next to the code it protects
...
(again, no actual code change)
2013-01-05 18:09:30 +00:00
espie
a18e4e7af2
move install out of the way (no code change)
2013-01-05 18:08:06 +00:00
espie
b159503365
log junk lock handling
2013-01-05 17:29:14 +00:00
espie
82fbc0e7fd
avoid opening filehandle again and again.
...
also, close STDERR after the STDOUT stuff was done, so that we get
error messages otherwise!
2013-01-05 17:22:04 +00:00
espie
ed58c56937
move the "running prepare" message up to handle_output, so that *every*
...
phase gets tagged.
2013-01-05 16:57:31 +00:00
espie
97912f877b
thought I had done this already:
...
don't blindly append to history, but recreate it from scratch.
We need to remove lines corresponding to stuff that vanished at some
point but came back later!
2013-01-05 16:10:18 +00:00
espie
779bfd4ae7
fix typo
2013-01-05 15:13:48 +00:00
espie
96eed0203f
crank factors up to 150, so that dpb consumes a bit less cpu yet.
2013-01-05 13:39:36 +00:00
espie
116acde577
change to NO_HISTORY and document (since there are other NO_* thingies)
2013-01-05 13:34:28 +00:00
espie
85b554d119
make it possible to skip "UPDATING DISTFILES" if we're just running dpb
...
again without any change.
2013-01-05 13:32:28 +00:00
espie
492a2898b1
fix thinko.
...
as noticed by
Mikolaj Kucharski.
2013-01-05 07:01:44 +00:00
espie
df5a288315
make sure we zap any lingering socket before we restart our master.
2013-01-04 21:19:18 +00:00
espie
a9b8de6833
switch to IO::File and explicit flush for the engine log.
...
should be slightly faster
2013-01-04 19:34:10 +00:00
espie
d606cc382f
another half-baked change
2013-01-04 18:49:39 +00:00
espie
9eb2e2c9df
fix typo. Symptom: errors out at end of build
...
noticed by rpe@
2013-01-04 18:29:13 +00:00
espie
5b5a52a451
synch manpage with reality
2013-01-04 12:56:26 +00:00
espie
7c00e154b6
... and don't forget to propagate it thru
2013-01-04 12:49:06 +00:00
espie
9a2e664c54
force report display to fire whenever some new ports get built.
2013-01-04 12:46:20 +00:00
espie
9612257de1
tweak limiter output some more. offset display is not really needed,
...
but knowing about force computes might.
2013-01-04 12:45:44 +00:00
espie
66ec642cc7
remove unneeded scaffold
2013-01-04 12:34:29 +00:00
espie
9d015892e8
document new exhaustive rate-limiting
2013-01-04 12:16:51 +00:00
espie
a1d376fbf6
take the rate-limiting concept used for the engine, and make it available
...
elsewhere. Also use it for the Reporter, as it makes no sense to spend
THAT much time reporting quick changes, which actually slows the build.
($factor to tweak as needed).
2013-01-04 12:06:25 +00:00
espie
3db19612eb
forgot that one commit for nojunk. Oops
2013-01-04 12:03:06 +00:00
espie
5e21b7b72c
explain rationale and working of unjunk
2013-01-03 22:52:01 +00:00
espie
d17cfb86a3
tweak the Engine some more: don't bother adjusting distfiles in a loop
...
while dependencies are missing
Following landry's remark, also take packages to build out of the race
if some RUN_DEPENDS are going to be ignored. Only do it right before we
put the package in the queue, so that the test is run exactly once per
package instead of during every scan.
I was also worried about multi-packages, but this only takes one fullpkgpath
out of the loop, and "make package" is going to fail half-way through anyways.
2013-01-03 15:47:45 +00:00
espie
de678efd4a
add support for unjunk property, that will prevent junking from actually
...
happening while some 'unjunk' ports are building.
this is a work-around for a known problem with cmake and qt4 include
dependency handlers...
Also, cache fullpkgpath while building a job, as this contributes for
a large part to the speed (not) of the display when building lots of
ports.
2013-01-03 15:45:18 +00:00
espie
c39d9434ff
fix infamous "doesn't really quit when it's done" stop bug.
...
also move the report to the main package, and show a prominent
STOPPED in the title bar if you forget you stopped it during a
previous run ('why is my dpb not building anything ?')
2013-01-03 15:43:27 +00:00
espie
59ee0568e8
stats are comparatively cheap, run them even when the engine doesn't run.
...
Yields more accurate stat output, where we can see a staircase effect on
the queue when the engine is run not that often, and Built actually go
up until it goes back down again.
2013-01-02 11:13:52 +00:00
espie
f86dbb772a
allow overriding the start-up script from the command line.
2012-12-31 09:50:55 +00:00
espie
092496c30a
following landry's suggestion, add module hooks for post-install
...
I'm not too happy about stuff that will remove .la automatically though,
seems to me this shouldn't be generated in the first place.
ETOOMUCHMAGIC ?
2012-12-31 09:14:07 +00:00
espie
61c2611d5c
document extra log files...
2012-12-31 08:29:31 +00:00
espie
dcf231188f
forgot to GC this along with the imake weirdness.
...
seen by landry@
2012-12-30 20:40:40 +00:00
espie
d985cc05e2
mismatches are more annoying than extra cpu:
...
if we end up with only mismatches and we didn't run check_buildable last
time around, try a check_buildable first.
2012-12-30 14:33:46 +00:00
espie
45b128b893
fix elusive "jobs don't show up where they should".
...
duh. put "live" affinity markers while we're building stuff.
We don't re-read the on-disk markers outside of restart (should we ?)
so they HAVE to be in the pkgpath struct proper.
2012-12-30 14:04:17 +00:00
espie
eb77a6071b
why not ? track total distsize for each port. might correlate with other
...
stuff later.
2012-12-30 11:47:24 +00:00
espie
ad8ad1c28f
smarter affinity mismatch handling: if we have other cores idle, ask them.
...
also, officialize the engine-perf log somewhat (and give it a more descriptive
name).
2012-12-29 19:15:37 +00:00
espie
fa169c69ae
allow looking for a given core when trying to match affinity
2012-12-29 19:14:51 +00:00
espie
ebb2a2c90a
on start-up, log affinity in a more consistent way, with pid of running dpb.
2012-12-29 19:14:28 +00:00