Ports failing on pointyhat
pointyhat is the main machine of the ports building cluster. It is constantly building packages for various ports. In general these errors are identified reasonably quickly by the maintainers and fixed (sometimes after receiving some reminder email, known as 'krismail' since it is generally Kris that sends them).
Ports that fail to package on multiple occasions, and for clearly-understood reasons, are marked BROKEN. The idea is that maintainers will be notified of these ports and fixes generated, but in the meantime it is meaningless for the cluster (and FreeBSD users) to try to rebuild them.
However, there are a number of ports that fail on pointyhat for which the problem is not clear. In some of these cases, the error seems to be particular to the pointyhat environment (i.e. they build fine on individuals users' machines). Usually the problem is a subtle port bug which is only manifested in the environment provided by the pointyhat builds. To avoid portmgr bothering these maintainers over and over again, and to assist maintainers in generating an appropriate fix for the problem (where appropriate), here is a list of them.
Notes about common problems
* Some processes get a runaway process error. This means that they are killed because they did not produce any output in a long time (currently 2 hours), or because the build did not complete after a very long time (100 hours). Usually this is because a command hung, or the entire build is stuck in an infinite loop.
* Some ports that modify the contents of /etc/shells do not always restore the contents of /etc/shells on exit. This causes a sporadic failure of the 'mtree' checks for files inappropriately modified during the build.
* The default on i386 and amd64 (other arches to follow) is now to build all ports in a jail, instead of a chroot; this provides a number of technical advantages, and it's a good thing for packages to support anyway. Since default jail settings impose extra restrictions on the activities that a package build may perform, default jails cause a number of port builds to fail because of e.g. trying to run chflags, trying to ping localhost, etc. These restrictions have been loosened on the build hosts by tuning the appropriate sysctls, so the resulting errors should disappear from the builds. Some port builds may require further adaptation though.
List of ports
* devel/ElectricFence gets a coredump on i386. This is because (compared to older releases) the 7.x kernel is generating a different signal in response to the port build, which it is unprepared to handle. Since the same kernel runs on all builds, the same problem affects all branches. This is a port error; it is broken on 7.x and needs to be fixed, and an appropriate fix will also fix the builds for other branches too.
* editors/vim fails to compile but only on pointyhat; 2 different users report success on their systems. This does not appear to be a pointyhat bug, rather some condition that is only occurring in the build environment provided by pointyhat. Analysis of the failing WRKDIR (available on request) should show the cause of the port error.
* math/proofgeneral fails to correctly show up in duds on amd64. Therefore, it should not be built, but is anyway. This appears to be a subtle port bug; one clue is that the port manages to .include <bsd.port.pre.mk> twice, by virtue of the extra (bogus?) .include "bsd.emacs.mk".
* net-p2p/dctc appears to contain a race condition which means that port builds will sometimes fail.
* net/ipw-firmware and net/iwi-firmware are incorrectly executing sysctl to set OSVERSION, instead of using the value provided by bsd.port.mk (which is overridden by the package builds in order to cross-target a build for a specific version of FreeBSD). Since the duds list is compiled on pointyhat, the version of the pointyhat kernel is used; this is a version of FreeBSD for which the ports may be built, so they are never listed in duds even when cross-targetting for a release on which they should be IGNOREd.
* security/bdc, science/ovt cannot be automatically fetched; a manually fetched copy of the distfile is needed.
* shells/fd, shells/rssh, security/scponly, and shells/zsh have the shells bug. This means they fail to build sporadically.
* sysutils/file gets a signal 10 or signal 11 problem (depending on architecture). This is because the packages build with MALLOC_OPTIONS=AJ and the current version of the port contains a bug with malloc handling. The port should be fixed to correct the bug.
* net/freebsd-uucp builds, but pointyhat complains about a leftover package. This is intentional so users can remove the outdated uucp in their base system.
* news/c-nocem, print/cups-pstoraster breaks since 6th Oct 2006 while fetch files named "patch*.c" from ftp master. Files on ftp-master have been verfied to match correct checksum.
* lang/gnustep and other x11-toolkits/gnustep-back dependent ports fails to find the shared object of the backend. This happen when "bsd.gnustep.mk" is out of sync with the ports tree. In Sep 2006 the ports where updated and "bsd.gnustep.mk" was not.
* devel/gnustep-make breaks from time to time, failing to find "libobjc.so". This happen when pointyhat installs an old gcc package as dependency. The shared libs from gcc are in a FreeBSD version related path, which does not match when FreeBSD has been updated. The gcc package need to be recompiled in this case.
* mail/sendmail, mail/sendmail-sasl, mail/sid-milter breaks failing to detect shared memmory or semaphores. This ports build fine in a jail by setting "sysctl security.jail.sysvipc_allowed=1"