# $Id$ # Maintainer: Felix Yan # Contributor: Sven-Hendrik Haase # Contributor: Thomas Dziedzic < gostrc at gmail > # Contributor: Mathias Stearn # Contributor: Alec Thomas # ALARM: Kevin Mihelich # - build -j2 (RAM constraints) # - use system v8 (older 3.16 package) # - ARM patches pkgname=mongodb pkgver=2.6.8 pkgrel=1 pkgdesc='A high-performance, open source, schema-free document-oriented database' arch=('i686' 'x86_64') url='http://www.mongodb.org' license=('AGPL3') depends=('boost-libs' 'pcre' 'snappy' 'openssl' 'gperftools' 'v8-3.16' 'libsasl') makedepends=('scons' 'boost' 'readline' 'ncurses' 'libpcap') checkdepends=('python2-pymongo') optdepends=('libpcap: needed for mongosniff') backup=('etc/mongodb.conf') install=mongodb.install source=("http://downloads.mongodb.org/src/mongodb-src-r${pkgver}.tar.gz" 'mongodb.conf' 'mongodb.service' '0006-Fix-ARM-alignment-problems.patch') sha512sums=('6fa69750debb40d0be4d5d057125320d97e882e30c43c664fcb6ec6a9e6a8bff5e63637fc8952a6d898556b2c2ce84254d135387dc0879bf65dbd5e91b8732ef' '05dead727d3ea5fe8af1a3c3888693f6b3e2b8cb7f197a5d793352e10d2c524e96c9a5c55ad2e88c1114643a9612ec0b26a2574b48a5260a9b51ec8941461f1c' '177251404b2e818ae2b546fe8b13cb76e348c99e85c7bef22a04b0f07b600fd515a309ede50214f4198594388a6d2b31f46e945b9dae84aabb4dfa13b1123bb9' '9e369c499e550578bfd428d5ad0b50530426bf798a80e2354b9e84622fbef141f57002e5c362721361c16c523ff9b6bf3d5eeb16dee9c24fe246471d92d1a884' '2ebdc5395582d5ed8e8b97c95dedfbd279230aaf7a3da317ccdd2ef6603124e64152c738006d9bca846a44012fdacda8fab0617275f49f8696d1c3e4104fbf6e') MAKEFLAGS="-j2" prepare() { cd mongodb-src-r${pkgver} # Add missing include required for std::swap() # https://github.com/mongodb/mongo/commit/2d5d662 if grep -q '#include ' src/mongo/shell/linenoise_utf8.h; then error ' include has been fixed upstream; remove this local fix.' return 1 fi sed -i '1i #include ' src/mongo/shell/linenoise_utf8.h } build() { # fucking mongo aint no fun to package export SCONSFLAGS="$MAKEFLAGS" cd mongodb-src-r${pkgver} patch -Np1 -i ../0006-Fix-ARM-alignment-problems.patch scons all \ --use-system-boost \ --use-system-pcre \ --use-system-snappy \ --use-system-tcmalloc \ --ssl \ --disable-warnings-as-errors \ --use-system-v8 \ --use-sasl-client } check() { # Tests not passing export SCONSFLAGS="$MAKEFLAGS" cd mongodb-src-r${pkgver} scons smokeAll \ --use-system-pcre \ --use-system-snappy \ --use-system-tcmalloc \ --use-sasl-client \ --use-system-boost \ --ssl \ --disable-warnings-as-errors \ --smokedbprefix="$srcdir" || warning "Tests failed" } package() { export SCONSFLAGS="$MAKEFLAGS" cd mongodb-src-r${pkgver} scons install \ --use-system-boost \ --use-system-pcre \ --use-system-snappy \ --use-system-tcmalloc \ --ssl \ --disable-warnings-as-errors \ --prefix="$pkgdir/usr" \ --use-system-v8 \ --use-sasl-client install -Dm644 "$srcdir/mongodb.conf" "$pkgdir/etc/mongodb.conf" install -Dm644 "$srcdir/mongodb.service" "$pkgdir/usr/lib/systemd/system/mongodb.service" install -dm700 "$pkgdir/var/lib/mongodb" install -dm755 "$pkgdir/var/log/mongodb" }