Category Archives: FreeBSD ports collection

AMANDA 3.3.2 and #undef bool

I upgraded a stable/8 i386 system and switched from lang/perl5.16 to lang/perl5.20 only to experience problems with swig generated code for AMANDA. I have confirmed this behaviour on stable/9 amd64 too.

I found 17 files containing these three lines:

#ifdef bool
#undef bool

This results in error messages such as:

Amanda/Application.c: In function 'SWIG_AsCharPtrAndSize':
Amanda/Application.c:1580: error: 'bool' undeclared (first use in this function)
Amanda/Application.c:1580: note: each undeclared identifier is reported only once for each function it appears in
Amanda/Application.c:1580: error: expected ':' before numeric constant

Continue reading AMANDA 3.3.2 and #undef bool

Local slave port for emulators/virtualbox-ose-additions without OpenGL and X11

I have a bunch of FreeBSD VMs running in VirtualBox. They all share a number of virtual harddrives, and among them are a virtual harddrive with the common contents of /var/db/ports.

My ports configuration of emulators/virtualbox-ose-additions have the OPENGL and X11 options set. This is useless on some of my simpler VMs, as those VMs have no need for any X11 ports, but they could sure benefit from having the VirtualBox additions installed. These simpler VMs are usually used only to test ZFS in FreeBSD in various configurations.

I could juggle the settings for emulators/virtualbox-ose-additions for each time I’m updating the VirtualBox additions port on my VMs, but I decided to create a local slave port disabling the OPENGL and X11 options. Maybe this port, with the necessary tweaking, could sit among its siblings in the official emulators category.


MASTERDIR=	${.CURDIR}/../../emulators/virtualbox-ose-additions
.include "${MASTERDIR}/Makefile"


COMMENT=	VirtualBox additions for FreeBSD guests without OPENGL and X11


PKGNAMESUFFIX=	-additions-nox11



For now you must copy the /var/db/ports/local_virtualbox-ose-additions-additions-nox11/options file to /var/db/ports/emulators_virtualbox-ose-additions-additions-nox11/options, or else dialog4ports(1) will keep nagging you until kingdom come.

I guess this problem stems from early processing of as done by the master Makefile at a time when the CATEGORIES variable was set to emulators.

Parallel build of mail/thunderbird in FreeBSD?

Update 2014-08-07: r363978, dated Mon Aug 4 09:11:25 2014 UTC, solves the parallel build bug once and for all, and there’s no need for the Makefile.local as shown below.

I’ve been scratching my head over why mail/thunderbird doesn’t build in parallel when www/firefox does.

Research reveals MAKE_JOBS_SAFE was removed last August, in r324744. I can’t find a specific reason other than guessing parallel build was considered broken in FreeBSD.

So far, I’ve added a Makefile.local file in the /usr/ports/mail/thunderbird directory. The time spent compiling mail/thunderbird went from roughly 2.5 hours to merely 38 minutes on a 4 core Intel Core i7-960 running at 3.2 GHz. YMMV. Continue reading Parallel build of mail/thunderbird in FreeBSD?

Coping with portupgrade’s inability to handle new dependencies

I grew tired of handholding portupgrade because of the latter’s inability to handle new dependencies. The script below is the result of my frustration. The script is available for downloading at Continue reading Coping with portupgrade’s inability to handle new dependencies


I’m probably not paying enough attention to new developments in FreeBSD after all. After updating the installed ports in my VMs running base/head and base/stable/10, X11 stopped working. It turns out the new version of requires KMS and what not in the kernel. This doesn’t fare well with VMs running inside VirtualBox.

The solution? Place


in the /etc/make.conf file and recompile everything, or at least recompile everything belonging to the subsystem. I opted for the former, spending roughly five hours recompiling 443 ports. :-/

The VMs running base/stable/8 and base/stable/9 hasn’t been affected yet, but I figured it’s best to play safe and I amended the aforementioned line in the /etc/make.conf file on those VMs.