From 43793fab84041cfc5c60c0151d1591b8a69fb24a Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 25 Aug 2018 07:36:27 +0100 Subject: gentoo resync : 25.08.2018 --- dev-db/clickhouse/Manifest | 4 +- dev-db/clickhouse/clickhouse-18.10.3.ebuild | 200 ++++++++++++++++++++++++ dev-db/clickhouse/files/clickhouse-server.initd | 1 - 3 files changed, 203 insertions(+), 2 deletions(-) create mode 100644 dev-db/clickhouse/clickhouse-18.10.3.ebuild (limited to 'dev-db/clickhouse') diff --git a/dev-db/clickhouse/Manifest b/dev-db/clickhouse/Manifest index 438d0120484d..ffd6cf8dd1f4 100644 --- a/dev-db/clickhouse/Manifest +++ b/dev-db/clickhouse/Manifest @@ -1,6 +1,8 @@ -AUX clickhouse-server.initd 452 BLAKE2B d083713e917c2e436316a42adccf8698159c268b4deeca8ce04548e0fb71de2db43a4f4ad3a0ca9b74c3e677cc006386b07a5099d8ae6247da246912ec009545 SHA512 553c4f59c5210c30b219507320debc5b1f9e33b777bc04a37a8598d433a34642e4e653dc74bdd11573e99f20ae9d869c8772d3f36a8e962eb76775695bee2ff7 +AUX clickhouse-server.initd 445 BLAKE2B 166b867de3ad86f814cfbbdfa86a9328a3a54a88438e628f790cc6be1e0eee272effa06db37bdb0d31a41ac1551321b5a756bbfe3a9a8381e327e12515253da1 SHA512 98d396709899a428012fb8f01fbd861359913e12d765924a6a20e5f5cf0da73a2c8b0561a061d4c581443259605841f55fa33ee881f8eb764d6d2446dd4bf849 AUX clickhouse-server.service 307 BLAKE2B 1f443f68db97408cb2b0a8e9007195cdc5d6e29f54e55b3bd2b023cfbcb9d3ee4c1083503f83a42cfd18bca3320dfa86571434fe89612fb0a1f5a9e178eb706b SHA512 185db8aed69b178540225fa41f623a78af09e30d2dd1e033baf4d7c80451e702f5d6b9ce5240f7f6fb6d63a4ebed5af4d483515c7e6fe019e7fd44334df4ab37 DIST cctz-4f9776a.tar.gz 290009 BLAKE2B 532eb7d590f9814c05cc7fdd3c75efe0a6b3f81d85201b14163a9600dd858c4fbac592270d0afccd7d5eef0080d7e70e9d716023bdb60d55479585e2cd3d3f59 SHA512 ba0dfc404cc70f03ef2be29fa3b0c70ea881c92a92525ea4ba1b5bcfc9e45df1b62a5eec180f498293e64bdd5cb9b41f97361cbb7e8baf299dcfdcd1557ca205 +DIST clickhouse-18.10.3.tar.gz 6136661 BLAKE2B 5564bbe85f4ca43f18df702148af0e4e5b5a8826994d90f29beb3a37cdbeb36f9d3ec77d9c7bc6f843e7586e5441aeb0937548eb5eb61d27cecc5790d8c21a5b SHA512 c78386922388cf910a995b569724eb22fc41ab60e765a4d3644c4a48d8b9a67ef28b7e375186b2eb00c43b4f06e90783084f4ac4d3789f1b6e4251ee30e8833c DIST clickhouse-18.6.0.tar.gz 5852534 BLAKE2B 5634fd26907b21d4a35cff3ed816696205be4aff1cdd1acfe222e24214b1842eb18a4e499e888b0d92b78f5c3023c2962a385af2c0ea889055e473dfa0198bf5 SHA512 e8ea2d4457122513cad47b1cdb2a58dd2ffaec77a7a08bf82179aca12a369d39970520a995bb5db2e5ea4b0939da827b7d4b1f3929cf71c149c965438ebb3633 +EBUILD clickhouse-18.10.3.ebuild 4915 BLAKE2B 3f6f0f1cea60a283b325b80100fc56ffcb548e6af01240a12a5f6a6aad521977c63e8918d3742c52c0fef2d5c79144f6a1f9cb95749a6c140cb16548af432f4a SHA512 0ecc73385521a4d916e8834d22e05a8be07fb0b2d6a4bcc3350dfab100717839835e4a47a17d87f50f98acbf420b077dc7f9db800e3456915dc2ed81fc0197ba EBUILD clickhouse-18.6.0.ebuild 4903 BLAKE2B d363915e46bfe1489e07f9ae9b07a39c146603af9496ab98371b053241566e02c7b85cf64a985ef8958e83a8741ac20583917e8268cec80702e4d37e69d8e110 SHA512 443eb0cd7f343eaff895dfbcb6a98abc4b2734495e2abd9c9f51e613fc2ac8698797bb5f780178c86bc0d8621cfe0b976470c7c4b9ec0bd337fa0599f0d01848 MISC metadata.xml 738 BLAKE2B 861f40f506964d64cf646f043406945dc54950f48e27d4eb28b6fc0f96bf0ceb093520a0b60d813460fbe8b99ba4858f0a49d30abcb25567f44411c78a02f6e7 SHA512 6d87cc967c081b5a5e60136f5928d7b17c65c3a1c26aa1e45a50e74d5383bb665682a8b0cb5cce0496bebcac1f5e27aace8a8373253c031acc3c166c382e0056 diff --git a/dev-db/clickhouse/clickhouse-18.10.3.ebuild b/dev-db/clickhouse/clickhouse-18.10.3.ebuild new file mode 100644 index 000000000000..fa20957d2696 --- /dev/null +++ b/dev-db/clickhouse/clickhouse-18.10.3.ebuild @@ -0,0 +1,200 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +CMAKE_MAKEFILE_GENERATOR="ninja" + +inherit cmake-utils systemd toolchain-funcs user + +DESCRIPTION="An OSS column-oriented database management system for real-time data analysis" +HOMEPAGE="https://clickhouse.yandex" +LICENSE="Apache-2.0" + +MY_PN="ClickHouse" +TYPE="stable" + +CCTZ_COMMIT="4f9776a" +SRC_URI="https://github.com/yandex/${MY_PN}/archive/v${PV}-${TYPE}.tar.gz -> ${P}.tar.gz + https://github.com/google/cctz/archive/${CCTZ_COMMIT}.tar.gz -> cctz-${CCTZ_COMMIT}.tar.gz +" + +SLOT="0/${TYPE}" +IUSE="+client cpu_flags_x86_sse4_2 +server debug doc kafka mongodb mysql static test tools zookeeper" +KEYWORDS="~amd64" + +REQUIRED_USE=" + server? ( cpu_flags_x86_sse4_2 ) + static? ( client server tools ) +" + +RDEPEND=" + dev-libs/re2:0= + !static? ( + >=app-arch/lz4-1.8.0:= + >=app-arch/zstd-1.3.4:= + client? ( + sys-libs/ncurses:0= + sys-libs/readline:0= + ) + + dev-libs/double-conversion + dev-libs/capnproto + dev-libs/libltdl:0 + sys-libs/libunwind:7 + sys-libs/zlib + || ( + dev-db/unixODBC + dev-libs/poco[odbc] + ) + dev-libs/icu:= + dev-libs/glib + >=dev-libs/boost-1.65.0:= + dev-libs/openssl:0= + dev-libs/zookeeper-c + kafka? ( dev-libs/librdkafka:= ) + mysql? ( virtual/libmysqlclient ) + ) + + >=dev-libs/poco-1.9.0 + dev-libs/libpcre +" + +DEPEND="${RDEPEND} + doc? ( >=dev-python/mkdocs-1.0.1 ) + static? ( + >=app-arch/lz4-1.8.0[static-libs] + >=app-arch/zstd-1.3.4[static-libs] + client? ( + sys-libs/ncurses:0=[static-libs] + sys-libs/readline:0=[static-libs] + ) + dev-libs/double-conversion[static-libs] + dev-libs/capnproto[static-libs] + dev-libs/libltdl[static-libs] + sys-libs/libunwind:7[static-libs] + sys-libs/zlib[static-libs] + || ( + dev-db/unixODBC[static-libs] + dev-libs/poco[odbc] + ) + dev-libs/icu[static-libs] + dev-libs/glib[static-libs] + >=dev-libs/boost-1.65.0[static-libs] + dev-libs/openssl[static-libs] + dev-libs/zookeeper-c[static-libs] + virtual/libmysqlclient[static-libs] + kafka? ( dev-libs/librdkafka[static-libs] ) + ) + + sys-libs/libtermcap-compat + dev-util/patchelf + >=sys-devel/lld-6.0.0 + || ( + >=sys-devel/gcc-7.0 + >=sys-devel/clang-6.0 + ) +" + +S="${WORKDIR}/${MY_PN}-${PV}-${TYPE}" + +_clang_fullversion() { + local ver="$1"; shift + set -- $($(tc-getCPP "$@") -E -P - <<<"__clang_major__ __clang_minor__ __clang_patchlevel__") + eval echo "$ver" +} + +clang-fullversion() { + _clang_fullversion '$1.$2.$3' "$@" +} + +clang-version() { + _clang_fullversion '$1.$2' "$@" +} + +clang-major-version() { + _clang_fullversion '$1' "$@" +} + +clang-minor-version() { + _clang_fullversion '$2' "$@" +} + +clang-micro-version() { + _clang_fullversion '$3' "$@" +} + +pkg_pretend() { + if [[ $(tc-getCC) == clang ]]; then + if [[ $(clang-major-version) -lt 6 ]]; then + eerror "Compilation with clang older than 6.0 is not supported" + die "Too old clang found" + fi + : + elif [[ $(gcc-major-version) -lt 7 ]] && [[$(gcc-minor-version) -lt 2 ]]; then + eerror "Compilation with gcc older than 7.2 is not supported" + die "Too old gcc found" + fi +} + +src_unpack() { + default_src_unpack + [[ ${PV} == 9999 ]] && return 0 + cd "${S}/contrib" || die "failed to cd to contrib" + mkdir -p cctz zookeeper zstd || die "failed to create directories" + tar --strip-components=1 -C cctz -xf "${DISTDIR}/cctz-${CCTZ_COMMIT}.tar.gz" || die "failed to unpack cctz" +} + +src_configure() { + local mycmakeargs=( + -DENABLE_POCO_MONGODB="$(usex mongodb)" + -DENABLE_RDKAFKA="$(usex kafka)" + -DENABLE_TESTS="$(usex test)" + -DUSE_STATIC_LIBRARIES="$(usex static)" + -DMAKE_STATIC_LIBRARIES="$(usex static)" + -DUSE_MYSQL="$(usex mysql)" + -DENABLE_CLICKHOUSE_SERVER="$(usex server)" + -DENABLE_CLICKHOUSE_CLIENT="$(usex client)" + -DENABLE_CLICKHOUSE_LOCAL="$(usex tools)" + -DENABLE_CLICKHOUSE_BENCHMARK="$(usex tools)" + -DENABLE_CLICKHOUSE_PERFORMANCE="$(usex tools)" + -DENABLE_CLICKHOUSE_EXTRACT_FROM_CONFIG="$(usex tools)" + -DENABLE_CLICKHOUSE_COMPRESSOR="$(usex tools)" + -DENABLE_CLICKHOUSE_COPIER="$(usex tools)" + -DENABLE_CLICKHOUSE_COPIER="$(usex tools)" + -DENABLE_CLICKHOUSE_ALL=OFF + -DUSE_INTERNAL_SSL_LIBRARY=False + -DUSE_INTERNAL_CITYHASH_LIBRARY=ON # Clickhouse explicitly requires bundled patched cityhash + -DUNBUNDLED=ON + ) + + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + if ! use test; then + rm -rf "${D}/usr/share/clickhouse-test" || die "failed to remove tests" + fi + + if use doc; then + pushd "${S}/docs/tools" || die "Failed to enter docs build directory" + ./build.py || die "Failed to build docs" + popd || die "Failed to exit docs build directory" + + dodoc -r "${S}/docs/build" + fi + + if use server; then + newinitd "${FILESDIR}"/clickhouse-server.initd clickhouse-server + systemd_dounit "${FILESDIR}"/clickhouse-server.service + fi +} + +pkg_preinst() { + if use server; then + enewgroup clickhouse + enewuser clickhouse -1 -1 /var/lib/clickhouse clickhouse + fi +} diff --git a/dev-db/clickhouse/files/clickhouse-server.initd b/dev-db/clickhouse/files/clickhouse-server.initd index 57c91cd2389c..5e787c0c1fa6 100644 --- a/dev-db/clickhouse/files/clickhouse-server.initd +++ b/dev-db/clickhouse/files/clickhouse-server.initd @@ -1,7 +1,6 @@ #!/sbin/openrc-run # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Id$ pidfile="/run/clickhouse-server.pid" command_background=1 -- cgit v1.2.3