# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ EAPI="2" PHP_EXT_NAME="mapi" PHP_EXT_INI="yes" PHP_EXT_ZENDEXT="no" USE_PHP="php5-3" inherit php-ext-source-r2 eutils autotools rpm5 versionator MY_PV=$(replace_version_separator 3 '-' ) MY_PVM=$(get_version_component_range 1-2 ) MY_PVR=$(get_version_component_range 1-3 ) DESCRIPTION="Open Source Groupware Solution" HOMEPAGE="http://zarafa.com/" SRC_URI="http://download.zarafa.com/community/final/${MY_PVM}/${MY_PV}/zcp-source-${MY_PV}.tgz !arm? ( licensed? ( amd64? ( http://download.zarafa.com/community/final/${MY_PVM}/${MY_PV}/zcp-${MY_PV}-sles-11-x86_64-free.tgz ) x86? ( http://download.zarafa.com/community/final/${MY_PVM}/${MY_PV}/zcp-${MY_PV}-sles-11-i586-free.tgz ) ) )" LICENSE="AGPL-3" SLOT="0" KEYWORDS="~amd64 ~arm ~x86" RESTRICT="" IUSE="debug ldap logrotate licensed static tcmalloc perl kerberos sparsehash" RDEPEND=">=dev-libs/libical-0.44 dev-cpp/libvmime:0.7 app-text/catdoc app-text/poppler dev-cpp/clucene dev-db/mysql dev-libs/libxml2 dev-libs/openssl net-misc/curl sys-libs/e2fsprogs-libs sys-libs/zlib sys-libs/ncurses sys-libs/pam kerberos? ( || ( app-crypt/mit-krb5 app-crypt/heimdal ) ) ldap? ( net-nds/openldap ) logrotate? ( app-admin/logrotate ) tcmalloc? ( dev-util/google-perftools ) sparsehash? ( dev-cpp/sparsehash ) perl? ( dev-lang/perl ) !arm? ( licensed? ( dev-libs/openssl:0.9.8 >=sys-libs/zlib-1.2.4 ) )" S="${WORKDIR}"/zcp-source-${MY_PV}/src DEPEND="${RDEPEND} dev-util/pkgconfig sys-devel/gettext dev-lang/php" QA_PRESTRIPPED=" usr/bin/zarafa-restore usr/bin/zarafa-report usr/bin/zarafa-backup usr/bin/zarafa-licensed usr/lib/zarafa/ldapmsplugin.so usr/lib64/zarafa/ldapmsplugin.so" QA_DT_HASH=" usr/bin/zarafa-restore usr/bin/zarafa-report usr/bin/zarafa-backup usr/bin/zarafa-licensed usr/lib/zarafa/ldapmsplugin.so usr/lib64/zarafa/ldapmsplugin.so" src_unpack() { unpack ${A} if ! use arm; then if use licensed; then cd "${WORKDIR}" mkdir licensed cd licensed if use x86; then rpm5_unpack $(find ./../ -name "zarafa-licensed*") # rpm5_unpack $(find ./../ -name "zarafa-webaccess-muc*") fi if use amd64; then rpm5_unpack $(find ./../ -name "zarafa-licensed*") # rpm5_unpack $(find ./../ -name "zarafa-webaccess-muc*") fi cd "${S}" fi fi } src_prepare() { EPATCH_SOURCE="${FILESDIR}/patches" EPATCH_SUFFIX="patch" \ EPATCH_FORCE="yes" epatch edos2unix php-webclient-ajax/config.php.dist AT_M4DIR="autoconf" eautoreconf } src_configure() { econf \ --enable-oss \ --disable-perl \ --disable-testtools \ --enable-release \ --with-userscript-prefix=/etc/zarafa/userscripts \ --with-quotatemplate-prefix=/etc/zarafa/quotamails \ --with-indexerscripts-prefix=/etc/zarafa/indexerscripts \ $(use_enable perl) \ $(use_enable static) \ $(use_enable sparsehash) \ $(use_enable tcmalloc) \ $(use_enable debug) } src_install() { make DESTDIR="${D}" install || die "make install failed" make DESTDIR="${D}" install-ajax-webaccess || die "make install-ajax-webaccess failed" make DESTDIR="${D}" install-mobile-webaccess || die "make install-mobile-webaccess failed" insinto /etc/apache2/modules.d newins "${FILESDIR}/50_zarafa-webaccess-mobile.conf" 50_zarafa-webaccess-mobile.conf || die "Failed to install apache config files" newins "${FILESDIR}/50_zarafa-webaccess.conf" 50_zarafa-webaccess.conf || die "Failed to install apache config files" rm "${D}"/usr/share/zarafa-webaccess/*.conf || die "Failed to remove apache config files" rm "${D}"/usr/share/zarafa-webaccess-mobile/*.conf || die "Failed to remove apache config files" # Use only some parts of PHP eclass php-ext-source-r2_buildinilist php${slot} php-ext-source-r2_addextension "${PHP_EXT_NAME}.so" # Symlink the .ini files from ext/ to ext-active/ for inifile in ${PHPINIFILELIST} ; do inidir="${inifile/${PHP_EXT_NAME}.ini/}" inidir="${inidir/ext/ext-active}" dodir "/${inidir}" dosym "/${inifile}" "/${inifile/ext/ext-active}" done # Install PHP module php-ext-source-r2_addtoinifiles ";mapi.cache_max_sessions" "128" php-ext-source-r2_addtoinifiles ";mapi.cache_lifetime" "300" if use logrotate; then insinto /etc/logrotate.d newins "${FILESDIR}"/zarafa.logrotate zarafa || die "Failed to install logrotate" fi # install ldap files if use ldap; then insinto /etc/openldap/schema doins installer/ldap/zarafa.* || die "Failed to install ldap schema files" fi insinto /etc/zarafa doins installer/linux/*.cfg || die "Failed to install config files" dodir /var/log/zarafa keepdir /var/log/zarafa if ! use arm; then if use licensed; then dobin "${WORKDIR}"/licensed/usr/bin/* || die "Failed to install licensed binaries" exeinto /usr/$(get_libdir)/zarafa/ doexe "${WORKDIR}"/licensed/usr/$(get_libdir)/zarafa/*.so || die "Failed to install licensed lib" doman "${WORKDIR}"/licensed/usr/share/man/*/*.gz || die "Failed to install man files" exeinto /usr/share/zarafa/zarafa-backup-helpers/ doexe "${WORKDIR}"/licensed/usr/share/zarafa/zarafa-backup-helpers/* || die "Failed to install helper scripts" dodoc "${WORKDIR}"/licensed/usr/share/doc/packages/zarafa-licensed/* || die "Failed to install docs" insinto /etc/zarafa doins -r "${WORKDIR}"/licensed/etc/zarafa/* || die "Failed to install config files" insinto /etc/cron.d doins "${WORKDIR}"/licensed/etc/cron.d/* || die "Failed to install cron files" # insinto /usr/share/zarafa-webaccess/ # doins -r "${WORKDIR}"/licensed/usr/share/zarafa-webaccess/* || die "Failed to install webapp files" newinitd "${FILESDIR}"/zarafa-licensed.rc6 zarafa-licensed || die "Failed to install init.d files" fi fi newinitd "${FILESDIR}"/zarafa-gateway.rc6 zarafa-gateway || die "Failed to install init.d files" newinitd "${FILESDIR}"/zarafa-ical.rc6 zarafa-ical || die "Failed to install init.d files" newinitd "${FILESDIR}"/zarafa-indexer.rc6 zarafa-indexer || die "Failed to install init.d files" newinitd "${FILESDIR}"/zarafa-monitor.rc6 zarafa-monitor || die "Failed to install init.d files" newinitd "${FILESDIR}"/zarafa-server.rc6 zarafa-server || die "Failed to install init.d files" newinitd "${FILESDIR}"/zarafa-spooler.rc6 zarafa-spooler || die "Failed to install init.d files" newinitd "${FILESDIR}"/zarafa-dagent.rc6 zarafa-dagent || die "Failed to install init.d files" }