Gentoo Archives: gentoo-commits

From: Tony Vroon <chainsaw@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-db/tokumx/files/, dev-db/tokumx/
Date: Thu, 30 Mar 2017 14:56:11
Message-Id: 1490885763.b41a4aa2bd40275ceeddf27d3bbd883327641210.chainsaw@gentoo
1 commit: b41a4aa2bd40275ceeddf27d3bbd883327641210
2 Author: Tony Vroon <chainsaw <AT> gentoo <DOT> org>
3 AuthorDate: Thu Mar 30 14:55:44 2017 +0000
4 Commit: Tony Vroon <chainsaw <AT> gentoo <DOT> org>
5 CommitDate: Thu Mar 30 14:56:03 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b41a4aa2
7
8 dev-db/tokumx: Reinstate 1.5.0 (with Boost 57 build fixes & automatic PaX marking) as requested by Eleni Fragkiadaki in the LINX software team.
9
10 Package-Manager: Portage-2.3.5, Repoman-2.3.2
11
12 dev-db/tokumx/Manifest | 1 +
13 dev-db/tokumx/files/1.5.0-Werror.diff | 45 +++++++++++++
14 dev-db/tokumx/files/1.5.0-boost-57.diff | 11 ++++
15 .../tokumx/files/tokumx-disable-bundled-libs.patch | 11 ++++
16 dev-db/tokumx/tokumx-1.5.0-r2.ebuild | 75 ++++++++++++++++++++++
17 5 files changed, 143 insertions(+)
18
19 diff --git a/dev-db/tokumx/Manifest b/dev-db/tokumx/Manifest
20 index 4b8c9db2520..9e4415d90a8 100644
21 --- a/dev-db/tokumx/Manifest
22 +++ b/dev-db/tokumx/Manifest
23 @@ -1 +1,2 @@
24 DIST tokumx-enterprise-2.0.2.tar.gz 16756175 SHA256 2ba471715f399a2652e75a978afde89072fce5560c0813a901a1dadb28582e6b SHA512 8d063abcbe16ce50b5b7f99ae6deec348cf60bb8bb57a3b06e478c03af7ded7501ca6ca15ac63ef07bf3fa0da59a30571b9a799fa5c5a9dcbac741c0a674b1f6 WHIRLPOOL 24546adf1466327571406af41378a15d1ceea58ff92aa01b8f758746cc4b54eabac100710c5bfab53f380f073edf081fc47e5c096df598f96c5e971bdee52805
25 +DIST tokumx-git-tag-1.5.0.tar.bz2 13059584 SHA256 381747c47073c8a6f8717a27756bb793ec6d80f4f7d119385f8d7b805a3d827d SHA512 ba19237db7d3dcbd3ac07b8cc4860549830fa065fa4d26cbae685274524cd5b89f671d5f126ec25bee605c99929ce0436bb2ac32d67efdbb8dd6d7526d3f1c24 WHIRLPOOL e5e33e28ce55b1abcff603a40453ab0a9d68f61cd15c68950dd6f87371565bd05057e8e48475f772524684fdb744093867423b249614d4c02908a467f9380c75
26
27 diff --git a/dev-db/tokumx/files/1.5.0-Werror.diff b/dev-db/tokumx/files/1.5.0-Werror.diff
28 new file mode 100644
29 index 00000000000..a865fe074f3
30 --- /dev/null
31 +++ b/dev-db/tokumx/files/1.5.0-Werror.diff
32 @@ -0,0 +1,45 @@
33 +diff -uNr work.ORIG/mongo/CMakeLists.txt work/mongo/CMakeLists.txt
34 +--- work.ORIG/mongo/CMakeLists.txt 2014-08-01 11:51:20.832614062 +0100
35 ++++ work/mongo/CMakeLists.txt 2014-08-01 11:51:36.898614862 +0100
36 +@@ -71,14 +71,13 @@
37 + endforeach(flag)
38 + endmacro(set_cxxflags_if_supported)
39 +
40 +-set(CMAKE_C_FLAGS "-fPIC -fno-strict-aliasing -ggdb -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch -Werror -pipe")
41 ++set(CMAKE_C_FLAGS "-fPIC -fno-strict-aliasing -ggdb -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch -pipe")
42 + set(CMAKE_CXX_FLAGS "-fPIC -fno-strict-aliasing -ggdb")
43 + set_cxxflags_if_supported(
44 + -Wall
45 + -Wsign-compare
46 + -Wno-unknown-pragmas
47 + -Winvalid-pch
48 +- -Werror
49 + -pipe
50 + -Wnon-virtual-dtor
51 + -Woverloaded-virtual
52 +diff -uNr work.ORIG/mongo/src/third_party/ft-index/cmake_modules/TokuSetupCompiler.cmake work/mongo/src/third_party/ft-index/cmake_modules/TokuSetupCompiler.cmake
53 +--- work.ORIG/mongo/src/third_party/ft-index/cmake_modules/TokuSetupCompiler.cmake 2014-08-01 11:51:20.696614056 +0100
54 ++++ work/mongo/src/third_party/ft-index/cmake_modules/TokuSetupCompiler.cmake 2014-08-01 11:51:36.898614862 +0100
55 +@@ -174,8 +174,8 @@
56 + endif ()
57 +
58 + ## always want these
59 +-set(CMAKE_C_FLAGS "-Wall -Werror ${CMAKE_C_FLAGS}")
60 +-set(CMAKE_CXX_FLAGS "-Wall -Werror ${CMAKE_CXX_FLAGS}")
61 ++set(CMAKE_C_FLAGS "-Wall ${CMAKE_C_FLAGS}")
62 ++set(CMAKE_CXX_FLAGS "-Wall ${CMAKE_CXX_FLAGS}")
63 +
64 + ## need to set -stdlib=libc++ to get real c++11 support on darwin
65 + if (APPLE)
66 +diff -uNr work.ORIG/mongo/src/third_party/ft-index/examples/Makefile work/mongo/src/third_party/ft-index/examples/Makefile
67 +--- work.ORIG/mongo/src/third_party/ft-index/examples/Makefile 2014-08-01 11:51:20.676614055 +0100
68 ++++ work/mongo/src/third_party/ft-index/examples/Makefile 2014-08-01 11:51:36.898614862 +0100
69 +@@ -1,7 +1,7 @@
70 + SRCS = $(wildcard *.c)
71 + TARGETS = $(patsubst %.c,%,$(SRCS)) $(patsubst %.c,%-bdb,$(SRCS))
72 + CPPFLAGS = -I../include -D_GNU_SOURCE
73 +-CFLAGS = -g -std=c99 -Wall -Wextra -Werror -Wno-missing-field-initializers
74 ++CFLAGS = -g -std=c99 -Wall -Wextra -Wno-missing-field-initializers
75 + ifeq ($(USE_STATIC_LIBS),1)
76 + LIBTOKUDB = tokufractaltree_static
77 + LIBTOKUPORTABILITY = tokuportability_static
78
79 diff --git a/dev-db/tokumx/files/1.5.0-boost-57.diff b/dev-db/tokumx/files/1.5.0-boost-57.diff
80 new file mode 100644
81 index 00000000000..e66aec16871
82 --- /dev/null
83 +++ b/dev-db/tokumx/files/1.5.0-boost-57.diff
84 @@ -0,0 +1,11 @@
85 +diff -uNr work.ORIG/mongo/src/mongo/shell/linenoise_utf8.h work/mongo/src/mongo/shell/linenoise_utf8.h
86 +--- work.ORIG/mongo/src/mongo/shell/linenoise_utf8.h 2017-03-30 15:20:51.880842717 +0100
87 ++++ work/mongo/src/mongo/shell/linenoise_utf8.h 2017-03-30 15:21:26.002844416 +0100
88 +@@ -16,6 +16,7 @@
89 + */
90 +
91 + #include <boost/smart_ptr/scoped_array.hpp>
92 ++#include <algorithm>
93 + #include <string.h>
94 +
95 + namespace linenoise_utf8 {
96
97 diff --git a/dev-db/tokumx/files/tokumx-disable-bundled-libs.patch b/dev-db/tokumx/files/tokumx-disable-bundled-libs.patch
98 new file mode 100644
99 index 00000000000..66d8db3980f
100 --- /dev/null
101 +++ b/dev-db/tokumx/files/tokumx-disable-bundled-libs.patch
102 @@ -0,0 +1,11 @@
103 +diff -auwrN a/src/third_party/ft-index/CMakeLists.txt b/src/third_party/ft-index/CMakeLists.txt
104 +--- a/src/third_party/ft-index/CMakeLists.txt 2014-08-01 04:37:33.000000000 -0400
105 ++++ b/src/third_party/ft-index/CMakeLists.txt 2014-08-01 10:38:28.134869689 -0400
106 +@@ -35,7 +35,6 @@
107 + include(TokuFeatureDetection)
108 + include(TokuSetupCompiler)
109 + include(TokuSetupCTest)
110 +-include(TokuThirdParty)
111 +
112 + set(TOKU_CMAKE_SCRIPT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
113 + include(TokuMergeLibs)
114
115 diff --git a/dev-db/tokumx/tokumx-1.5.0-r2.ebuild b/dev-db/tokumx/tokumx-1.5.0-r2.ebuild
116 new file mode 100644
117 index 00000000000..652659ae8d8
118 --- /dev/null
119 +++ b/dev-db/tokumx/tokumx-1.5.0-r2.ebuild
120 @@ -0,0 +1,75 @@
121 +# Copyright 1999-2017 Gentoo Foundation
122 +# Distributed under the terms of the GNU General Public License v2
123 +
124 +EAPI=6
125 +CMAKE_BUILD_TYPE=Release
126 +PYTHON_COMPAT=( python2_7 )
127 +
128 +inherit python-r1 pax-utils cmake-utils
129 +
130 +MY_P=${PN}-git-tag-${PV}
131 +
132 +DESCRIPTION="An open source, high-performance distribution of MongoDB"
133 +HOMEPAGE="http://www.tokutek.com/products/tokumx-for-mongodb/"
134 +SRC_URI="mirror://gentoo/${MY_P}.tar.bz2"
135 +
136 +LICENSE="AGPL-3 Apache-2.0"
137 +SLOT="0"
138 +KEYWORDS="~amd64"
139 +IUSE="pax_kernel"
140 +
141 +RDEPEND="
142 + dev-libs/jemalloc
143 + >=dev-libs/boost-1.50[threads(+)]
144 + >=dev-libs/libpcre-8.30[cxx]
145 + net-libs/libpcap"
146 +DEPEND="${RDEPEND}
147 + sys-libs/ncurses
148 + sys-libs/readline
149 + pax_kernel? ( sys-apps/paxctl sys-apps/elfix )"
150 +
151 +S="${WORKDIR}/mongo"
152 +BUILD_DIR="${WORKDIR}/mongo/build"
153 +QA_PRESTRIPPED="/usr/lib64/libHotBackup.so"
154 +
155 +src_prepare() {
156 + cd "${WORKDIR}"
157 + epatch "${FILESDIR}/${PV}-Werror.diff"
158 + epatch "${FILESDIR}/${PV}-boost-57.diff"
159 + epatch "${FILESDIR}/${PN}-disable-bundled-libs.patch"
160 + cd "${S}"
161 + cmake-utils_src_prepare
162 +}
163 +
164 +src_configure() {
165 + local mycmakeargs=(
166 + -D TOKU_DEBUG_PARANOID=OFF
167 + -D USE_VALGRIND=OFF
168 + -D USE_BDB=OFF
169 + -D BUILD_TESTING=OFF
170 + -D TOKUMX_DISTNAME=${PV}
171 + -D LIBJEMALLOC="jemalloc"
172 + -D TOKUMX_STRIP_BINARIES=0
173 + -D USE_SYSTEM_PCRE=1
174 + -D USE_SYSTEM_BOOST=1
175 + )
176 + cmake-utils_src_configure
177 +}
178 +
179 +src_install() {
180 + cmake-utils_src_install
181 + pax-mark -m "${D}"/usr/bin/mongo
182 +
183 + # Remove unnecessary files
184 + rm -r "${D}usr/buildscripts" "${D}usr/scripts" "${D}usr/src" "${D}usr/include/db.h" || die
185 +
186 + # Correctly install this python script
187 + python_foreach_impl python_doscript scripts/tokumxstat.py
188 +
189 + # Clean up documentation installed to /usr
190 + pushd "${D}usr/" || die
191 + rm GNU-AGPL-3.0 LICENSE.txt NEWS README README.md README-TOKUDB README-TOKUKV SConstruct THIRD-PARTY-NOTICES || die
192 + popd || die
193 + dodoc README.md distsrc/NEWS distsrc/README distsrc/THIRD-PARTY-NOTICES
194 + newdoc src/third_party/ft-index/README-TOKUDB README-TOKUKV
195 +}