espie
3ca05b12fe
replace next_check = last_check + check_interval
...
tweak the algorithm slightly (since we forget the old check_interval).
In particular, never keep old times in reserve.
Makes for simpler and clearer reading
2012-12-27 16:23:17 +00:00
espie
e293bae75a
remove the need to loop around adjust_tobuild, fudge things a bit:
...
Most things will move as a result of {install} changes.
Things that move because of EXTRA depends that are satisfied are unlikely to trigger
further changes.
So, stagger changes for "normal" tobuild -> queue first, and extra depends later.
2012-12-27 14:14:19 +00:00
espie
99ac03e94d
oops
2012-12-27 12:20:36 +00:00
espie
fc5ee33b62
add timestamp in phases for Job/Port.pm.
...
may help synchronize events from distinct logs in case this matters.
2012-12-27 12:03:33 +00:00
espie
7614ffa97a
remove 'dead' cycles: changes in ToBuild can't trigger new changes in Built.
2012-12-27 11:04:43 +00:00
espie
98849d8242
self-adaptive delay... with a bit of log scaffolding for now.
2012-12-25 20:41:41 +00:00
espie
67de0deb11
if we have a sizeable queue (>50) and we ran check_buildable less than 30s
...
ago, don't run it again right now.
This prevents the Engine from busy-checking the same data when it's building
lots of small packages very fast.
(50 and 30 may need some fine-tuning)
2012-12-25 16:07:02 +00:00
espie
11cb77656d
make "rebuild" behavior a proper subclass of DPB::PortBuilder, instead
...
of having tests all over the place.
Take advantage of that to not rechecking signatures if already done.
2012-12-25 10:43:36 +00:00
espie
66b2639394
compute dependencies right away in the job: we don't actually have to
...
fork depends/prepare/prepare-results for ports which don't have any
depends.
This also prevents some lock contention, obviously.
2012-12-25 10:25:04 +00:00
espie
1af810c8d6
on rebuild, mark all existing files as 'uptodate'. Will prevent extra
...
rebuilds on @option always-update multi-packages when using -R.
2012-12-25 10:00:08 +00:00
espie
3de193b931
also take things off the later list if they were there. Prevents behavior
...
like the following:
14426@1356424364: B: x11/kde/graphics3
14426@1356424364: B: x11/kde/graphics3,-kpov
14426@1356424364: B: x11/kde/graphics3,-kamera
14426@1356424364: B: x11/kde/graphics3,-sane
14426@1356424364: B: x11/kde/graphics3,-main
14426@1356424364: V: x11/kde/graphics3,-kpov <--- note put back on queue
14426@1356424364: V: x11/kde/graphics3
14426@1356424364: V: x11/kde/graphics3,-kamera
14426@1356424364: I: x11/kde/graphics3,-sane
14426@1356424364: I: x11/kde/graphics3
14426@1356424364: I: x11/kde/graphics3,-kamera
14426@1356424364: I: x11/kde/graphics3,-main
14426@1356424366: J: graphics/povray echo.home 0
14426@1356424496: B: devel/goffice
14426@1356424496: I: devel/goffice
14426@1356424496: Q: math/gnumeric
14426@1356424498: B: x11/kde/graphics3 <--- so, duh rebuilt...
14426@1356424498: B: x11/kde/graphics3,-main
14426@1356424498: B: x11/kde/graphics3,-kamera
14426@1356424498: B: x11/kde/graphics3,-sane
14426@1356424498: J: graphics/opencv,-docs echo.home 0
14426@1356424675: B: graphics/povray
14426@1356424675: I: x11/kde/graphics3,-sane
14426@1356424675: I: graphics/povray
14426@1356424675: I: x11/kde/graphics3 <-- and installable, again.
14426@1356424675: I: x11/kde/graphics3,-kpov
14426@1356424675: I: x11/kde/graphics3,-kamera
14426@1356424675: I: x11/kde/graphics3,-main
2012-12-25 09:46:24 +00:00
espie
130df9a3bc
will work better with a non-reversed test...
2012-12-25 09:31:54 +00:00
espie
e4c671527c
add affinity information to restart jobs on the right host preferentially.
...
- affinity info is similar to locks, but with a completely different
lifetime.
- streamline the main loop of the engine, so that it can do two passes:
first pass shuns paths with the wrong affinity. If no good path is found,
those are considered during the second pass.
- make the Core factory aware of what hosts might be running, so that
affinity info for machines removed from a config file will be ignored.
thanks to landry@ for a few tests.
2012-12-24 17:24:46 +00:00
espie
0ff5bc966a
be slightly more aggressive when a pkgpath is done: for multi-packages,
...
zap all subpackages from the queue.
need to distinguish the normal case (is_done) with a simpler case
(is_done_quick) that's used when scanning the ports tree. Otherwise, we
would check multi-packages loads of time.
2012-12-24 17:22:15 +00:00
espie
c4f1bfc74e
reorg the tests slightly, no functional change
2012-12-24 17:19:01 +00:00
espie
027e6592d6
testing option
2012-12-23 13:28:55 +00:00
espie
cdb441ddb5
cutdate is first parameter, not second.
...
tighten parenthesis.
add -h history for testing.
2012-12-23 13:27:08 +00:00
espie
25bc62ba46
quicker restart: when adding a new_path, directly check whether it
...
was built already... so things will go straight to B/I instead of
getting through T/Q...
less noise in engine.log, and much more accurate information for choosing
queue items.
2012-12-21 12:26:16 +00:00
naddy
ee869d0426
do not define ac_cv_func_openpty=no since it breaks this idiom:
...
AC_CHECK_LIB(util, openpty)
AC_CHECK_FUNCS(openpty)
2012-12-08 14:32:29 +00:00
naddy
8ac927d997
we now have the Unix 98 PTY functions; noticed by ajacoutot@
2012-12-07 15:15:32 +00:00
florian
93a80502d7
+dnsfilter
2012-12-04 16:29:26 +00:00
jasper
6cc72db009
layout of ftp.belnet.be changed; adjust MASTER_SITE_GNOME accordingly
2012-12-02 19:20:46 +00:00
miod
aec30b0bda
m88k ports now use gcc 3; ok espie@
2012-12-01 21:12:28 +00:00
espie
c1c86bf73d
be a bit more specific in _SOLVING_DEP, so that ports that regress-depend
...
on themselves won't clean themselves when BULK=Auto.
problem reported by sthen@, okay sthen@
2012-11-27 11:35:57 +00:00
pascal
efbbb4e0ba
Reserve _wesnothd user/group.
2012-11-20 15:05:44 +00:00
sthen
54fe7aeb13
+spiped
2012-11-19 22:14:31 +00:00
espie
40d8555822
fix reverted lock logic. From Vadim Zhukov.
2012-11-19 14:19:35 +00:00
espie
eef2946135
add a new value for BULK and use it as default:
...
BULK=auto will invoke bulk behavior on dependencies, but not during
normal build.
(internally, deps have _SOLVING_DEP=yes, so we can distinguish them)
okay ajacoutot@
2012-11-19 12:24:50 +00:00
espie
e009da097e
remove some old cruft
...
checked by naddy@ for no incidence on current builds
2012-11-19 12:19:30 +00:00
espie
ba8f355da8
more descriptive name
2012-11-18 12:37:21 +00:00
espie
440719fdce
fix clean + check for packages interaction
2012-11-18 01:59:31 +00:00
espie
7fafb5c793
allow for -DWAIT_TIMEOUT=0 to propagate correctly
...
lower default for junk
2012-11-18 01:58:36 +00:00
brad
655424c0b1
Sync with git
...
ok sthen@
2012-11-15 08:31:36 +00:00
dcoppa
46f826992d
Add "native-sigpending: permit" to avoid warnings from systrace now
...
that make(1) uses this function.
ok espie@
2012-11-12 10:55:17 +00:00
espie
c2ac425fce
multiplication doesn't work on undefined values... noticed by naddy@
...
so initialize $job->{waiting} if needed.
2012-11-09 17:49:17 +00:00
espie
d73a931704
don't mix up wait_timeout and waiting_timeout, as noticed by naddy@.
...
re-enable wait_timeout on localhost temporarily (should be done in another
way, most probably by checking whether repo is on nfs, we can steal code
from VStat.pm)
pass umask through ssh. This took us long enough to figure out, and it's
considerably simpler than tweaking every login class once again.
2012-11-06 08:26:29 +00:00
espie
3d3c336bb7
waive the other xenocara check if we're building it, as noticed by naddy.
2012-11-05 20:29:35 +00:00
espie
35f70aaf08
determine the xenocara makefile name directly, as it is inconvenient
...
to do if you're not sure you have the right WRKSRC.
2012-11-03 09:40:05 +00:00
sthen
9553728031
sort .poison lines, add a couple more
2012-11-02 01:44:19 +00:00
espie
9ce8be5926
fix base/xenocara location
2012-11-01 09:58:53 +00:00
espie
21af771d16
add a bit of experimental scaffolding to build xenocara from ports
...
- resurrect USE_X11 in a smart way: auto-determine it correctly from
WANTLIBS (accounts for most ports)
- define a BUILD_XENOCARA knob that builds fake based on mtree for
X11BASE.
- if BUILD_XENOCARA_TOO=Yes, prepare to hook to a xenocara "fake" meta
package.
All of this off by default, the xenocara shadow tree is not in yet
anyways. Zero impact on regular builds.
2012-10-29 22:27:05 +00:00
espie
b626ac149d
thinko
2012-10-28 10:32:23 +00:00
espie
e1f5ebd7f8
be very explicit: running several dpb on the same box is perfectly safe.
...
so that nitpicky developers are not deluded into thinking this doesn't work
perfectly (hi matthieu@)
2012-10-27 11:17:56 +00:00
rpe
92c015487d
lock directory -> locks directory
...
ok espie@
2012-10-26 14:43:17 +00:00
sthen
41d0a0310e
fileutils has been replaced with coreutils, handle this in the autoconf cache
...
fragment which normally handles gmkdir. ok jasper@
2012-10-25 12:26:29 +00:00
espie
964fc46d9a
document WAITING_TIMEOUT
2012-10-13 09:10:07 +00:00
espie
8553ebea36
disable the waiting period if waiting_timeout is 0.
...
and don't do it on localhost
2012-10-13 09:06:55 +00:00
espie
04618136d2
fix default property handling
2012-10-13 09:00:02 +00:00
espie
3453d11c35
zap warnings
2012-10-13 08:47:32 +00:00
espie
302ada6ac0
tweaks
...
- waiting should know when it gets interrupted! so that it doesn't zombify
- add a time limit.
2012-10-13 08:32:58 +00:00