Fixes:
http://autobuild.buildroot.net/results/dd4/
dd412fae45a84e44e7e6a49f8cdb124d0851c1df/
The mongodb version used (3.3.4) is no longer supported by upstream and
fails to build with openssl 1.1.1x. On top of that it uses internal copies
of boost, pcre and zlib instead of the system ones.
Bumping the version to 3.4.19 (which is still supported until September
2019) has been tried, but it:
- No longer builds for 32bit ARM
- Doesn't build without extra patches, E.G.:
https://git.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/mongodb/mongodb/0002-d_state.cpp-Add-missing-dependenncy-on-local_shardin.patch?h=rocko
- Doesn't build with the system version of boost (1.69.0)
- Also fails to build with openssl-1.1.1x
So it looks like mongodb needs to be bumped to the 3.6.x series (which
changes the license to the SSPL) - Or simply dropped.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
help
The gr-qtgui option was removed.
+config BR2_PACKAGE_MONGODB
+ bool "mongodb package removed"
+ select BR2_LEGACY
+ help
+ The mongodb package was removed.
+
config BR2_PACKAGE_LUACRYPTO
bool "luacrypto package removed"
select BR2_LEGACY
F: package/curlpp/
F: package/daq/
F: package/libgdiplus/
-F: package/mongodb/
F: package/pimd/
F: package/snort/
F: package/stella/
source "package/leveldb/Config.in"
source "package/libgit2/Config.in"
source "package/libpqxx/Config.in"
- source "package/mongodb/Config.in"
source "package/mysql/Config.in"
source "package/postgresql/Config.in"
source "package/redis/Config.in"
+++ /dev/null
-Add missing <sys/sysmacros.h>
-
-mmap_v1_engine.cpp is using major()/minor(), which are defined by
-<sys/sysmacros.h>. This header file was implicitly included by
-<sys/types.h> in glibc < 2.28. But this glibc 2.28, this is no longer
-the case, so <sys/sysmacros.h> needs to be included explicitly.
-
-Signed-off-by: Florian La Roche <F.LaRoche@pilz.de>
-
---- ./src/mongo/db/storage/mmap_v1/mmap_v1_engine.cpp
-+++ ./src/mongo/db/storage/mmap_v1/mmap_v1_engine.cpp
-@@ -32,6 +32,7 @@
-
- #include "mongo/db/storage/mmap_v1/mmap_v1_engine.h"
-
-+#include <sys/sysmacros.h>
- #include <boost/filesystem/path.hpp>
- #include <boost/filesystem/operations.hpp>
- #include <fstream>
+++ /dev/null
-# from src/mongo/platform/bits.h
-config BR2_PACKAGE_MONGODB_ARCH_SUPPORTS
- bool
- # ARM needs LDREX/STREX, so ARMv6+
- default y if BR2_arm && !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5
- default y if BR2_aarch64 || BR2_i386 || BR2_powerpc64 || BR2_x86_64
-
-config BR2_PACKAGE_MONGODB
- bool "mongodb"
- depends on BR2_PACKAGE_MONGODB_ARCH_SUPPORTS
- depends on BR2_TOOLCHAIN_USES_GLIBC # needs glibc malloc_usable_size
- depends on BR2_USE_WCHAR
- depends on BR2_TOOLCHAIN_HAS_THREADS
- depends on BR2_INSTALL_LIBSTDCPP
- depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
- help
- MongoDB is a cross-platform document-oriented database
- (NoSQL).
-
- It uses JSON-like documents with dynamic schemas (BSON),
- making the integration of data in certain types of
- applications easier and faster.
-
- https://www.mongodb.org/
-
-comment "mongodb needs a glibc toolchain w/ wchar, threads, C++, gcc >= 4.8"
- depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
- !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC || \
- !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
- depends on BR2_PACKAGE_MONGODB_ARCH_SUPPORTS
+++ /dev/null
-# Locally computed:
-sha256 4764945631bca4ac5c2b239e04e91db00e39716915204349170c37cb7897c564 mongodb-r3.3.4.tar.gz
+++ /dev/null
-################################################################################
-#
-# mongodb
-#
-################################################################################
-
-MONGODB_VERSION_BASE = 3.3.4
-MONGODB_VERSION = r$(MONGODB_VERSION_BASE)
-MONGODB_SITE = $(call github,mongodb,mongo,$(MONGODB_VERSION))
-
-MONGODB_LICENSE = AGPL-3.0, Apache-2.0
-MONGODB_LICENSE_FILES = GNU-AGPL-3.0.txt APACHE-2.0.txt
-
-MONGODB_DEPENDENCIES = host-scons
-
-MONGODB_SCONS_TARGETS = mongod mongos
-
-MONGODB_SCONS_ENV = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" \
- -j"$(PARALLEL_JOBS)"
-
-MONGODB_SCONS_OPTS = --disable-warnings-as-errors
-
-# need to pass mongo version when not building from git repo
-MONGODB_SCONS_OPTS += MONGO_VERSION=$(MONGODB_VERSION_BASE)-
-
-# WiredTiger database storage engine only supported on 64 bits
-ifeq ($(BR2_ARCH_IS_64),y)
-MONGODB_SCONS_OPTS += --wiredtiger=on
-else
-MONGODB_SCONS_OPTS += --wiredtiger=off
-endif
-
-# JavaScript scripting engine and tcmalloc supported only on
-# x86/x86-64 systems. Mongo target is a shell interface that
-# depends on the javascript engine, so it will also only be
-# built on x86/x86-64 systems.
-ifeq ($(BR2_i386)$(BR2_x86_64),y)
-MONGODB_SCONS_OPTS += --js-engine=mozjs --allocator=tcmalloc
-MONGODB_SCONS_TARGETS += mongo
-else
-MONGODB_SCONS_OPTS += --js-engine=none --allocator=system
-endif
-
-ifeq ($(BR2_PACKAGE_OPENSSL),y)
-MONGODB_DEPENDENCIES += openssl
-MONGODB_SCONS_OPTS += --ssl=SSL
-endif
-
-define MONGODB_BUILD_CMDS
- (cd $(@D); \
- $(SCONS) \
- $(MONGODB_SCONS_ENV) \
- $(MONGODB_SCONS_OPTS) \
- $(MONGODB_SCONS_TARGETS))
-endef
-
-define MONGODB_INSTALL_TARGET_CMDS
- (cd $(@D); \
- $(SCONS) \
- $(MONGODB_SCONS_ENV) \
- $(MONGODB_SCONS_OPTS) \
- --prefix=$(TARGET_DIR)/usr \
- install)
-endef
-
-$(eval $(generic-package))