83 lines
2.3 KiB
Makefile
83 lines
2.3 KiB
Makefile
# $OpenBSD: Makefile,v 1.30 2017/11/16 23:20:37 naddy Exp $
|
|
|
|
PORTROACH = limitw:1,even
|
|
USE_WXNEEDED = Yes
|
|
|
|
# The default storage engine (WiredTiger) only works on amd64.
|
|
ONLY_FOR_ARCHS = amd64
|
|
DPB_PROPERTIES = parallel
|
|
|
|
COMMENT = scalable, high-performance document-oriented database
|
|
|
|
DISTNAME = mongodb-src-r3.2.13
|
|
PKGNAME = ${DISTNAME:S/src-r//}
|
|
CATEGORIES = databases
|
|
REVISION = 0
|
|
|
|
HOMEPAGE = https://www.mongodb.com/
|
|
|
|
# mongodb itself: AGPLv3
|
|
# client/utils: Apache 2.0
|
|
PERMIT_PACKAGE_CDROM = Yes
|
|
|
|
WANTLIB += boost_chrono-mt boost_filesystem-mt boost_program_options-mt
|
|
WANTLIB += boost_regex-mt boost_system-mt boost_thread-mt c crypto
|
|
WANTLIB += execinfo kvm m pcap pcre pcrecpp pthread ssl yaml-cpp
|
|
WANTLIB += z ${COMPILER_LIBCXX}
|
|
|
|
MASTER_SITES = https://fastdl.mongodb.org/src/
|
|
|
|
MODULES = devel/scons \
|
|
lang/python
|
|
|
|
# XXX should come from scons module, but broken when gcc module also used:
|
|
NO_CCACHE = Yes
|
|
|
|
COMPILER = base-clang ports-gcc
|
|
MODPY_VERSION = ${MODPY_DEFAULT_VERSION_2}
|
|
MODSCONS_ENV = CC="${CC}" \
|
|
CXX="${CXX}" \
|
|
CCFLAGS="${CFLAGS} -DBOOST_NO_USER_CONFIG" \
|
|
CXXFLAGS="${CXXFLAGS}" \
|
|
LINKFLAGS="${LDFLAGS}" \
|
|
CPPPATH="${LOCALBASE}/include" \
|
|
LIBPATH="${LOCALBASE}/lib"
|
|
MODSCONS_FLAGS += --prefix="${PREFIX}" \
|
|
--opt=on \
|
|
--ssl=SSL \
|
|
--allocator=system \
|
|
--use-system-boost \
|
|
--use-system-pcre \
|
|
--use-system-yaml \
|
|
--use-system-zlib \
|
|
-j${MAKE_JOBS}
|
|
|
|
ALL_TARGET = core tools
|
|
LIB_DEPENDS = devel/libexecinfo \
|
|
devel/boost \
|
|
devel/pcre \
|
|
devel/yaml-cpp
|
|
TEST_DEPENDS = textproc/py-yaml \
|
|
databases/py-mongo
|
|
# icu4c support is not actually compiled in, but scons picks up the
|
|
# headers and patching this away is intrusive
|
|
BUILD_DEPENDS = textproc/icu4c
|
|
|
|
do-install:
|
|
.for bin in mongo mongod mongos mongosniff mongobridge mongoperf
|
|
${INSTALL_PROGRAM} ${WRKSRC}/${bin} ${PREFIX}/bin/
|
|
if [ -f ${WRKSRC}/debian/${bin}.1 ]; then \
|
|
${INSTALL_MAN} ${WRKSRC}/debian/${bin}.1 ${PREFIX}/man/man1; \
|
|
fi
|
|
.endfor
|
|
${INSTALL_DATA_DIR} ${PREFIX}/share/examples/mongodb
|
|
${INSTALL_DATA} ${FILESDIR}/mongodb.conf \
|
|
${PREFIX}/share/examples/mongodb
|
|
|
|
do-test:
|
|
@${SETENV} ${MAKE_ENV} ${MODSCONS_BIN} -C ${WRKSRC} \
|
|
${MODSCONS_ENV} ${MODSCONS_FLAGS} unittests
|
|
cd ${WRKSRC} && ${MODPY_BIN} buildscripts/resmoke.py --suites=unittests
|
|
|
|
.include <bsd.port.mk>
|