Changes to FreeBSD’s PHP port.
Jul 19th, 2004 by Alex
The FreeBSD maintainer responsible for the php4 port has been making some significant changes that have some large effects on re-compiles. The maintainer is in the process of removing a lot of the optional components from the base port. While the long term effects are desirable — a cleaner base — more work was required today due to these changes in direction.
I went to upgrade to PHP 4.3.8 today. I obtained a root shell and ran the usual commands.
# cd /usr/ports/lang/php4 # make install
The compile/install finished without issues and so I restarted Apache. Upon loading the first page, I started getting all sorts of session-related errors. Specifically on my Gallery pages, the errors indicated that session support wasn’t enabled. This was odd, since I’ve been compiling session support into PHP for a few years. I loaded up a phpinfo() test page, and saw that PHP had been configured with a –disable-all argument.
I went to check the Makefile. Sure enough, the culprit is the slight changes that have been made to the makefile over time.
CONFIGURE_ARGS= --enable-versioning \
--enable-memory-limit \
--with-layout=GNU \
--disable-all
According to CVS Changelog for php4/Makefile, here’s the explanation.
First step of the PHP mega-commit: - remove extensions and PEAR from the PHP base ports - add more OPTIONS to PHP base ports
Peachy for the future, but not useful for me at the moment.
I removed the disable-all line from the Makefile, ran “make clean” and ran another “make install”. This time, all the modules were included. While a bit bulky, at least the sites are back up properly. I can always come back and exclude modules that I don’t need, at my convenience.