################################################################################ # # mongodb # ################################################################################ MONGODB_VERSION = 4.2.10 MONGODB_SITE = https://fastdl.mongodb.org/src MONGODB_SOURCE = mongodb-src-r$(MONGODB_VERSION).tar.gz MONGODB_LICENSE = Apache-2.0 (drivers), SSPL (database) MONGODB_LICENSE_FILES = APACHE-2.0.txt LICENSE-Community.txt MONGODB_DEPENDENCIES = \ boost \ host-python3-cheetah \ host-python3-psutil \ host-python3-pyyaml \ host-python3-regex \ host-python3-requests \ host-scons \ pcre \ snappy \ sqlite \ yaml-cpp \ zlib MONGODB_SCONS_TARGETS = mongod mongos MONGODB_SCONS_ENV = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" \ -j"$(PARALLEL_JOBS)" MONGODB_SCONS_OPTS = \ --disable-minimum-compiler-version-enforcement \ --disable-warnings-as-errors \ --use-system-boost \ --use-system-pcre \ --use-system-snappy \ --use-system-sqlite \ --use-system-yaml \ --use-system-zlib # need to pass mongo version when not building from git repo MONGODB_SCONS_OPTS += MONGO_VERSION=$(MONGODB_VERSION)- # 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_LIBCURL),y) MONGODB_DEPENDENCIES += libcurl MONGODB_SCONS_OPTS += \ --enable-free-mon=on \ --enable-http-client=on else MONGODB_SCONS_OPTS += \ --enable-free-mon=off \ --enable-http-client=off endif ifeq ($(BR2_PACKAGE_OPENSSL),y) MONGODB_DEPENDENCIES += openssl MONGODB_SCONS_OPTS += \ --ssl=on \ --ssl-provider=openssl else MONGODB_SCONS_OPTS += --ssl=off endif define MONGODB_BUILD_CMDS (cd $(@D); \ $(HOST_DIR)/bin/python3 $(SCONS) \ $(MONGODB_SCONS_ENV) \ $(MONGODB_SCONS_OPTS) \ $(MONGODB_SCONS_TARGETS)) endef define MONGODB_INSTALL_TARGET_CMDS (cd $(@D); \ $(HOST_DIR)/bin/python3 $(SCONS) \ $(MONGODB_SCONS_ENV) \ $(MONGODB_SCONS_OPTS) \ --prefix=$(TARGET_DIR)/usr \ install) endef $(eval $(generic-package))