| # Copyright 1999-2010 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-base/postgresql-base-8.2.14.ebuild,v 1.6 2010/01/07 20:28:56 beandog Exp $ |
| |
| EAPI="1" |
| |
| WANT_AUTOCONF="latest" |
| WANT_AUTOMAKE="none" |
| |
| inherit eutils multilib toolchain-funcs versionator autotools |
| |
| KEYWORDS="amd64 hppa ppc x86" |
| |
| DESCRIPTION="PostgreSQL libraries and clients" |
| HOMEPAGE="http://www.postgresql.org/" |
| SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2" |
| LICENSE="POSTGRESQL" |
| SLOT="$(get_version_component_range 1-2)" |
| IUSE_LINGUAS=" |
| linguas_af linguas_cs linguas_de linguas_es linguas_fa linguas_fr |
| linguas_hr linguas_hu linguas_it linguas_ko linguas_nb linguas_pl |
| linguas_pt_BR linguas_ro linguas_ru linguas_sk linguas_sl linguas_sv |
| linguas_tr linguas_zh_CN linguas_zh_TW" |
| IUSE="doc kerberos nls pam pg-intdatetime readline ssl threads zlib ldap ${IUSE_LINGUAS}" |
| RESTRICT="test" |
| |
| wanted_languages() { |
| for u in ${IUSE_LINGUAS} ; do |
| use $u && echo -n "${u#linguas_} " |
| done |
| } |
| |
| RDEPEND="kerberos? ( virtual/krb5 ) |
| pam? ( virtual/pam ) |
| readline? ( >=sys-libs/readline-4.1 ) |
| ssl? ( >=dev-libs/openssl-0.9.6-r1 ) |
| zlib? ( >=sys-libs/zlib-1.1.3 ) |
| >=app-admin/eselect-postgresql-0.3 |
| virtual/libintl |
| !dev-db/postgresql-libs |
| !dev-db/postgresql-client |
| !dev-db/libpq |
| !dev-db/postgresql |
| ldap? ( net-nds/openldap )" |
| DEPEND="${RDEPEND} |
| sys-devel/flex |
| >=sys-devel/bison-1.875 |
| nls? ( sys-devel/gettext )" |
| PDEPEND="doc? ( dev-db/postgresql-docs:${SLOT} )" |
| |
| S="${WORKDIR}/postgresql-${PV}" |
| |
| src_unpack() { |
| unpack ${A} |
| cd "${S}" |
| |
| epatch "${FILESDIR}/postgresql-${SLOT}-common.patch" \ |
| "${FILESDIR}/postgresql-${SLOT}-base.patch" \ |
| "${FILESDIR}/postgresql-8.x-relax_ssl_perms.patch" |
| |
| # to avoid collision - it only should be installed by server |
| rm "${S}/src/backend/nls.mk" |
| |
| # because psql/help.c includes the file |
| ln -s "${S}/src/include/libpq/pqsignal.h" "${S}/src/bin/psql/" |
| |
| eautoconf |
| } |
| |
| src_compile() { |
| econf --prefix=/usr/$(get_libdir)/postgresql-${SLOT} \ |
| --datadir=/usr/share/postgresql-${SLOT} \ |
| --sysconfdir=/etc/postgresql-${SLOT} \ |
| --includedir=/usr/include/postgresql-${SLOT} \ |
| --with-locale-dir=/usr/share/postgresql-${SLOT}/locale \ |
| --mandir=/usr/share/postgresql-${SLOT}/man \ |
| --without-docdir \ |
| --enable-depend \ |
| --without-tcl \ |
| --without-perl \ |
| --without-python \ |
| --without-libedit \ |
| $(use_with readline) \ |
| $(use_with kerberos krb5) \ |
| "$(use_enable nls nls "$(wanted_languages)")" \ |
| $(use_with pam) \ |
| $(use_enable pg-intdatetime integer-datetimes ) \ |
| $(use_with ssl openssl) \ |
| $(use_enable threads thread-safety) \ |
| $(use_enable threads thread-safety-force) \ |
| $(use_with zlib) \ |
| $(use_with ldap) \ |
| ${myconf} \ |
| || die "configure failed" |
| |
| emake LD="$(tc-getLD) $(get_abi_LDFLAGS)" || die "emake failed" |
| |
| cd "${S}/contrib" |
| emake LD="$(tc-getLD) $(get_abi_LDFLAGS)" || die "emake failed" |
| } |
| |
| src_install() { |
| emake DESTDIR="${D}" install || die "emake install failed" |
| insinto /usr/include/postgresql-${SLOT}/postmaster |
| doins "${S}"/src/include/postmaster/*.h |
| dodir /usr/share/postgresql-${SLOT}/man/man1 |
| tar -zxf "${S}/doc/man.tar.gz" -C "${D}"/usr/share/postgresql-${SLOT}/man man1/{ecpg,pg_config}.1 |
| |
| rm "${D}/usr/share/postgresql-${SLOT}/man/man1"/{initdb,ipcclean,pg_controldata,pg_ctl,pg_resetxlog,pg_restore,postgres,postmaster}.1 |
| dodoc README HISTORY doc/{README.*,TODO,bug.template} |
| |
| cd "${S}/contrib" |
| emake DESTDIR="${D}" install || die "emake install failed" |
| cd "${S}" |
| |
| dodir /etc/eselect/postgresql/slots/${SLOT} |
| |
| IDIR="/usr/include/postgresql-${SLOT}" |
| cat > "${D}/etc/eselect/postgresql/slots/${SLOT}/base" <<-__EOF__ |
| postgres_ebuilds="\${postgres_ebuilds} ${PF}" |
| postgres_prefix=/usr/$(get_libdir)/postgresql-${SLOT} |
| postgres_datadir=/usr/share/postgresql-${SLOT} |
| postgres_bindir=/usr/$(get_libdir)/postgresql-${SLOT}/bin |
| postgres_symlinks=( |
| ${IDIR} /usr/include/postgresql |
| ${IDIR}/libpq-fe.h /usr/include/libpq-fe.h |
| ${IDIR}/libpq /usr/include/libpq |
| ${IDIR}/postgres_ext.h /usr/include/postgres_ext.h |
| ) |
| __EOF__ |
| |
| cat >"${T}/50postgresql-95-${SLOT}" <<-__EOF__ |
| LDPATH=/usr/$(get_libdir)/postgresql-${SLOT}/$(get_libdir) |
| MANPATH=/usr/share/postgresql-${SLOT}/man |
| __EOF__ |
| doenvd "${T}/50postgresql-95-${SLOT}" |
| |
| keepdir /etc/postgresql-${SLOT} |
| } |
| |
| pkg_postinst() { |
| eselect postgresql update |
| [[ "$(eselect postgresql show)" = "(none)" ]] && eselect postgresql set ${SLOT} |
| elog "If you need a global psqlrc-file, you can place it in '${ROOT}/etc/postgresql-${SLOT}/'." |
| } |
| |
| pkg_postrm() { |
| eselect postgresql update |
| } |