diff options
Diffstat (limited to 'dev-db/drizzle/drizzle-7.2.4.ebuild')
-rw-r--r-- | dev-db/drizzle/drizzle-7.2.4.ebuild | 168 |
1 files changed, 168 insertions, 0 deletions
diff --git a/dev-db/drizzle/drizzle-7.2.4.ebuild b/dev-db/drizzle/drizzle-7.2.4.ebuild new file mode 100644 index 000000000000..d7eb1687552f --- /dev/null +++ b/dev-db/drizzle/drizzle-7.2.4.ebuild @@ -0,0 +1,168 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit python flag-o-matic libtool autotools eutils pam user versionator + +MY_P="${P}-alpha" +S="${WORKDIR}/${MY_P}" + +DESCRIPTION="Database optimized for Cloud and Net applications" +HOMEPAGE="http://drizzle.org" +SRC_URI="http://launchpad.net/drizzle/$(get_version_component_range 1-2)/${PV}/+download/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug tcmalloc doc memcache curl pam gearman +md5 ldap v8" + +RDEPEND="tcmalloc? ( dev-util/google-perftools ) + sys-libs/readline + sys-apps/util-linux + dev-libs/libpcre + dev-libs/openssl + >=dev-libs/libevent-1.4 + >=dev-libs/protobuf-2.1.0 + dev-libs/libaio + >=dev-libs/boost-1.52.0-r1:=[threads] + gearman? ( >=sys-cluster/gearmand-0.12 ) + pam? ( sys-libs/pam ) + curl? ( net-misc/curl ) + memcache? ( >=dev-libs/libmemcached-0.39 ) + md5? ( >=dev-libs/libgcrypt-1.4.2:0 ) + ldap? ( net-nds/openldap ) + v8? ( dev-lang/v8 ) + !dev-db/libdrizzle" + +DEPEND="${RDEPEND} + =dev-lang/python-2* + sys-devel/gettext + dev-util/intltool + dev-util/gperf + sys-devel/flex + dev-python/sphinx + doc? ( app-doc/doxygen )" + +pkg_setup() { + enewuser drizzle -1 -1 /dev/null nogroup + python_set_active_version 2 + python_pkg_setup +} + +src_prepare() { + epatch \ + "${FILESDIR}/${PN}-7.2.3-libtool.patch" \ + "${FILESDIR}/${PN}-7.2.3+automake-1.12.patch" \ + "${FILESDIR}/${PN}-7.2.4+boost-1.50.patch" \ + "${FILESDIR}/${P}-fix-boost_thread-detection.patch" + + python_convert_shebangs -r 2 . + + epatch_user + eautoreconf +} + +src_configure() { + local myconf= + + if use debug; then + append-cppflags -DDEBUG + fi + + # while I applaud upstreams goal of 0 compiler warnings + # the 1412 release didn't achieve it. + append-flags -Wno-error + + # NOTE disable-all and without-all no longer recognized options + # NOTE using --enable on some plugins can cause test failures. + # --with should be used instead. A discussion about this here: + # https://bugs.launchpad.net/drizzle/+bug/598659 + # TODO (upstream) + # $(use_with memcache memcached-stats-plugin) \ + # $(use_with memcache memcached-functions-plugin) \ + + econf \ + --disable-static \ + --disable-dependency-tracking \ + --disable-mtmalloc \ + --without-hello-world-plugin \ + --disable-rabbitmq-plugin --without-rabbitmq-plugin \ + --disable-zeromq-plugin --without-zeromq-plugin \ + --with-auth-test-plugin \ + --with-auth-file-plugin \ + --with-simple-user-policy-plugin \ + --enable-logging-stats-plugin \ + --with-logging-stats-plugin \ + --enable-console-plugin \ + $(use_enable gearman libgearman) \ + $(use_enable ldap libldap) \ + $(use_enable memcache libmemcached) \ + $(use_enable tcmalloc) \ + $(use_with curl auth-http-plugin) \ + $(use_with gearman gearman-udf-plugin) \ + $(use_with gearman logging-gearman-plugin) \ + $(use_with ldap auth-ldap-plugin) \ + $(use_with md5 md5-plugin) \ + $(use_with pam auth-pam-plugin) \ + $(use_with v8 js-plugin) \ + ${myconf} +} + +src_compile() { + emake V=1 all $(use doc && echo doxygen) +} + +# currently not working as of 7.2.3 +RESTRICT=test + +src_test() { + if [[ ${EUID} == 0 ]]; then + eerror "You cannot run tests as root." + eerror "Please enable FEATURES=userpriv before proceeding." + return 1 + fi + + default +} + +DOCS=( AUTHORS NEWS README ) + +src_install() { + default + + find "${D}" -name '*.la' -delete || die + + if use doc; then + docinto apidoc + pushd docs/html + dohtml -r . + popd + fi + + newinitd "${FILESDIR}"/drizzle.init.d.2 drizzled + newconfd "${FILESDIR}"/drizzle.conf.d drizzled + + if ! use gearman; then + sed -i -e '/need gearmand/d' "${D}"/etc/init.d/drizzled \ + || die "unable to sed init script (gearman)" + fi + + if ! use memcache; then + sed -i -e '/need memcached/d' "${D}"/etc/init.d/drizzled \ + || die "unable to sed init script (memcache)" + fi + + keepdir /var/log/drizzle + keepdir /var/lib/drizzle/drizzled + keepdir /etc/drizzle + + fperms 0755 /var/log/drizzle + fperms -R 0700 /var/lib/drizzle + + fowners drizzle:nogroup /var/log/drizzle + fowners -R drizzle:nogroup /var/lib/drizzle + + pamd_mimic system-auth drizzle auth account session +} |