+++ /dev/null
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-WANT_AUTOMAKE="1.9"
-MY_P=${P/_alpha/.a}
-MY_P=${MY_P/_rc/.rc}
-
-inherit user eutils multilib flag-o-matic autotools
-
-DESCRIPTION="389 Directory Server (core librares and daemons )"
-HOMEPAGE="http://port389.org/"
-SRC_URI="http://directory.fedoraproject.org/sources/${MY_P}.tar.bz2"
-
-LICENSE="GPL-2-with-exceptions"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="autobind auto-dn-suffix debug doc +pam-passthru +dna +ldapi +bitwise +presence kerberos selinux"
-
-ALL_DEPEND="
- !>=sys-libs/db-5.0
- >=dev-libs/cyrus-sasl-2.1.19
- >=dev-libs/icu-3.4:=
- dev-libs/nss[utils]
- dev-libs/nspr
- dev-libs/svrcore
- dev-libs/openssl:0=
- dev-libs/libpcre:3
- dev-perl/perl-mozldap
- >=net-analyzer/net-snmp-5.1.2
- net-nds/openldap
- sys-apps/tcp-wrappers
- >=sys-libs/db-4.5:=
- sys-libs/pam
- sys-libs/zlib
- kerberos? ( >=app-crypt/mit-krb5-1.7-r100[openldap] )"
-
-DEPEND="${ALL_DEPEND}
- virtual/pkgconfig
- sys-devel/libtool
- doc? ( app-doc/doxygen )
- sys-apps/sed"
-RDEPEND="${ALL_DEPEND}
- selinux? ( sec-policy/selinux-dirsrv )
- virtual/perl-Time-Local
- virtual/perl-MIME-Base64"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_setup() {
- enewgroup dirsrv
- enewuser dirsrv -1 -1 -1 dirsrv
-}
-
-src_prepare() {
- # Fix compilation against mozldap
- # epatch "${FILESDIR}/389-ds-base-1.2.11-fix-mozldap.patch"
-
- # as per 389 documentation, when 64bit, export USE_64
- use amd64 && export USE_64=1
-
- sed -i -e 's/nobody/dirsrv/g' configure.ac || die "sed failed on configure.ac"
- eautoreconf
-
- # enable nsslapd-allow-unauthenticated-binds by default
- sed -i '/^nsslapd-allow-unauthenticated-binds/ s/off/on/' "${S}"/ldap/ldif/template-dse.ldif.in || \
- die "cannot tweak default setting: nsslapd-allow-unauthenticated-binds"
-
- append-lfs-flags
-}
-
-src_configure() {
- local myconf=""
-
- use auto-dn-suffix && myconf="${myconf} --enable-auto-dn-suffix"
-
- econf \
- $(use_enable debug) \
- $(use_enable pam-passthru) \
- $(use_enable ldapi) \
- $(use_enable autobind) \
- $(use_enable dna) \
- $(use_enable bitwise) \
- $(use_enable presence) \
- $(use_with kerberos) \
- --enable-maintainer-mode \
- --enable-autobind \
- --with-fhs \
- --with-openldap \
- $myconf
-}
-
-src_install () {
- # Use -j1 otherwise libacl-plugin.so could fail to install properly
- emake -j1 DESTDIR="${D}" install
-
- # install not installed header
- insinto /usr/include/dirsrv
- doins ldap/servers/slapd/slapi-plugin.h
-
- # for build free-ipa require winsync-plugin
- doins ldap/servers/plugins/replication/winsync-plugin.h
- doins ldap/servers/plugins/replication/repl-session-plugin.h
-
- # make sure perl scripts have a proper shebang
- cd "${D}"/usr/share/dirsrv/script-templates/ || die
-
- for i in $(find ./ -iname '*.pl') ;do
- sed -i -e 's/#{{PERL-EXEC}}/#\!\/usr\/bin\/perl/' $i || die
- done
-
- # remove redhat style init script
- rm -rf "${D}"/etc/rc.d || die
- rm -rf "${D}"/etc/default || die
-
- # and install gentoo style init script
- newinitd "${FILESDIR}"/389-ds.initd 389-ds
- newinitd "${FILESDIR}"/389-ds-snmp.initd 389-ds-snmp
-
- # install Gentoo-specific start/stop scripts
- rm -f "${D}"/usr/sbin/{re,}start-dirsrv || die "cannot remove 389 start/stop executables"
- dosbin "${FILESDIR}"/{re,}start-dirsrv
-
- # cope with libraries being in /usr/lib/dirsrv
- dodir /etc/env.d
- echo "LDPATH=/usr/$(get_libdir)/dirsrv" > "${D}"/etc/env.d/08dirsrv
-
- # create the directory where our log file and database
- dodir /var/lib/dirsrv
- keepdir /var/lib/dirsrv
- dodir /var/lock/dirsrv
- keepdir /var/lock/dirsrv
- # snmp agent, required directory
- keepdir /var/agentx
- dodir /var/agentx
-
- if use doc; then
- cd "${S}" || die
- doxygen slapi.doxy || die "cannot run doxygen"
- dohtml -r docs/html
- fi
-}
-
-pkg_postinst() {
- echo
- elog "If you are planning to use 389-ds-snmp (ldap-agent),"
- elog "make sure to properly configure: /etc/dirsrv/config/ldap-agent.conf"
- elog "adding proper 'server' entries, and adding the lines below to"
- elog " => /etc/snmp/snmpd.conf"
- elog
- elog "master agentx"
- elog "agentXSocket /var/agentx/master"
- elog
- elog "To start 389 Directory Server (LDAP service) at boot:"
- elog
- elog " rc-update add 389-ds default"
- elog
- elog "If you are upgrading from previous 1.2.6 release candidates"
- elog "please see:"
- elog "http://directory.fedoraproject.org/wiki/Subtree_Rename#warning:_upgrade_from_389_v1.2.6_.28a.3F.2C_rc1_.7E_rc6.29_to_v1.2.6_rc6_or_newer"
- echo
-
-}