Bug 113045

Summary: textproc/php4-simplexml - php 5.2.2 simplexml fails to compile
Product: Ports & Packages Reporter: risner <risner>
Component: Individual Port(s)Assignee: Alex Dupre <ale>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   

Description risner 2007-05-27 04:50:03 UTC
Have PHP 5.2.1 installed with simplexml, attempt to upgrade to 5.2.2.
When making simplexml you get this error:

/usr/ports/textproc/php5-simplexml/work/php-5.2.2/ext/simplexml/simplexml.c:38:29: ext/spl/spl_sxe.h: No such file or directory
*** Error code 1

Stop in /usr/ports/textproc/php5-simplexml/work/php-5.2.2/ext/simplexml.
*** Error code 1

Stop in /usr/ports/textproc/php5-simplexml.
mail#

Fix: 

I googled around and didn't find anything on this error, so I quickly fixed it for now.
It would appear that spl is referenced by simplexml and that referencing one extension
from another breaks some sort of model for the way the PHP5 port worked.  It only extracted
the extension it was compiling.  A proper fix may be to extract all extensions or to
just extract this one (spl) along with all others?

If I am confused and did something wrong, please excuse me.  Thanks.

I added a symbolic link and modified /usr/ports/lang/php5/Makefile.ext as follows:

mail# pwd
/usr/ports/textproc/php5-simplexml
mail# ls -l work/php-5.2.2/ext/simplexml/include/
total 0
lrwxr-xr-x  1 root  wheel  13 May 26 23:04 ext -> ../../../ext/
mail# grep /ext/spl /usr/ports/lang/php5/Makefile.ext
EXTRACT_AFTER_ARGS?=    | ${TAR} -xf - ${EXTSUBDIR} ${DISTNAME}/ext/spl

cmds:
ln -s ../../../ext /usr/ports/textproc/php5-simplexml/work/php-5.2.2/ext/simplexml/include/
cp /usr/ports/lang/php5/Makefile.ext /usr/ports/lang/php5/Makefile.ext.old
sed -e 's#\(${TAR} -xf - ${EXTSUBDIR}\)#\1 ${DISTNAME}/ext/spl#' \
	< /usr/ports/lang/php5/Makefile.ext.old \
	> /usr/ports/lang/php5/Makefile.ext
How-To-Repeat: 	cd /usr/ports/texproc/php5-simplexml; make
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2007-05-27 05:10:25 UTC
Responsible Changed
From-To: freebsd-ports-bugs->ale

Over to maintainer
Comment 2 Alex Dupre freebsd_committer freebsd_triage 2007-05-27 07:44:43 UTC
State Changed
From-To: open->closed

Your php installation in screwed up, remove all php ports and 
reinstall them.