| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
time to add a new module. If you want to still use old way, just use
"-M freefall.FreeBSD.org" option
- Take addport maintainership
- When modulesupdate fail, ask user to retry
- Change modulesupdate to work fine with addport
Approved by: will (maintainer)
Notes:
svn path=/head/; revision=162578
|
|
|
|
|
|
|
|
|
|
|
| |
filesystem (either absolute or relative) in addition to `category/port'.
PR: ports/96649
Submitted by: Cheng-Lung Sung <clsung@freebsd.org>
Reworked by: vd
Notes:
svn path=/head/; revision=161185
|
|
|
|
|
|
|
|
|
| |
When removing category/port - look if other ports' Makefiles contain
`/port' rather than `category/port', since the later misses things
like `${.CURDIR}/../port'
Notes:
svn path=/head/; revision=161174
|
|
|
|
| |
Notes:
svn path=/head/; revision=159777
|
|
|
|
|
|
|
|
| |
export it ro. This saves thrashing the server if we accidentally try to
rm -rf a NFS mount (e.g. because a chroot cleanup failed).
Notes:
svn path=/head/; revision=159674
|
|
|
|
|
|
|
| |
just takes up time.
Notes:
svn path=/head/; revision=159673
|
|
|
|
|
|
|
| |
is started without arguments.
Notes:
svn path=/head/; revision=159354
|
|
|
|
|
|
|
| |
can benefit (or suffer :-) from it.
Notes:
svn path=/head/; revision=159244
|
|
|
|
| |
Notes:
svn path=/head/; revision=158699
|
|
|
|
| |
Notes:
svn path=/head/; revision=158698
|
|
|
|
|
|
|
| |
too much space on pointyhat, and it's also very slow.
Notes:
svn path=/head/; revision=158697
|
|
|
|
| |
Notes:
svn path=/head/; revision=158696
|
|
|
|
| |
Notes:
svn path=/head/; revision=158695
|
|
|
|
|
|
|
|
|
|
|
| |
script, i.e. so they can be moved back into place before start the next
incremental build so they won't be needlessly rebuilt every time (jdk, I'm
looking at you). It is a bit of a hack since it relies on assumptions
about the structure of that shell script, but for now it's the best we
can do.
Notes:
svn path=/head/; revision=158694
|
|
|
|
|
|
|
| |
Approved by: portmgr (implicit)
Notes:
svn path=/head/; revision=157077
|
|
|
|
|
|
|
| |
Approved by: portmgr (implicit)
Notes:
svn path=/head/; revision=157076
|
|
|
|
|
|
|
|
|
| |
clean themselves up properly.
Approved by: portmgr (implicit)
Notes:
svn path=/head/; revision=157075
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
server. Error conditions are flagged by other processes by creating
a named dotfile in ${scratchdir}. If these files are found, report the
error status instead of the number of running jobs. Currently report "ERR"
for all error conditions; I will probably change this to a per-condition
message.
Currently only "squid not running" and "disk space low" conditions are
reported.
Notes:
svn path=/head/; revision=156098
|
|
|
|
|
|
|
|
|
|
| |
If the package copy fails, bail out immediately instead of later on when
we try to pkg_add it. Also trap signals and bail out.
Both conditions will cause a retry of the package build.
Notes:
svn path=/head/; revision=156096
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If portbuild bailed out unexpectedly, mail the log to ${mailto}.
Add some XXX comments about improving robustness of this script.
Sleep for 2 minutes before retrying builds, to avoid spamming ${mailto}
with a high rate of failure logs. In future we might be smarter about
attempting to automatically correct common failure modes.
Notes:
svn path=/head/; revision=156095
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Test whether squid is running. If not, try to kick off
the rc script in the background in case it can be restarted
cleanly.
* Test for at least 100MB of free space on the scratch partition.
If either condition fails, set an exception flag and bail out. This
will be reported back to the server via reportload.
Notes:
svn path=/head/; revision=156092
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
cause is because it was specified in the list twice)
* Don't panic when the list of packages to delete becomes empty
* When unexpected filesystem changes are detected, bail immediately
instead of proceeding and hiding the error in the middle of
the log
Notes:
svn path=/head/; revision=156091
|
|
|
|
| |
Notes:
svn path=/head/; revision=156090
|
|
|
|
|
|
|
|
|
|
|
|
| |
with all the errors from broken pkg_delete scripts
* As threatened in previous commit, move the pristine mtree spec
generation to phase 1, and avoid having to delete and re-add the
FETCH_DEPENDS. We still have to keep them installed until after
'make extract' though
Notes:
svn path=/head/; revision=155961
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
arguments (cosmetic)
* Detect if a chroot was used to run a jailed build, and first attempt
to gracefully shut it down by killing everything within using pgrep(1)
This has a much higher chance of succeeding that relying on fstat to
identify processes that might interfere with our attempts to clean up
mountpoints, which is fragile (libkvm-dependent), and inherently
unreliable at best.
Notes:
svn path=/head/; revision=155730
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
in portbuild.conf (or per-machine .conf), then construct a 127.0.0.0/8
IP address based on the build directory ID (i.e. unique for each
build instance). This is bound to the lo0 interface for the duration
of the 'phase 2' build.
We cannot build 'phase 1' in a jail since 'make fetch' doesn't always
work through a proxy (e.g. squid sometimes mangles files fetched through
FTP, I think by performing CR/LF translation in FTP ASCII mode).
Pass in the HTTP_PROXY variable to the jail, if set. This allows FTP/HTTP
access from within the jail if the proxy is suitably configured (some ports
legitimately need to fetch additional files during the build, e.g. if they
have a BUILD_DEPENDS=...:configure target that needs to fetch additional
distfiles).
Not all ports can be built in jails (most notably the linux_base ports
since they want to mount/umount linprocfs), so we will need to come up
with a way to deal with this.
Some ports require SYSV IPC, so security.jail.sysvipc_allowed=1 might be
required. Some other ports attempt to perform DNS lookups, ping, or
outbound TCP connections during the build.
When it works, this provides better compartmentalization of package builds,
e.g. easier termination of builds without the possibility of daemonized
processes staying active; no possibility of accidental interference
between jails, etc. It also allows for admin monitoring using jls(1).
Notes:
svn path=/head/; revision=155729
|
|
|
|
|
|
|
|
|
|
|
| |
* Remove old logs and possible compressed logs before attempting the build
Requested by: lofi [1]
Submitted by: linimon [1]
No more accidental portbuild spam: kris and krion [1]
Notes:
svn path=/head/; revision=155728
|
|
|
|
|
|
|
|
|
| |
Requested by: lofi
Submitted by: linimon
No more accidental portbuild spam: kris and krion
Notes:
svn path=/head/; revision=155727
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Only keep distfiles if the port passes 'make fetch', so we don't
accidentally keep files with invalid checksums
* Use cleanup() instead of directly exiting in some error conditions
* When cleanup() is called indicating an unexpected error (possibly
leaving the filesystem in an inconsistent state), mark the chroot
as dirty so it will not be reused by another build
* Remove packages in dependency order instead of with pkg_delete -f in
possibly incorrect order. This paves the way for focusing on errors
generated by pkg_delete (e.g. @dirrm that should be @dirrmtry) in the
future. [1]
* Detect when packages were left behind because they were still in use
by other packages, indicating an incorrect or incomplete port
dependency list
* Partial support for ccache builds (not yet complete)
* Support non-standard LOCALBASE/X11BASE settings
* Delete FETCH_DEPENDS after the 'make fetch' stage. We have to add
them again before 'make extract' since, due to a lack of a 'fetch
cookie', 'make extract' actually *always* runs 'make fetch' again,
even when distfiles have already been fetched. We need to delete
them in order to:
* Record an mtree spec of the 'pristine' filesystem state, for later
comparison.
# XXX Perhaps this can be done in stage 1 before the
# 'make fetch', removing the need to delete-and-readd.
* Also record an mtree spec of the filesystem state prior to the
build phase. Compare this to the state of the filesystem
immediately before running the install phase, to detect files
that were inappropriately installed during the build phase.
Doing so is a fatal error.
* Prior to installing, try to run a 'regression-test' port makefile
target, if it exists. This allows ports to hook their internal
regression suites into the package build. This needs further
infrastructure support, e.g. a default NOP target in bsd.port.mk.
For now this is run with 'make -k', so regression failures will
not yet actually cause package build failures.
* Separate the 'make install' from 'make package' phases rather than
let the latter implicitly do the install.
* After the newly packaged port has been deleted, compare the state
of the filesystem to the state before 'make install'.
* After removing BUILD and RUN dependencies, compare the filesystem
state to the pristine state before the start of the build. This
also detects package dependencies that did not clean themselves up
properly when deinstalling. It also detects dependencies that were
'missing' from the port INDEX: these were not pkg_added into place,
so the package build had to compile them from scratch (a big waste
of time and effort), so this is now also a fatal error.
PR: ports/85746 (inspired by) [1]
Submitted by: Boris B. Samorodov <bsam@ipt.ru> [1]
Notes:
svn path=/head/; revision=155726
|
|
|
|
| |
Notes:
svn path=/head/; revision=155147
|
|
|
|
|
|
|
| |
and this doesn't happen in practise unless you screwed up manually.
Notes:
svn path=/head/; revision=155146
|
|
|
|
|
|
|
| |
some of the code
Notes:
svn path=/head/; revision=155145
|
|
|
|
| |
Notes:
svn path=/head/; revision=155144
|
|
|
|
|
|
|
|
|
| |
0 = don't clean chroot
1 = sanitize commonly-modified directories
2 = remove entire chroot
Notes:
svn path=/head/; revision=155143
|
|
|
|
|
|
|
| |
in unclean state) and run clean-chroot on them to remove them.
Notes:
svn path=/head/; revision=155142
|
|
|
|
|
|
|
| |
Noticed by: linimon
Notes:
svn path=/head/; revision=155141
|
|
|
|
| |
Notes:
svn path=/head/; revision=155040
|
|
|
|
|
|
|
| |
the client chroots.
Notes:
svn path=/head/; revision=154617
|
|
|
|
| |
Notes:
svn path=/head/; revision=154616
|
|
|
|
| |
Notes:
svn path=/head/; revision=154615
|
|
|
|
| |
Notes:
svn path=/head/; revision=154391
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
on the contents of the distinfo files.
#
# Small tool to find distinfo with missing MD5/SHA256/SIZE statements,
# based on the assumption that if there is one of the MD5/SHA256/SIZE
# statements, then there should be all of them (except for SIZE
# when MD5/SHA256 is set to IGNORE).
#
# Usage: distinfochecker [-v] [-d directory]
# -v - verbose (print)
# -d - use directory instead of /usr/ports
#
Notes:
svn path=/head/; revision=154320
|
|
|
|
|
|
|
|
| |
Add a few more local configuration variables
Minor cleanups
Notes:
svn path=/head/; revision=154191
|
|
|
|
|
|
|
|
|
| |
Use LOCALBASE/X11BASE values from buildenv
xorg uses the stock BSD.x11-4.dist now.
Notes:
svn path=/head/; revision=154130
|
|
|
|
|
|
|
| |
required by any ports
Notes:
svn path=/head/; revision=154129
|
|
|
|
| |
Notes:
svn path=/head/; revision=154128
|
|
|
|
|
|
|
| |
Don't bother cleaning up doc mounts, they are not needed.
Notes:
svn path=/head/; revision=154127
|
|
|
|
| |
Notes:
svn path=/head/; revision=154126
|
|
|
|
| |
Notes:
svn path=/head/; revision=154125
|
|
|
|
|
|
|
|
| |
PR: ports/64930
Submitted by: Damir Kiramov <damirycha@damirycha.net.ru>
Notes:
svn path=/head/; revision=153536
|