This script can sometimes take several hours to run on builder,
and thus leading to confusing of why it still reports an error
that was fixed in cvs some time ago. Including the time when
the ports tree was updated should reduce some of this confusion.
to be removed, possibly with the expiration date and deprecated reason
* If port is not marked for expiration than put "Removed" in ports/MOVED
entry instead of "Has expired"
* Implement -a option to remove all expired ports
* Ask if the cvs diff output should be recreated/reviewed again thus
giving the committer a chance to edit files by hand and view diff
results afterwards
* Cosmetic changes
* Add more XXX comments for future work
* Only record a cvsdone timestamp if we updated cvs
* When building with -trybroken, it's safe (and desirable) to run the
prunefailure script
* Reorganise a few things for better parallelism
* Instead of keeping a duplicate copy of the previous logs and errors
under bak/, just store a symlink to the archival location
* When doing an incremental build, also cycle out the old logs to avoid
broken links on the website (the logs from the previous build are
removed until the packages are rebuilt). Use cpio to create
hardlinked copies of the previous logs. XXX when these are bzipped
by cron to save space the links will be broken and it might actually
take more space.
* Don't bother bunzipping old logs, now that the processlogs scripts
can handle it. This was a waste of time anyway since they'd all be
rebzipped by the next nightly cron job.
* When the build is complete, stash a copy of the restricted ports in
bak/restricted/ before deleting them from packages/, and restore from
here when doing an incremental build to avoid needlessly rebuilding
them each time.
* Increase sparc64 build timeout to 24 hours (we have so few build
machines that we cannot afford to tie them up for longer)
* Increase other arch build timeout to 100 hours (hello openoffice!)
* If we successfully build a formerly broken package, touch errors/.force
which will kick off a rebuild of the html files
* Use a generation number for the bindist tarballs, with compatibility
symlink. Eventually we'll use this to avoid building in a "stale"
chroot (i.e. populated by old world).
* Don't bother running ldconfig on i386, it is evidently not needed since
the other arches work fine without it
* Don't try and mount/umount procfs, it won't work when we build inside a
jail.
* Report the uname -mr of the build environment, to ease confusion of
people reading the error logs by mail.
This commit should largele be a NOOP as it only adds support
for DESTDIR undefined. This does allow us to start testing
ports with DESTDIR set, but this is as of yet not supported.
Although this has been extensively tested on pointyhat, this
is a very intrusive change and some cases may have been
overlooked. Please contact Gabor and me if you find any.
PR: 100555
Submitted by: gabor
Sponsored by: Google Summer of Code 2006
${FILESDIR} which look like patches be treated as binary files. This
prevents RCS tags in patch fragments causing a problem for CVS.
Approved by: garga (maintainer),
ahze (mentor, implicit)
- Remove obsolete explanations which are no longer seen, for speed:
ELF, MOTIF, MOTIFLIB, X_manpage, awk, bison, ffs_conflict, forbidden,
getopt, getopt.h, imake, lc_r, malloc.h, pod2man, sed, stl, soundcard.h,
texinfo, union_wait, values.h
- Add more cases to: arch, bad_c++, compiler_error, depend_object,
install_error, linker_error, mtree, perl5
These changes reduce many dozens of false positives; add a few dozen
true positives; and for certain directories, improve the speed about 10%
(a few drop by 15%).
It turns out that the performance issues are mainly due to the multiple
greps. If performance is an issue we need to go back to the moderately-
unreadable, everything-on-one-line paradigm. Before that happens, I would
like to experiment with some refactoring, so that the patterns are built up
in the shell line-by-line, so you could still be able to read it.
Tested on: pointyhat
Hat: portmgr