Gentoo Archives: gentoo-commits

From: "罗百科" <patrick@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-db/clickhouse/
Date: Tue, 13 Aug 2019 14:24:46
Message-Id: 1565706262.4e4ece1ca7740ce58c574fe6bb11abfc4e235872.patrick@gentoo
1 commit: 4e4ece1ca7740ce58c574fe6bb11abfc4e235872
2 Author: Patrick Lauer <patrick <AT> gentoo <DOT> org>
3 AuthorDate: Tue Aug 13 14:24:22 2019 +0000
4 Commit: 罗百科 <patrick <AT> gentoo <DOT> org>
5 CommitDate: Tue Aug 13 14:24:22 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4e4ece1c
7
8 dev-db/clickhouse: Bump
9
10 Package-Manager: Portage-2.3.71, Repoman-2.3.17
11 Signed-off-by: Patrick Lauer <patrick <AT> gentoo.org>
12
13 dev-db/clickhouse/Manifest | 1 +
14 dev-db/clickhouse/clickhouse-19.13.1.11.ebuild | 204 +++++++++++++++++++++++++
15 2 files changed, 205 insertions(+)
16
17 diff --git a/dev-db/clickhouse/Manifest b/dev-db/clickhouse/Manifest
18 index 9a52ddcf42a..1e098f8ff8b 100644
19 --- a/dev-db/clickhouse/Manifest
20 +++ b/dev-db/clickhouse/Manifest
21 @@ -2,5 +2,6 @@ DIST cctz-4f9776a.tar.gz 290009 BLAKE2B 532eb7d590f9814c05cc7fdd3c75efe0a6b3f81d
22 DIST clickhouse-18.10.3.tar.gz 6136661 BLAKE2B 5564bbe85f4ca43f18df702148af0e4e5b5a8826994d90f29beb3a37cdbeb36f9d3ec77d9c7bc6f843e7586e5441aeb0937548eb5eb61d27cecc5790d8c21a5b SHA512 c78386922388cf910a995b569724eb22fc41ab60e765a4d3644c4a48d8b9a67ef28b7e375186b2eb00c43b4f06e90783084f4ac4d3789f1b6e4251ee30e8833c
23 DIST clickhouse-18.12.17.tar.gz 6495521 BLAKE2B 00dfb823b9e36923beb50a88bee88af3918bedc7b20079785699a42e36e52f32739f786bd78c5b350f58ae59251e3846da6202d04e24e9a750c92e16065cc395 SHA512 876c5fb6011c65b8ec201126678dad6f5de3430b7d320316ced5c6d22e8086ce337d20b73badbd053bf141097b8fe6cd94910ed607b4bbedb681cfa7921d1fb6
24 DIST clickhouse-18.6.0.tar.gz 5852534 BLAKE2B 5634fd26907b21d4a35cff3ed816696205be4aff1cdd1acfe222e24214b1842eb18a4e499e888b0d92b78f5c3023c2962a385af2c0ea889055e473dfa0198bf5 SHA512 e8ea2d4457122513cad47b1cdb2a58dd2ffaec77a7a08bf82179aca12a369d39970520a995bb5db2e5ea4b0939da827b7d4b1f3929cf71c149c965438ebb3633
25 +DIST clickhouse-19.13.1.11.zip 11502726 BLAKE2B c2788702a2c27c995abc072a94f3945ed6f9039fe0c7840312a86987faf52d2f7801d531e89a02848fa8ee1319247c41de0f3ad0c0cb51c1df1dbcfca3bd3b0a SHA512 095a0e63eff6989ea1f70fac593069e1cdb6ea207a99d8cfd610c4eb8f3f7411a784d9f100c9fc899898e68dd88dd54bec3c136764793c8cae986d920a651f8c
26 DIST clickhouse-19.5.3.8.zip 11247905 BLAKE2B f72289f55bddf9b3ad2e16a4d1fc6e4f7681477e742eda3694c3c16975820c93affc01c70b194c5992226d79bee714f706c04402c62bd0ed3d1701a16fb22192 SHA512 f578abbd43c3ccf721e079ce2bafac22be0c5d619388be192c59a2053ae1cf1e7f0a025e0323f0f8f004f879990a88c0ca0cd4d135606de51c576619fe0172b8
27 DIST clickhouse-19.9.5.36.zip 11708002 BLAKE2B 075f9b1556c5ee207a608047fa559cec7a0b1f044236e412189ae6dabe25aa04abf881726e4ffa17d4aad6937250c704f050935e61470994b57eaa1ac9ea07e4 SHA512 b0aa04a1c0f7c15316c83a2711f9b64f8235e664956f933530a9f2dc26fcb8b817adb8ca43c96db1cad498e06f4291ce13c0bb259726039c5caa52ae523fa4ab
28
29 diff --git a/dev-db/clickhouse/clickhouse-19.13.1.11.ebuild b/dev-db/clickhouse/clickhouse-19.13.1.11.ebuild
30 new file mode 100644
31 index 00000000000..bbf65016a54
32 --- /dev/null
33 +++ b/dev-db/clickhouse/clickhouse-19.13.1.11.ebuild
34 @@ -0,0 +1,204 @@
35 +# Copyright 1999-2019 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=6
39 +
40 +CMAKE_MAKEFILE_GENERATOR="ninja"
41 +
42 +inherit cmake-utils systemd toolchain-funcs user
43 +
44 +DESCRIPTION="An OSS column-oriented database management system for real-time data analysis"
45 +HOMEPAGE="https://clickhouse.yandex"
46 +LICENSE="Apache-2.0"
47 +
48 +MY_PN="ClickHouse"
49 +TYPE="stable"
50 +
51 +CCTZ_COMMIT="4f9776a"
52 +SRC_URI="https://github.com/yandex/${MY_PN}/archive/v${PV}-${TYPE}.zip -> ${P}.zip
53 + https://github.com/google/cctz/archive/${CCTZ_COMMIT}.tar.gz -> cctz-${CCTZ_COMMIT}.tar.gz
54 +"
55 +
56 +SLOT="0/${TYPE}"
57 +IUSE="+client cpu_flags_x86_sse4_2 +server debug doc kafka mongodb mysql static test tools"
58 +KEYWORDS="~amd64"
59 +
60 +REQUIRED_USE="
61 + server? ( cpu_flags_x86_sse4_2 )
62 + static? ( client server tools )
63 +"
64 +
65 +RDEPEND="
66 + dev-libs/re2:0=
67 + !static? (
68 + >=app-arch/lz4-1.8.0:=
69 + >=app-arch/zstd-1.3.4:=
70 + client? (
71 + sys-libs/ncurses:0=
72 + sys-libs/readline:0=
73 + )
74 +
75 + dev-libs/double-conversion
76 + dev-libs/capnproto
77 + dev-libs/libltdl:0
78 + sys-libs/libunwind:7
79 + sys-libs/zlib
80 + dev-libs/poco[odbc]
81 + dev-libs/icu:=
82 + dev-libs/glib
83 + >=dev-libs/boost-1.65.0:=
84 + dev-libs/openssl:0=
85 + kafka? ( dev-libs/librdkafka:= )
86 + mysql? ( virtual/libmysqlclient )
87 + )
88 +
89 + >=dev-libs/poco-1.9.0
90 + dev-libs/libpcre
91 + dev-libs/jemalloc
92 + dev-libs/protobuf
93 +"
94 +
95 +DEPEND="${RDEPEND}
96 + doc? ( >=dev-python/mkdocs-1.0.1 )
97 + static? (
98 + >=app-arch/lz4-1.8.0[static-libs]
99 + >=app-arch/zstd-1.3.4[static-libs]
100 + client? (
101 + sys-libs/ncurses:0=[static-libs]
102 + sys-libs/readline:0=[static-libs]
103 + )
104 + dev-libs/double-conversion[static-libs]
105 + dev-libs/capnproto[static-libs]
106 + dev-libs/libltdl[static-libs]
107 + sys-libs/libunwind:7[static-libs]
108 + sys-libs/zlib[static-libs]
109 + || (
110 + dev-db/unixODBC[static-libs]
111 + dev-libs/poco[odbc]
112 + )
113 + dev-libs/icu[static-libs]
114 + dev-libs/glib[static-libs]
115 + >=dev-libs/boost-1.65.0[static-libs]
116 + dev-libs/openssl[static-libs]
117 + virtual/libmysqlclient[static-libs]
118 + kafka? ( dev-libs/librdkafka[static-libs] )
119 + )
120 +
121 + sys-libs/libtermcap-compat
122 + dev-util/patchelf
123 + >=sys-devel/lld-6.0.0
124 + >=sys-devel/gcc-7.0
125 + >=sys-devel/clang-6.0
126 +"
127 +
128 +S="${WORKDIR}/${MY_PN}-${PV}-${TYPE}"
129 +
130 +_clang_fullversion() {
131 + local ver="$1"; shift
132 + set -- $($(tc-getCPP "$@") -E -P - <<<"__clang_major__ __clang_minor__ __clang_patchlevel__")
133 + eval echo "$ver"
134 +}
135 +
136 +clang-fullversion() {
137 + _clang_fullversion '$1.$2.$3' "$@"
138 +}
139 +
140 +clang-version() {
141 + _clang_fullversion '$1.$2' "$@"
142 +}
143 +
144 +clang-major-version() {
145 + _clang_fullversion '$1' "$@"
146 +}
147 +
148 +clang-minor-version() {
149 + _clang_fullversion '$2' "$@"
150 +}
151 +
152 +clang-micro-version() {
153 + _clang_fullversion '$3' "$@"
154 +}
155 +
156 +pkg_pretend() {
157 + if [[ $(tc-getCC) == clang ]]; then
158 + if [[ $(clang-major-version) -lt 6 ]]; then
159 + eerror "Compilation with clang older than 6.0 is not supported"
160 + die "Too old clang found"
161 + fi
162 + :
163 + elif [[ $(gcc-major-version) -lt 7 ]] && [[$(gcc-minor-version) -lt 2 ]]; then
164 + eerror "Compilation with gcc older than 7.2 is not supported"
165 + die "Too old gcc found"
166 + fi
167 +}
168 +
169 +src_unpack() {
170 + default_src_unpack
171 + [[ ${PV} == 9999 ]] && return 0
172 + cd "${S}/contrib" || die "failed to cd to contrib"
173 + mkdir -p cctz zstd || die "failed to create directories"
174 + tar --strip-components=1 -C cctz -xf "${DISTDIR}/cctz-${CCTZ_COMMIT}.tar.gz" || die "failed to unpack cctz"
175 +}
176 +
177 +src_prepare() {
178 + eapply_user
179 + cmake-utils_src_prepare
180 +}
181 +src_configure() {
182 + local mycmakeargs=(
183 + -DENABLE_POCO_MONGODB="$(usex mongodb)"
184 + -DENABLE_RDKAFKA="$(usex kafka)"
185 + -DENABLE_TESTS="$(usex test)"
186 + -DUSE_STATIC_LIBRARIES="$(usex static)"
187 + -DMAKE_STATIC_LIBRARIES="$(usex static)"
188 + -DUSE_MYSQL="$(usex mysql)"
189 + -DENABLE_CLICKHOUSE_SERVER="$(usex server)"
190 + -DENABLE_CLICKHOUSE_CLIENT="$(usex client)"
191 + -DENABLE_CLICKHOUSE_LOCAL="$(usex tools)"
192 + -DENABLE_CLICKHOUSE_BENCHMARK="$(usex tools)"
193 + -DENABLE_CLICKHOUSE_PERFORMANCE="$(usex tools)"
194 + -DENABLE_CLICKHOUSE_EXTRACT_FROM_CONFIG="$(usex tools)"
195 + -DENABLE_CLICKHOUSE_COMPRESSOR="$(usex tools)"
196 + -DENABLE_CLICKHOUSE_COPIER="$(usex tools)"
197 + # As of now, clickhouse fails to build if odbc is disabled
198 + -DENABLE_ODBC=True
199 + -DENABLE_CLICKHOUSE_ODBC_BRIDGE=True
200 + -DENABLE_CLICKHOUSE_ALL=OFF
201 + -DUSE_INTERNAL_SSL_LIBRARY=False
202 + -DUSE_INTERNAL_CITYHASH_LIBRARY=ON # Clickhouse explicitly requires bundled patched cityhash
203 + -DUNBUNDLED=ON
204 + )
205 +
206 + cmake-utils_src_configure
207 +}
208 +
209 +src_install() {
210 + cmake-utils_src_install
211 +
212 + if ! use test; then
213 + rm -rf "${D}/usr/share/clickhouse-test" || die "failed to remove tests"
214 + fi
215 +
216 + if use doc; then
217 + pushd "${S}/docs/tools" || die "Failed to enter docs build directory"
218 + ./build.py || die "Failed to build docs"
219 + popd || die "Failed to exit docs build directory"
220 +
221 + dodoc -r "${S}/docs/build"
222 + fi
223 +
224 + if use server; then
225 + newinitd "${FILESDIR}"/clickhouse-server.initd clickhouse-server
226 + systemd_dounit "${FILESDIR}"/clickhouse-server.service
227 + fi
228 +
229 + keepdir /var/log/clickhouse-server
230 + chown clickhouse:clickhouse "${D}"/var/log/clickhouse-server
231 +}
232 +
233 +pkg_preinst() {
234 + if use server; then
235 + enewgroup clickhouse
236 + enewuser clickhouse -1 -1 /var/lib/clickhouse clickhouse
237 + fi
238 +}