aboutsummaryrefslogtreecommitdiff
path: root/Tools
Commit message (Collapse)AuthorAgeFilesLines
* Fix typosVolker Stolz2005-04-181-3/+3
| | | | | | | Approved by: sobomax Notes: svn path=/head/; revision=133581
* As discussed on the cvs-ports-list, make 'addport' print a warning if the ↵Volker Stolz2005-04-121-0/+1
| | | | | | | | | | | | directory name contains upper-case characters as it makes finding a port harder. PR: ports/79679 Approved by: will, portmgr(krion) Notes: svn path=/head/; revision=133136
* Add a splitpatch.pl utility, a small script to convert multi-fileAnton Berezin2005-04-122-0/+112
| | | | | | | | | patches to several appropriately named single-file patches. Requested by: flz Notes: svn path=/head/; revision=133135
* - Add bump_revision.pl, a small script to bump the PORTREVISION variableFlorent Thoumie2005-04-122-1/+193
| | | | | | | | | | | | | of ports which are depending on a port with a changed shared lib version. Edwin dedicates this script to his son Dirk, born few days ago :) Congrats (again) ! PR: ports/63915 Submitted by: edwin Notes: svn path=/head/; revision=133130
* - Replace pkg-comment with COMMENT to reflect latest (*sigh*) changesFlorent Thoumie2005-04-111-2/+2
| | | | | | | | | | | in the ports framework. PR: ports/62767 Submitted by: Igor Pokrovsky <tiamat@comset.net> Approved by: maintainer timeout (> 8 months) Notes: svn path=/head/; revision=133101
* Use WRKDIRPREFIX instead of hardcoded value.Kris Kennaway2005-04-111-1/+3
| | | | | | | Clean up after we're done. Notes: svn path=/head/; revision=133100
* Change rsync -l to -L for the tarballs/ directory (so that danglingKris Kennaway2005-04-031-1/+1
| | | | | | | | symlinks are not created on the target) and rsync the entire directory so that extra files are deleted. Notes: svn path=/head/; revision=132306
* Build packages with WRKDIRPREFIX=/work (which does not exist byKris Kennaway2005-04-021-1/+9
| | | | | | | | | | default) instead of /tmp, since some packages incorrectly search this build path at runtime to try to load things. Requested by: nectar Notes: svn path=/head/; revision=132266
* Increase the nc poll timeout to better deal with network latencies.Kris Kennaway2005-04-021-1/+1
| | | | Notes: svn path=/head/; revision=132264
* Flip over the -plistcheck switch to -noplistcheck since we now want toKris Kennaway2005-04-021-5/+5
| | | | | | | make it the default behaviour. Notes: svn path=/head/; revision=132263
* Update the list of files and directories to filter from the plist checking.Kris Kennaway2005-04-021-1/+3
| | | | Notes: svn path=/head/; revision=132262
* Checkout Templates from CVS as well since ports with GNU_CONFIGURE willVolker Stolz2005-03-201-0/+2
| | | | | | | | | need them when building from 'addport -a -t'. Approved by: will Notes: svn path=/head/; revision=131750
* Put $FreeBSD$ for ident(1)'ing.Kirill Ponomarev2005-03-131-0/+1
| | | | Notes: svn path=/head/; revision=131056
* Hopefully last try to fix readmes build.Kirill Ponomarev2005-03-111-1/+2
| | | | | | | | Submitted by: Christopher Kelley <bsd at kelleycows.com> Pointyhat to: krion Notes: svn path=/head/; revision=130942
* Fix problems with quoting if PORTSTOP is specified.Kirill Ponomarev2005-03-091-1/+1
| | | | Notes: svn path=/head/; revision=130756
* * Add info files to TMPPLIST, only if INFO is specified. [1]Kirill Ponomarev2005-02-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | * Fix PATH problems during README.html generation if "make -DPORTSTOP readmes" is defined. [2] * Add support for early rcNG startup scripts. [3] * Remove duplicate USE_XLIB handling. [4] * Add check for USE_PYTHON_(BUILD|RUN), and include bsd.python.mk if both are specified. [5] * Use PRE-INSTALL target for SUB_FILES and SUB_LIST. [6] * Introduce bsd.gstreamer.mk and utilize new macros: USE_GSTREAMER/WANT_GSTREAMER. [7] PR: ports/77634 [1], ports/77592 [2], ports/77385 [3], ports/77557 [4], ports/77344 [5], ports/77211 [6], ports/77838 [7] Submitted by: krion [1] [2], Florent Thoumie <flz@xbsd.org> [3] [6], pav [4], lofi [5], ahze [7] Notes: svn path=/head/; revision=130042
* * Instead of using umount -f to unmount things, first use fstat toKris Kennaway2005-02-121-6/+44
| | | | | | | | | | | | look for processes holding open references within the FS and kill them, then use regular umount. This is necessary now that devfs cannot be force-unmounted, and has the benefit that processes can't hang around holding references to files between port builds. * Preliminary work to support using ccache to accelerate builds. Notes: svn path=/head/; revision=128586
* Only try to chown the portbuild directory if we are a disconnected clientKris Kennaway2005-02-121-1/+1
| | | | | | | (i.e. it is not mounted by nfs) Notes: svn path=/head/; revision=128585
* Instead of using umount -f to unmount things, first use fstat to look forKris Kennaway2005-02-121-1/+35
| | | | | | | | | | processes holding open references within the FS and kill them, then use regular umount. This is necessary now that devfs cannot be force-unmounted, and has the benefit that processes can't hang around holding references to files between port builds. Notes: svn path=/head/; revision=128584
* * Instead of using umount -f to unmount things, first use fstat toKris Kennaway2005-02-121-7/+44
| | | | | | | | | | | | | | look for processes holding open references within the FS and kill them, then use regular umount. This is necessary now that devfs cannot be force-unmounted, and has the benefit that processes can't hang around holding references to files between port builds. * Reduce possibility for error by testing for presence of executable ldconfig inside the chroot before attempting to run it (e.g. it may not be there if the chroot was not completely initialized) Notes: svn path=/head/; revision=128583
* Update the plist checking to look for a subset of files and weed out someKris Kennaway2005-02-121-1/+6
| | | | | | | false positives. Notes: svn path=/head/; revision=128582
* Document the check-latest-link and tindex scriptsKris Kennaway2005-01-241-1/+5
| | | | Notes: svn path=/head/; revision=127163
* Add the script I use to look for duplicate LATEST_LINK entries and toKris Kennaway2005-01-241-0/+72
| | | | | | | send nag-mails to the responsible maintainers. Notes: svn path=/head/; revision=127162
* This is the script I use to build indexes for all supported ports branches,Kris Kennaway2005-01-241-0/+164
| | | | | | | | | which are copied to www.freebsd.org for use by 'make fetchindex', as well as the source of build failure reports on ports@FreeBSD.org when it is broken. Notes: svn path=/head/; revision=127161
* Remove traling spaces.Kirill Ponomarev2005-01-0928-52/+52
| | | | Notes: svn path=/head/; revision=125941
* Always set up the bindist-${hostname}.tar file since it's usually small.Kris Kennaway2005-01-061-1/+1
| | | | | | | | | This should probably be changed to only update it if it changes. Approved by: portmgr (self) Notes: svn path=/head/; revision=125740
* Unset the __MAKE_CONF variable after setting up buildenv, because weKris Kennaway2005-01-061-0/+3
| | | | | | | | | want to use the default value in the build chroot. Approved by: portmgr (self) Notes: svn path=/head/; revision=125739
* Allow machines to use an alternate address for polling for job load (e.g.Kris Kennaway2005-01-061-1/+3
| | | | | | | | | | if the machine is behind a NAT and is not directly addressable, we can use a localhost port forward to contact it) Approved by: portmgr (self) Notes: svn path=/head/; revision=125738
* * Include portbuild.conf before portbuild.${hostname} to reset the defaultKris Kennaway2005-01-061-4/+6
| | | | | | | | | | | value of variables * Allow krion to drink from the email firehose Approved by: portmgr (self) Notes: svn path=/head/; revision=125737
* * The mlist file now only has one field per line.Kris Kennaway2005-01-061-4/+9
| | | | | | | | | | | * Correctly calculate job concurrency in pass two as well * In pass two run dosetupnode -rsync to avoid wasting time. Approved by: portmgr (self) Notes: svn path=/head/; revision=125736
* krion wants to drink from the pointyhat email firehose as well.Kris Kennaway2005-01-061-1/+1
| | | | | | | | | XXX This should be a portbuild.conf tunable Approved by: portmgr (self) Notes: svn path=/head/; revision=125735
* Now that I have so many remote build machines, don't force trying toKris Kennaway2005-01-061-7/+0
| | | | | | | | | | | fetch from ftp-master and pointyhat; they'll just get timeouts. Instead, each machine is expected to set up their own MASTER_SITE_* variables in etc/make.conf via a bindist-${hostname}.tar file. Approved by: portmgr (self) Notes: svn path=/head/; revision=125734
* * Support the -norsync argument to only remove the existing build chrootsKris Kennaway2004-12-281-2/+8
| | | | | | | | | | | | | | | | | | | | on a disconnected client, without running the time-consuming rsyncs. This is useful when a build is interrupted and needs to be restarted. * After we have cleaned up the machine, reset the queue counter by using pollmachine -queue. This has a race condition if other builds are being dispatched to the machine (e.g. builds on another branch): getmachine can claim a directory and increment the counter, then the machine is polled and finds e.g. 0 chroots in use, and resets the counter to 0, then claim-chroot is run and the build dispatched, with the counter now off-by-one. This could be fixed by running claim-chroot with the .lock held, but this turns out to be too time-consuming. A two-level lock approach might also fix this efficiently. Notes: svn path=/head/; revision=125320
* * It does in fact make sense to specify -incremental and -noindex at theKris Kennaway2004-12-281-7/+7
| | | | | | | | | | | | | same time, assuming that the admin has already built the INDEX and INDEX.old in advance. * Adapt to new method of calculating build concurrency, by summing the value of ${maxjobs} listed in every portbuild.${machine} * Support 5-exp builds Notes: svn path=/head/; revision=125319
* Fix the Xvfb code to run Xvfb before the build phase if detectedKris Kennaway2004-12-281-15/+25
| | | | | | | | | | | | | | (i.e. if the package lists a dependency on the relevant package in the PACKAGE_BUILDING case). This allows packages that require an available DISPLAY to again build (with some forthcoming fixes to existing ports). Improve the reporting of detected filesystem anomalies (extra files left behind after deinstallation, changes to and removal of pre-existing files) Notes: svn path=/head/; revision=125318
* Overhaul of the job scheduler. The new scheduler runs buildsKris Kennaway2004-12-284-29/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | synchronously instead of probabilistically scheduling jobs, which means that the job load on a machine never exceeds a desired threshold, and we can preferentially use faster machines when they are available. This has a dramatic effect on package build throughput, although I don't yet have precise measurements of the performance improvements. Specifically, the changes are: * Introduce the new variable maxjobs in portbuild. This replaces the build scheduling weights previously listed in the mlist file, which now changes format to list the build machines only, ranked in order of preference for job dispatches (i.e. faster machines first). * The ${arch}/queue directory is used to list machines available for jobs (file content is the number of jobs currently running on the machine). Changes to files in this directory are serialized using lockf on the .lock file. * Claim a machine with the getmachine script, with the .lock held. This picks the machine with the fewestnumber of jobs running, which is listed highest in the mlist file in case of multiple machines with equal load. The job counter is incremented, and the file removed if the counter reaches ${maxjobs} for that machine. If all machines are busy, sleep for 15 seconds and retry. * After we have claimed a machine, we run claim-chroot on it to claim an empty chroot, as before. If the claim fails, release the job from the queue with the releasemachine script and retry after a 15 second wait. * When the build is finished, decrement the job counter with the releasemachine script, with .lock held. * The checkmachines script now exists only to poll the load averages for admin convenience (every 2 minutes), and to ping for unreachable machines. When a machine cannot be reached, remove the entry in the queue directory to stop further job dispatches to it. This needs more work to deal with reinitialization of machines after they become available again. Notes: svn path=/head/; revision=125317
* Overhaul of the job scheduler. The new scheduler runs buildsKris Kennaway2004-12-281-26/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | synchronously instead of probabilistically scheduling jobs, which means that the job load on a machine never exceeds a desired threshold, and we can preferentially use faster machines when they are available. This has a dramatic effect on package build throughput, although I don't yet have precise measurements of the performance improvements. Specifically, the changes are: * Introduce the new variable maxjobs in portbuild. This replaces the build scheduling weights previously listed in the mlist file, which now changes format to list the build machines only, ranked in order of preference for job dispatches (i.e. faster machines first). * The ${arch}/queue directory is used to list machines available for jobs (file content is the number of jobs currently running on the machine). Changes to files in this directory are serialized using lockf on the .lock file. * Claim a machine with the getmachine script, with the .lock held. This picks the machine with the fewestnumber of jobs running, which is listed highest in the mlist file in case of multiple machines with equal load. The job counter is incremented, and the file removed if the counter reaches ${maxjobs} for that machine. If all machines are busy, sleep for 15 seconds and retry. * After we have claimed a machine, we run claim-chroot on it to claim an empty chroot, as before. If the claim fails, release the job from the queue with the releasemachine script and retry after a 15 second wait. * When the build is finished, decrement the job counter with the releasemachine script, with .lock held. * The checkmachines script now exists only to poll the load averages for admin convenience (every 2 minutes), and to ping for unreachable machines. When a machine cannot be reached, remove the entry in the queue directory to stop further job dispatches to it. This needs more work to deal with reinitialization of machines after they become available again. Additional changes to this file: * Exit if passed a null package name, to avoid badness later on * Send a nag-mail if pkg-plist errors are detected in the build Notes: svn path=/head/; revision=125316
* * Catch up to change in formatting of 'extra files' section in logsKris Kennaway2004-12-281-4/+3
| | | | | | | * Other minor changes Notes: svn path=/head/; revision=125315
* /rescue/mount_linprocfs isn't functional when called byKris Kennaway2004-12-281-1/+2
| | | | | | | | | | | | /rescue/mount -t linprocfs, so assume that the i386 build hosts have statically-built copies of the necessary binaries in /sbin, until this is fixed. Create /usr/X11R6 inside the chroot so that mtree has something to do, since this directory is otherwise orphaned. Notes: svn path=/head/; revision=125314
* Support 5-exp buildsKris Kennaway2004-12-284-4/+14
| | | | Notes: svn path=/head/; revision=125313
* Use X_WINDOW_SYSTEM for 4.x builds too.Kris Kennaway2004-12-101-2/+2
| | | | Notes: svn path=/head/; revision=123622
* Belatedly catch up to XFREE86_VERSION -> X_WINDOW_SYSTEM change; applyKris Kennaway2004-12-101-3/+3
| | | | | | | the BSD.x11.dist if set to xfree86-3, otherwise use BSD.x11-4.dist. Notes: svn path=/head/; revision=123621
* The explanations of each build error no longer live on bento, they liveMark Linimon2004-12-092-7/+7
| | | | | | | on pointyhat. Notes: svn path=/head/; revision=123529
* Construct permanent links to the error logs here too.Kris Kennaway2004-12-051-4/+4
| | | | | | | | Submitted by: linimon Reminded by: marcus Notes: svn path=/head/; revision=123155
* Copy the statically-linked binaries from /rescue on the host, insteadKris Kennaway2004-12-051-4/+11
| | | | | | | | of needing to also include the dynamic libraries that were confusing some ports. We still need libc.so.[56] for killall to work, though :( Notes: svn path=/head/; revision=123154
* Be silent about attempts to unmount filesystems from within the chrootKris Kennaway2004-12-051-4/+4
| | | | Notes: svn path=/head/; revision=123153
* Clean up the symlink in ${pb}/${arch}/${branch}/latest/${dir} when we findKris Kennaway2004-11-251-0/+5
| | | | | | | a port that should not be listed here Notes: svn path=/head/; revision=122365
* If sudo_cmd is set, assume we need to chown the files we created onKris Kennaway2004-11-251-0/+3
| | | | | | | the client to the client_user so they can later write to them Notes: svn path=/head/; revision=122362
* Rework the -incremental support slightly; this should now be robust enoughKris Kennaway2004-11-251-3/+5
| | | | | | | to use. Notes: svn path=/head/; revision=122360
* Catch up to the changed format of the logs.Kris Kennaway2004-11-251-4/+4
| | | | | | | | | | List the extra/removed/changed files separately, and colour-code the serious errors (files left behind outside of /usr/local and /usr/X11R^; files removed that were installed by another port, and files with changed permissions or ownership) Notes: svn path=/head/; revision=122357