During the development of 5209R, Michael came up against a pretty big problem. The PHP library for CCE that is used to communicate from the GUI to the back-end of BlueOnyx would not compile. Michael made a valiant effort to get around this, but sadly - this was not resolved.
Currently, 5209R is built with a workaround. Instead of a library coded in C with new functions imported into PHP, Michael created a PHP library with all of the functionality written in PHP - talking to CCE directly without any library. While the current workaround works - it is not as fast as the previous library code that was written in C.
This wiki page is designed to document how to build the CCE library on a 5209R box, so that other helpers might assist in getting the official CCE library to build on 5209R
Build a clean 5209R server using a recent BlueOnyx cd. Login as root, and execute the following commands to be ready to do some build work.
yum -y install sausalito-devel-tools flex-devel gettext ln -s ~/rpmbuild/ /usr/src/redhat mkdir -p /home/devel/BlueOnyx/trunk cd /home/devel/BlueOnyx/trunk svn checkout https://devel.blueonyx.it/repos/trunk/BlueOnyx BlueOnyx
On 5209R, Michael disabled the build of the CCE client, and instead includes the other custom PHP library. To convert the build process to use the original library, execute the following commands to disable the new custom PHP library.
cd /home/devel/BlueOnyx/trunk/BlueOnyx/ cp utils/cce/client/php/src/Makefile 5209R/utils/cce/client/php/src/Makefile
The patches below are “work in progress” for what is needed to build CCE on 5209R
cd /home/devel/BlueOnyx/trunk/BlueOnyx/5209R/utils/cce sed -ie "s/^function_entry/zend_function_entry/" client/php/src/cce.c sed -ie "s/pval/zval/" client/php/src/cce.c sed -ie "s/getParameters/zend_get_parameters/" client/php/src/cce.c
cd /home/devel/BlueOnyx/trunk/BlueOnyx/5209R/utils/cce make clean make make rpm
If the above build process was successful, its now time to test. Below will be a set of instructions that can be used to validate if your library is working as expected.