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 |
+} |