PHP_EXT_NAME="xcache" PHP_EXT_INI="yes" PHP_EXT_ZENDEXT="yes" [[ -z "${X_CACHEDIR}" ]] && X_CACHEDIR="/var/cache/eaccelerator" inherit php-ext-source-r1 MY_P="${P/_/-}" MY_PV="${PV/_/-}" S="${WORKDIR}/xcache" KEYWORDS="~x86 ~amd64" DESCRIPTION="XCache is a fast, stable PHP opcode cacher that has been tested and is now running on production servers under high load." HOMEPAGE="http://trac.lighttpd.net/xcache" SRC_URI="http://210.51.190.228/pub/XCache/Releases/${MY_P}.tar.gz http://210.51.190.228/pub/XCache/rc/${MY_PV}/${MY_P}.tar.gz" LICENSE="GPL-2" SLOT="0" IUSE="coverage disassembler" DEPEND="${DEPEND} !dev-php5/pecl-apc" # Webserver user and group, here for Apache. HTTPD_USER="apache" HTTPD_GROUP="apache" need_php_by_category pkg_setup() { has_php require_php_sapi_from cgi apache apache2 } src_compile() { has_php echo ${S} echo ${P} echo ${MY_P} echo ${WORKDIR} my_conf="--enable-xcache --enable-xcache-optimizer --enable-xcache-assembler --enable-xcache-encoder --enable-xcache-decoder" if [ use coverage ]; then my_conf="${my_conf} --enable-xcache-coverager" else my_conf="${my_conf} --disable-xcache-coverager" fi if [ use disassembler ]; then my_conf="${my_conf} --enable-xcache-disassembler" else my_conf="${my_conf} --disable-xcache-disassembler" fi php-ext-source-r1_src_compile } src_install() { php-ext-source-r1_src_install keepdir "${X_CACHEDIR}" fowners ${HTTPD_USER}:${HTTPD_GROUP} "${X_CACHEDIR}" fperms 750 "${X_CACHEDIR}" insinto "/usr/share/${PN}/admin" doins admin/* dodoc-php AUTHORS COPYING NEWS README THANKS php-ext-base-r1_addtoinifiles "auto_globals_jit" '"Off"' php-ext-base-r1_addtoinifiles "xcache.cacher" '"On"' php-ext-base-r1_addtoinifiles "xcache.size" '"1024"' php-ext-base-r1_addtoinifiles "xcache.count" '"1"' php-ext-base-r1_addtoinifiles "xcache.slots" '"128k"' php-ext-base-r1_addtoinifiles "xcache.ttl" '"0"' php-ext-base-r1_addtoinifiles "xcache.gc_interval" '"0"' php-ext-base-r1_addtoinifiles "xcache.var_size" '"1024"' php-ext-base-r1_addtoinifiles "xcache.var_count" '"1"' php-ext-base-r1_addtoinifiles "xcache.var_slots" '"128k"' php-ext-base-r1_addtoinifiles "xcache.var_ttl" '"0"' php-ext-base-r1_addtoinifiles "xcache.var_maxttl" '"0"' php-ext-base-r1_addtoinifiles "xcache.var_gc_interval" '"300"' php-ext-base-r1_addtoinifiles "xcache.readonly_protection" '"Off"' php-ext-base-r1_addtoinifiles "xcache.mmap_path" '"/tmp/xcache_mmap"' } pkg_postinst() { # You only need to restart the webserver if you're using mod_php. if built_with_use =${PHP_PKG} apache || built_with_use =${PHP_PKG} apache2 || built_with_use =${PHP_PKG} cgi; then einfo einfo "You need to restart your Webserver/cgi-php to activate xcache." einfo fi }