# Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI="5" inherit eutils multilib DRIVERS="mcaldrivers-0.9" SRC_URI_BASE="mirror://sourceforge/libmcal" DESCRIPTION="Modular Calendar Access Library" HOMEPAGE="http://mcal.chek.com/" SRC_URI="${SRC_URI_BASE}/${P}.tar.gz ${SRC_URI_BASE}/${DRIVERS}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" IUSE="pam" DOCS="CHANGELOG FAQ-MCAL FEATURE-IMPLEMENTATION HOW-TO-MCAL README" DEPEND="pam? ( virtual/pam )" S=${WORKDIR}/${PN} src_prepare() { mv "${S}"/../mcal-drivers/* "${S}"/ einfo "Using /var/spool/calendar instead of /var/calendar" for i in FAQ-MCAL HOW-TO-MCAL mstore/mstore.c mstore/README mstore/Changelog; do sed -e 's|/var/calendar|/var/spool/calendar|g' -i ${i} || die done cd "${S}" epatch "${FILESDIR}"/${PN}-0.7-r6-fpic.patch epatch "${FILESDIR}"/${PN}-0.7-libdir.patch epatch "${FILESDIR}"/${PN}-0.7-r6-gcc4.patch epatch "${FILESDIR}"/${PN}-0.7-flexfix.patch epatch "${FILESDIR}"/${PN}-0.7-flex-2.5.37.patch } src_configure() { use pam && export CFLAGS="${CFLAGS} -DUSE_PAM -lpam" LDFLAGS="${LDFLAGS} -lpam" } src_compile() { einfo "Setting up mstore back-end" cd "${S}"/mstore emake CC="$(tc-getCC)" CFLAGS="${CFLAGS} -I.." LDFLAGS="${LDFLAGS}" einfo "Setting up icap back-end" cd "${S}"/icap emake CC="$(tc-getCC)" CFLAGS="${CFLAGS} -I.." LDFLAGS="${LDFLAGS}" cd "${S}" myconf="--with-mstore --with-icap" # Sorry repoman, this econf cannot be run until the above two compiles are # done. econf ${myconf} --libdir=/usr/$(get_libdir) emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" } src_install() { emake DESTDIR="${D}" install dodoc ${DOCS} newdoc mstore/README mstore-README newdoc mstore/Changelog mstore-Changelog newdoc icap/Changelog icap-Changelog dohtml FUNCTION-REF.html keepdir /var/spool/calendar fperms 1777 "${ROOT}"/var/spool/calendar } pkg_postinst() { einfo "You should start adding users to your calendar. ( e.g. htpasswd -c /etc/mpasswd username )" }