aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--testing/mongodb/10-fix-poll-h.patch11
-rw-r--r--testing/mongodb/20-fix-libc-version.patch29
-rw-r--r--testing/mongodb/30-fix-backtrace.patch24
-rw-r--r--testing/mongodb/APKBUILD45
-rw-r--r--testing/mongodb/backtrace.patch14
-rw-r--r--testing/mongodb/fix-asio-strerror_r.patch28
6 files changed, 84 insertions, 67 deletions
diff --git a/testing/mongodb/10-fix-poll-h.patch b/testing/mongodb/10-fix-poll-h.patch
deleted file mode 100644
index 0ef14f4fed..0000000000
--- a/testing/mongodb/10-fix-poll-h.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- orig/mongodb-src-r3.0.2/src/mongo/util/net/socket_poll.h
-+++ mongodb-src-r3.0.2/src/mongo/util/net/socket_poll.h
-@@ -29,7 +29,7 @@
- #pragma once
-
- #ifndef _WIN32
--# include <sys/poll.h>
-+# include <poll.h>
- #else
- # if defined(NTDDI_VERSION) && ( !defined(NTDDI_VISTA) || ( NTDDI_VERSION < NTDDI_VISTA ) )
- // These are only defined in winsock2.h on newer windows but we need them everywhere.
diff --git a/testing/mongodb/20-fix-libc-version.patch b/testing/mongodb/20-fix-libc-version.patch
index 3b213cc3d5..1f7b517c94 100644
--- a/testing/mongodb/20-fix-libc-version.patch
+++ b/testing/mongodb/20-fix-libc-version.patch
@@ -1,7 +1,7 @@
diff --git a/src/mongo/util/processinfo_linux2.cpp b/src/mongo/util/processinfo_linux2.cpp
index d1ed23a..0c1011e 100644
---- a/src/mongo/util/processinfo_linux2.cpp
-+++ b/src/mongo/util/processinfo_linux2.cpp
+--- a/src/mongo/util/processinfo_linux.cpp
++++ b/src/mongo/util/processinfo_linux.cpp
@@ -335,6 +335,7 @@ public:
paths.push_back("/etc/debian_release");
paths.push_back("/etc/slackware-version");
@@ -25,20 +25,17 @@ index d1ed23a..0c1011e 100644
// docs claim hblkhd is included in uordblks but it isn't
LinuxProc p(_pid);
-diff --git a/src/mongo/util/processinfo_linux2.cpp b/src/mongo/util/processinfo_linux2.cpp
-index 0c1011e..755a2cc 100644
---- a/src/mongo/util/processinfo_linux2.cpp
-+++ b/src/mongo/util/processinfo_linux2.cpp
-@@ -34,7 +34,11 @@
- #include <stdio.h>
- #include <unistd.h>
- #include <sys/mman.h>
--#include <gnu/libc-version.h>
-+#ifdef __GLIBC__
-+# include <gnu/libc-version.h>
-+#else
-+# define gnu_get_libc_version(x) "unknown"
-+#endif
+--- ./src/mongo/util/processinfo_linux.cpp.orig
++++ ./src/mongo/util/processinfo_linux.cpp
+@@ -37,8 +37,10 @@
#include <sys/utsname.h>
+ #ifdef __UCLIBC__
+ #include <features.h>
+-#else
++#elif defined(__GLIBC__)
+ #include <gnu/libc-version.h>
++#else
++#define gnu_get_libc_version(x) "unknown"
+ #endif
#include "processinfo.h"
diff --git a/testing/mongodb/30-fix-backtrace.patch b/testing/mongodb/30-fix-backtrace.patch
deleted file mode 100644
index bf576e2415..0000000000
--- a/testing/mongodb/30-fix-backtrace.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- orig/mongodb-src-r3.0.2/src/mongo/platform/backtrace.cpp
-+++ mongodb-src-r3.0.2/src/mongo/platform/backtrace.cpp
-@@ -28,6 +28,12 @@
- #if !defined(_WIN32)
- #if defined(__sunos__) || !defined(MONGO_HAVE_EXECINFO_BACKTRACE)
-
-+// dlfcn.h requires _GNU_SOURCE to be defined in order to export
-+// Dl_* structures. Issue gonna be addressed in 3.1.3, see SERVER-17199
-+#ifndef _GNU_SOURCE
-+# define _GNU_SOURCE
-+#endif
-+
- #include "mongo/platform/backtrace.h"
-
- #include <boost/smart_ptr/scoped_array.hpp>
-@@ -42,6 +48,8 @@
-
- using std::string;
- using std::vector;
-+
-+typedef Dl_info Dl_info_t;
-
- namespace mongo {
- namespace pal {
diff --git a/testing/mongodb/APKBUILD b/testing/mongodb/APKBUILD
index ad1c817233..db714416ae 100644
--- a/testing/mongodb/APKBUILD
+++ b/testing/mongodb/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Filipp Andronov <filipp.andronov@gmail.com>
pkgname=mongodb
-pkgver=3.0.6
+pkgver=3.2.1
pkgrel=0
pkgdesc='A high-performance, open source, schema-free document-oriented database'
url='http://www.mongodb.org'
@@ -9,13 +9,15 @@ arch='x86_64'
license='AGPL3'
pkgusers="mongodb"
depends=
-depends_dev="scons openssl-dev libexecinfo-dev pcre-dev wiredtiger-dev"
+depends_dev="scons openssl-dev pcre-dev wiredtiger-dev snappy-dev boost-dev
+ asio-dev libpcap-dev"
makedepends="$depends_dev"
install="$pkgname.pre-install"
source="http://downloads.mongodb.org/src/mongodb-src-r${pkgver}.tar.gz
20-fix-libc-version.patch
- 30-fix-backtrace.patch
40-fix-elf-native-class.patch
+ backtrace.patch
+ fix-asio-strerror_r.patch
mongodb.confd
mongodb.initd
@@ -39,8 +41,15 @@ source="http://downloads.mongodb.org/src/mongodb-src-r${pkgver}.tar.gz
# contribution strongly welcome :D
#
_builddir="$srcdir"/$pkgname-src-r$pkgver
-_buildops="--variant-dir=build --64 --allocator=system --use-system-pcre \
- --use-system-wiredtiger --extralib=libexecinfo --disable-warnings-as-errors"
+_buildopts="
+ --allocator=system \
+ --disable-warnings-as-errors \
+ --use-system-boost \
+ --use-system-pcre \
+ --use-system-snappy \
+ --use-system-wiredtiger \
+ --use-system-zlib \
+ "
prepare() {
cd "$_builddir"
@@ -57,14 +66,15 @@ build() {
cd "$_builddir"
export SCONSFLAGS="$MAKEFLAGS"
- scons $_buildops --prefix=$pkgdir/usr core
+ scons $_buildopts --prefix=$pkgdir/usr core
}
package() {
cd "$_builddir"
# install mongo targets
- scons $_buildops --prefix=$pkgdir/usr install
+ export SCONSFLAGS="$MAKEFLAGS"
+ scons $_buildopts --prefix=$pkgdir/usr install
# install alpine specific files
install -dm700 "$pkgdir/var/lib/mongodb"
@@ -79,28 +89,31 @@ package() {
install -Dm644 "$srcdir/mongos.confd" "$pkgdir/etc/conf.d/mongos"
}
-md5sums="1cda3caf0d63ce9bae20de0fec7baccd mongodb-src-r3.0.6.tar.gz
-9419a078d1cc62d6cb27d9585028e3c3 20-fix-libc-version.patch
-4b27b6c9d0216234ac6a24106b624381 30-fix-backtrace.patch
+md5sums="a9f150f8bead9e8afd3ab28492167073 mongodb-src-r3.2.1.tar.gz
+7806ba5e8af9b6f99e8d88edd31e4b49 20-fix-libc-version.patch
04a348397be8ca7471d404056d8a1490 40-fix-elf-native-class.patch
+86a988b5d4402227d177b8a1167008e8 backtrace.patch
+cd0833592e3a23e729ebd71eb756318c fix-asio-strerror_r.patch
7d2f94bed7bfacd32fcd52dfd931f077 mongodb.confd
792a0b53b3e843cf14176c5beb8cdfe1 mongodb.initd
49df78833de4cb6e2b9b1ab9da52c3ac mongodb.logrotate
33b23ee722f6e5d15eb6d9c2723a346f mongos.confd
28611e6796d71c21661dd3d7ee8f23b8 mongos.initd"
-sha256sums="609f6bd416ed11898b49406332b8ff301de239ba72df0bdbf1603233229c822d mongodb-src-r3.0.6.tar.gz
-dc536f728b27e0a01406a4a99afd4f02e86514d225ad7eb71834bc18db6b9861 20-fix-libc-version.patch
-7630b7b55cd2b3e836c441e5ac13b4a111ef3552a9576433a58bd839a1b9259b 30-fix-backtrace.patch
+sha256sums="50431a3ba5ab68bd0bed4a157a8528ca27753a63cf101f13135255e4e9d42f15 mongodb-src-r3.2.1.tar.gz
+74bf7d84584e038076581d2a7f7c1aedcd80bcdf25247ce905e9c36907272b62 20-fix-libc-version.patch
3a863660113d29728d7a852b3fba73926697b496848f8ccc4d8e73e6614cfdfc 40-fix-elf-native-class.patch
+300d9f6b819730de54018d4b418eb7f921ba9c83fad4958a040544b076160848 backtrace.patch
+ec6d404221f02706ef2e52e00e414e98666dcc3606e78c9b3d33dfbd42a1eae7 fix-asio-strerror_r.patch
a4ca29c577428c02cd0b0a8b46756df5f53a05519c9d13c270533cf99b9b819d mongodb.confd
7e39fbd4dc18dba21c8767931683f4795e58e0e91b9f9a5842539923ded453c9 mongodb.initd
76994c32d999def5c925bd7be3f96687b3406f1d67b89aa6a4df8053025b1e01 mongodb.logrotate
2afd582564623da0e928ca667d37bef467334c82d08b49301f1f6c16ba177767 mongos.confd
1c48327b02bb9e1aaacaa39a4c0e9976a765a0ab0992d4e27cc4c36a33fefe2d mongos.initd"
-sha512sums="1990e9011ae586e30aef28be58f9fc6d8b7f45b787dbde9785c82eff6fb0a70ea45152e450c032a898e6464bbb9b1683082f2a072ba874f7532e167330658175 mongodb-src-r3.0.6.tar.gz
-08a2ec09d4cce55e00eb8dce3b52c0f8a6dfca9f67b6194934ec95afef1c60efb8982ae6b88bff571591cdfeede6a732879ab0f201a78a794530ff0a7e917dd1 20-fix-libc-version.patch
-914c896c7736330834a2a66b60615656b67df5348c65b8ba48478e98044d1fae781082aa510263a7f7a3cb13fa2c019747600250e5b584a12870553cf9fe1f99 30-fix-backtrace.patch
+sha512sums="5ce0af3e70010e3602dd2f7c49c80feee1c89903a694db038543a7f399f4296f2c04bf3aee7089da0b24aa9239aa79823e6f5408bf0f3c6fade6166e94070309 mongodb-src-r3.2.1.tar.gz
+b9fdacb273d5a4e1e60735846b262287f84ca6cbded9393d182f69158d3162a50cae5d834f76860dcb7e965a04f5fb510d32f0757d5343168eb15f6610f05e59 20-fix-libc-version.patch
56db8f43afc94713ac65b174189e2dd903b5e1eff0b65f1bdac159e52ad4de6606c449865d73bd47bffad6a8fc339777e2b11395596e9a476867d94a219c7925 40-fix-elf-native-class.patch
+7d097f497cb910c9cb81086cd8c222e43456d1a6de4adfe3e97a4d99add454279350fdeb7305dab84b3deca04afd824036d4065ee0fb8cdd8c03e96d98ee86af backtrace.patch
+f829b1ad542db3ee776d444243b8b47ab4e48a7386d9b199d7b1adafd31556cf173a5683b78ee735d6a69999ad9af5ad152fde955bbe8865f7910718991ce97c fix-asio-strerror_r.patch
9bcd870742c31bf25f34188ddc3c414de1103e9860dea9f54eee276b89bc2cf1226abab1749c5cda6a6fb0880e541373754e5e83d63cc7189d4b9c274fd555c3 mongodb.confd
2cb295ac0eb44acb4533c86d6d0988d5f760361a43cff7845713f3e2cf0e37023d23790a2926c613bf2b0668060c0b68d59000db52daaacd8af10e701a8b4192 mongodb.initd
8c089b1a11f494e4148fb4646265964c925bf937633a65e395ee1361d42facf837871dd493a9a2e0f480ae0e0829dbd3ed60794c5334e2716332e131fc5c2c51 mongodb.logrotate
diff --git a/testing/mongodb/backtrace.patch b/testing/mongodb/backtrace.patch
new file mode 100644
index 0000000000..f110c7484d
--- /dev/null
+++ b/testing/mongodb/backtrace.patch
@@ -0,0 +1,14 @@
+diff --git a/SConstruct b/SConstruct
+index 64c8387..3db1f3e 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -2292,7 +2292,8 @@ def doConfigure(myenv):
+ if (conf.CheckCXXHeader( "execinfo.h" ) and
+ conf.CheckDeclaration('backtrace', includes='#include <execinfo.h>') and
+ conf.CheckDeclaration('backtrace_symbols', includes='#include <execinfo.h>') and
+- conf.CheckDeclaration('backtrace_symbols_fd', includes='#include <execinfo.h>')):
++ conf.CheckDeclaration('backtrace_symbols_fd', includes='#include <execinfo.h>') and
++ conf.CheckFunc('backtrace')):
+
+ conf.env.SetConfigHeaderDefine("MONGO_CONFIG_HAVE_EXECINFO_BACKTRACE")
+
diff --git a/testing/mongodb/fix-asio-strerror_r.patch b/testing/mongodb/fix-asio-strerror_r.patch
new file mode 100644
index 0000000000..f2fe5cb1eb
--- /dev/null
+++ b/testing/mongodb/fix-asio-strerror_r.patch
@@ -0,0 +1,28 @@
+https://github.com/chriskohlhoff/asio/issues/94
+
+diff --git a/src/third_party/asio-asio-1-11-0/asio/include/asio/impl/error_code.ipp b/src/third_party/asio-asio-1-11-0/asio/include/asio/impl/error_code.ipp
+index 4e7badb..0eeae88 100644
+--- a/src/third_party/asio-asio-1-11-0/asio/include/asio/impl/error_code.ipp
++++ b/src/third_party/asio-asio-1-11-0/asio/include/asio/impl/error_code.ipp
+@@ -97,17 +97,14 @@ public:
+ #if defined(__sun) || defined(__QNX__) || defined(__SYMBIAN32__)
+ using namespace std;
+ return strerror(value);
+-#elif defined(__MACH__) && defined(__APPLE__) \
+- || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__) \
+- || defined(_AIX) || defined(__hpux) || defined(__osf__) \
+- || defined(__ANDROID__)
++#elif defined(__GLIBC__) && defined(_GNU_SOURCE)
++ char buf[256] = "";
++ return strerror_r(value, buf, sizeof(buf));
++#else
+ char buf[256] = "";
+ using namespace std;
+ strerror_r(value, buf, sizeof(buf));
+ return buf;
+-#else
+- char buf[256] = "";
+- return strerror_r(value, buf, sizeof(buf));
+ #endif
+ #endif // defined(ASIO_WINDOWS)
+ }