123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488 |
- %global daemon mongod
- %bcond_without v8
- Name: mongodb
- Version: 2.2.0
- Release: 4%{?_dist_release}
- Summary: High-performance, schema-free document-oriented database
- Summary(ja): 高性能なスキーマ不要のドキュメント指向データベース
- Group: Applications/Databases
- License: AGPLv3 and zlib and ASL 2.0
- # util/md5 is under the zlib license
- # manpages and bson are under ASL 2.0
- # everything else is AGPLv3
- URL: http://www.mongodb.org
- Source0: http://fastdl.mongodb.org/src/%{name}-src-r%{version}.tar.gz
- Source1: %{name}.init
- Source2: %{name}.logrotate
- Source3: %{name}.conf
- Source4: %{daemon}.sysconf
- Source5: %{name}-tmpfile
- Source6: %{daemon}.service
- Patch1: mongodb-2.2.0-no-term.patch
- ##Patch 4 - not really needed because of v8
- ##Patch 4 - https://github.com/mongodb/mongo/pull/160
- Patch4: mongodb-2.2.0-js.patch
- ##Patch 5 - https://jira.mongodb.org/browse/SERVER-6686
- Patch5: mongodb-2.2.0-fix-xtime.patch
- ##Patch 6 - https://jira.mongodb.org/browse/SERVER-4314
- Patch6: mongodb-2.2.0-boost-filesystem3.patch
- ##Patch 7 - make it possible to use system libraries
- Patch7: mongodb-2.2.0-use-system-version.patch
- ##Patch 8 - make it possible to build shared libraries
- Patch8: mongodb-2.2.0-shared-library.patch
- ##Patch 9 - https://jira.mongodb.org/browse/SERVER-5575
- Patch9: mongodb-2.2.0-full-flag.patch
- ## Patch100: avoid build error under libboost-1.66.0
- ## https://stackoverflow.com/questions/2333952/g-4-4-compile-error-lower-versions-works
- Patch100: mongodb-2.2.0-linenoise_utf8.h.patch
- BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
- BuildRequires: python-devel
- BuildRequires: scons
- BuildRequires: libboost-devel
- BuildRequires: libboost-thread
- BuildRequires: libboost-program-options
- BuildRequires: libboost-filesystem
- BuildRequires: libboost-iostreams
- BuildRequires: pcre-devel
- %if %{with v8}
- BuildRequires: v8-devel
- %else
- BuildRequires: js-devel
- %endif
- BuildRequires: readline-devel
- BuildRequires: libpcap-devel
- BuildRequires: snappy-devel
- BuildRequires: gperftools-devel
- Requires(post): chkconfig
- Requires(preun): chkconfig
- Requires(pre): shadow-utils
- Requires(postun): initscripts
- Requires: lib%{name} = %{version}-%{release}
- # Mongodb must run on a little-endian CPU (see bug #630898)
- ExcludeArch: ppc ppc64 %{sparc} s390 s390x
- %description
- Mongo (from "humongous") is a high-performance, open source, schema-free
- document-oriented database. MongoDB is written in C++ and offers the following
- features:
- * Collection oriented storage: easy storage of object/JSON-style data
- * Dynamic queries
- * Full index support, including on inner objects and embedded arrays
- * Query profiling
- * Replication and fail-over support
- * Efficient storage of binary data including large objects (e.g. photos
- and videos)
- * Auto-sharding for cloud-level scalability (currently in early alpha)
- * Commercial Support Available
- A key goal of MongoDB is to bridge the gap between key/value stores (which are
- fast and highly scalable) and traditional RDBMS systems (which are deep in
- functionality).
- %package -n lib%{name}
- Summary: MongoDB shared libraries
- Summary(ja): MongoDB shared libraries
- Group: Development/Libraries
- %description -n lib%{name}
- This package provides the shared library for the MongoDB client.
- %package devel
- Summary: MongoDB header files
- Summary(ja): MongoDB header files
- Group: Development/Libraries
- Requires: lib%{name} = %{version}-%{release}
- Requires: libboost-devel
- %description devel
- This package provides the header files and C++ driver for MongoDB. MongoDB is
- a high-performance, open source, schema-free document-oriented database.
- %package server
- Summary: MongoDB server, sharding server and support scripts
- Summary(ja): MongoDB server, sharding server and support scripts
- Group: Applications/Databases
- Requires: %{name} = %{version}-%{release}
- %description server
- This package provides the mongo server software, mongo sharding server
- software, default configuration files, and init scripts.
- %prep
- %setup -q -n mongodb-src-r%{version}
- %patch1 -p1
- %patch4 -p1
- %patch5 -p1
- %patch6 -p1
- %patch7 -p1
- %patch8 -p1
- %ifarch %ix86
- %patch9 -p1
- %endif
- %patch100
- # spurious permissions
- chmod -x README
- # wrong end-of-file encoding
- sed -i 's/\r//' README
- %build
- scons %{?_smp_mflags} --sharedclient \
- --use-system-all \
- --prefix=%{buildroot}%{_prefix} \
- --extrapath=%{_prefix} \
- %if %{with v8}
- --usev8 \
- %endif
- CXXFLAGS="-std=c++11"
- %install
- rm -rf %{buildroot}
- scons install \
- --sharedclient \
- --use-system-all \
- --prefix=%{buildroot}%{_prefix} \
- --extrapath=%{_prefix} \
- %if %{with v8}
- --usev8 \
- %endif
- --nostrip \
- --full
- rm -f %{buildroot}%{_libdir}/libmongoclient.a
- rm -f %{buildroot}/usr/lib/libmongoclient.a
- mkdir -p %{buildroot}%{_var}/lib/%{name}
- mkdir -p %{buildroot}%{_localstatedir}/log/%{name}
- mkdir -p %{buildroot}%{_localstatedir}/run/%{name}
- mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
- install -p -D -m 755 %{SOURCE1} %{buildroot}%{_initddir}/%{daemon}
- install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
- install -p -D -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/mongodb.conf
- install -p -D -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/%{daemon}
- mkdir -p %{buildroot}%{_mandir}/man1
- cp -p debian/*.1 %{buildroot}%{_mandir}/man1/
- mkdir -p %{buildroot}%{_localstatedir}/run/%{name}
- %clean
- rm -rf %{buildroot}
- %post -p /sbin/ldconfig
- %postun -p /sbin/ldconfig
- %pre server
- getent group %{name} >/dev/null || groupadd -r %{name}
- getent passwd %{name} >/dev/null || \
- useradd -r -g %{name} -d %{_var}/lib/%{name} -s /sbin/nologin \
- -c "MongoDB Database Server" %{name}
- exit 0
- %post server
- /sbin/chkconfig --add %{daemon}
- %preun server
- if [ $1 = 0 ] ; then
- /sbin/service stop >/dev/null 2>&1
- /sbin/chkconfig --del %{daemon}
- fi
- %postun server
- if [ "$1" -ge "1" ] ; then
- /sbin/service %{daemon} condrestart >/dev/null 2>&1 || :
- fi
- %files
- %defattr(-,root,root,-)
- %{_bindir}/bsondump
- %{_bindir}/mongo
- %{_bindir}/mongodump
- %{_bindir}/mongoexport
- %{_bindir}/mongofiles
- %{_bindir}/mongoimport
- %{_bindir}/mongooplog
- %{_bindir}/mongoperf
- %{_bindir}/mongorestore
- %{_bindir}/mongostat
- %{_bindir}/mongosniff
- %{_bindir}/mongotop
- %{_mandir}/man1/mongo.1*
- %{_mandir}/man1/mongod.1*
- %{_mandir}/man1/mongodump.1*
- %{_mandir}/man1/mongoexport.1*
- %{_mandir}/man1/mongofiles.1*
- %{_mandir}/man1/mongoimport.1*
- %{_mandir}/man1/mongosniff.1*
- %{_mandir}/man1/mongostat.1*
- %{_mandir}/man1/mongorestore.1*
- %{_mandir}/man1/bsondump.1*
- %files -n lib%{name}
- %defattr(-,root,root,-)
- %doc README GNU-AGPL-3.0.txt APACHE-2.0.txt
- %{_libdir}/libmongoclient.so
- %files server
- %defattr(-,root,root,-)
- %{_bindir}/mongod
- %{_bindir}/mongos
- %{_mandir}/man1/mongod.1*
- %{_mandir}/man1/mongos.1*
- %dir %attr(0755, %{name}, root) %{_localstatedir}/log/%{name}
- %dir %attr(0755, %{name}, root) %{_localstatedir}/run/%{name}
- %dir %attr(0755, %{name}, root) %{_localstatedir}/lib/%{name}
- %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
- %config(noreplace) %{_sysconfdir}/mongodb.conf
- %config(noreplace) %{_sysconfdir}/sysconfig/%{daemon}
- %{_initddir}/%{daemon}
- %files devel
- %defattr(-,root,root,-)
- %{_includedir}
- %changelog
- * Thu Jan 18 2018 Toshiaki Ara <ara_t@384.jp> 2.2.0-4
- - rebuild with libboost-1.66.0
- - add Patch100 (mongodb-2.2.0-linenoise_utf8.h.patch)
- * Mon Dec 09 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 2.2.0-2
- - rebuild with libboost-1.54.0
- * Wed Oct 24 2012 Daisuke SUZUKI <daisuke@linux.or.jp> 2.2.0-1
- - initial build for Vine Linux
- * Tue Oct 02 2012 Troy Dawson <tdawson@redhat.com> - 2.2.0-6
- - full flag patch to get 32 bit builds to work
- * Tue Oct 02 2012 Troy Dawson <tdawson@redhat.com> - 2.2.0-5
- - shared libraries patch
- - Fix up minor %files issues
- * Fri Sep 28 2012 Troy Dawson <tdawson@redhat.com> - 2.2.0-4
- - Fix spec files problems
- * Fri Sep 28 2012 Troy Dawson <tdawson@redhat.com> - 2.2.0-3
- - Updated patch to use system libraries
- - Update init script to use a pidfile
- * Thu Sep 27 2012 Troy Dawson <tdawson@redhat.com> - 2.2.0-2
- - Added patch to use system libraries
- * Wed Sep 19 2012 Troy Dawson <tdawson@redhat.com> - 2.2.0-1
- - Updated to 2.2.0
- - Updated patches that were still needed
- - use v8 instead of spider_monkey due to bundled library issues
- * Tue Aug 21 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.7-1
- - Update to 2.0.7
- - Don't patch for boost-filesystem version 3 on EL6
- * Mon Aug 13 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.6-3
- - Remove EL5 support
- - Add patch to use boost-filesystem version 3
- * Wed Aug 01 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.6-2
- - Don't apply fix-xtime patch on EL5
- * Wed Aug 01 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.6-1
- - Update to 2.0.6
- - Update no-term patch
- - Add fix-xtime patch for new boost
- * Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0.4-2
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
- * Tue Apr 17 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.4-1
- - Update to 2.0.4
- - Remove oldpython patch (fixed upstream)
- - Remove snappy patch (fixed upstream)
- * Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0.2-10
- - Rebuilt for c++ ABI breakage
- * Fri Feb 10 2012 Petr Pisar <ppisar@redhat.com> - 2.0.2-9
- - Rebuild against PCRE 8.30
- * Fri Feb 03 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.2-8
- - Disable HTTP interface by default (#752331)
- * Fri Feb 03 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.2-7
- - Enable journaling by default (#656112)
- - Remove BuildRequires on unittest (#755081)
- * Fri Feb 03 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.2-6
- - Clean up mongodb-src-r2.0.2-js.patch and fix #787246
- * Tue Jan 17 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.2-5
- - Enable build using external snappy
- * Tue Jan 17 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.2-4
- - Patch buildsystem for building on older pythons (RHEL5)
- * Mon Jan 16 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.2-3
- - Merge the 2.0.2 spec file with EPEL
- - Merge mongodb-sm-pkgconfig.patch into mongodb-src-r2.0.2-js.patch
- * Mon Jan 16 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.2-2
- - Add pkg-config enablement patch
- * Sat Jan 14 2012 Nathaniel McCallum <nathaniel@natemccallum.com> - 2.0.2-1
- - Update to 2.0.2
- - Add new files (mongotop and bsondump manpage)
- - Update mongodb-src-r1.8.2-js.patch => mongodb-src-r2.0.2-js.patch
- - Update mongodb-fix-fork.patch
- - Fix pcre linking
- * Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.8.2-11
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
- * Sun Nov 20 2011 Chris Lalancette <clalancette@gmail.com> - 1.8.2-10
- - Rebuild for rawhide boost update
- * Thu Sep 22 2011 Chris Lalancette <clalance@redhat.com> - 1.8.2-9
- - Copy the right source file into place for tmpfiles.d
- * Tue Sep 20 2011 Chris Lalancette <clalance@redhat.com> - 1.8.2-8
- - Add a tmpfiles.d file to create the /var/run/mongodb subdirectory
- * Mon Sep 12 2011 Chris Lalancette <clalance@redhat.com> - 1.8.2-7
- - Add a patch to fix the forking to play nice with systemd
- - Make the /var/run/mongodb directory owned by mongodb
- * Thu Jul 28 2011 Chris Lalancette <clalance@redhat.com> - 1.8.2-6
- - BZ 725601 - fix the javascript engine to not hang (thanks to Eduardo Habkost)
- * Mon Jul 25 2011 Chris Lalancette <clalance@redhat.com> - 1.8.2-5
- - Fixes to post server, preun server, and postun server to use systemd
- * Thu Jul 21 2011 Chris Lalancette <clalance@redhat.com> - 1.8.2-4
- - Update to use systemd init
- * Thu Jul 21 2011 Chris Lalancette <clalance@redhat.com> - 1.8.2-3
- - Rebuild for boost ABI break
- * Wed Jul 13 2011 Chris Lalancette <clalance@redhat.com> - 1.8.2-2
- - Make mongodb-devel require boost-devel (BZ 703184)
- * Fri Jul 01 2011 Chris Lalancette <clalance@redhat.com> - 1.8.2-1
- - Update to upstream 1.8.2
- - Add patch to ignore TERM
- * Fri Jul 01 2011 Chris Lalancette <clalance@redhat.com> - 1.8.0-3
- - Bump release to build against new boost package
- * Sat Mar 19 2011 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.8.0-2
- - Make mongod bind only to 127.0.0.1 by default
- * Sat Mar 19 2011 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.8.0-1
- - Update to 1.8.0
- - Remove upstreamed nonce patch
- * Wed Feb 16 2011 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.7.5-5
- - Add nonce patch
- * Sun Feb 13 2011 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.7.5-4
- - Manually define to use boost-fs v2
- * Sat Feb 12 2011 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.7.5-3
- - Disable extra warnings
- * Fri Feb 11 2011 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.7.5-2
- - Disable compilation errors on warnings
- * Fri Feb 11 2011 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.7.5-1
- - Update to 1.7.5
- - Remove CPPFLAGS override
- - Added libmongodb package
- * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.4-4
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
- * Mon Dec 06 2010 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.6.4-3
- - Add post/postun ldconfig... oops!
- * Mon Dec 06 2010 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.6.4-2
- - Enable --sharedclient option, remove static lib
- * Sat Dec 04 2010 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.6.4-1
- - New upstream release
- * Fri Oct 08 2010 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.6.3-4
- - Put -fPIC onto both the build and install scons calls
- * Fri Oct 08 2010 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.6.3-3
- - Define _initddir when it doesn't exist for el5 and others
- * Fri Oct 08 2010 Nathaniel McCallum <nathaniel@natemccallum.com> - 1.6.3-2
- - Added -fPIC build option which was dropped by accident
- * Thu Oct 7 2010 Ionuț C. Arțăriși <mapleoin@fedoraproject.org> - 1.6.3-1
- - removed js Requires
- - new upstream release
- - added more excludearches: sparc s390, s390x and bugzilla pointer
- * Tue Sep 7 2010 Ionuț C. Arțăriși <mapleoin@fedoraproject.org> - 1.6.2-2
- - added ExcludeArch for ppc
- * Fri Sep 3 2010 Ionuț C. Arțăriși <mapleoin@fedoraproject.org> - 1.6.2-1
- - new upstream release 1.6.2
- - send mongod the USR1 signal when doing logrotate
- - use config options when starting the daemon from the initfile
- - removed dbpath patch: rely on config
- - added pid directory to config file and created the dir in the spec
- - made the init script use options from the config file
- - changed logpath in mongodb.conf
- * Wed Sep 1 2010 Ionuț C. Arțăriși <mapleoin@fedoraproject.org> - 1.6.1-1
- - new upstream release 1.6.1
- - patched SConstruct to allow setting cppflags
- - stopped using sed and chmod macros
- * Fri Aug 6 2010 Ionuț C. Arțăriși <mapleoin@fedoraproject.org> - 1.6.0-1
- - new upstream release: 1.6.0
- - added -server package
- - added new license file to %%docs
- - fix spurious permissions and EOF encodings on some files
- * Tue Jun 15 2010 Ionuț C. Arțăriși <mapleoin@fedoraproject.org> - 1.4.3-2
- - added explicit js requirement
- - changed some names
- * Wed May 26 2010 Ionuț C. Arțăriși <mapleoin@fedoraproject.org> - 1.4.3-1
- - updated to 1.4.3
- - added zlib license for util/md5
- - deleted upstream deb/rpm recipes
- - made scons not strip binaries
- - made naming more consistent in logfile, lockfiles, init scripts etc.
- - included manpages and added corresponding license
- - added mongodb.conf to sources
- * Fri Oct 2 2009 Ionuț Arțăriși <mapleoin@fedoraproject.org> - 1.0.0-3
- - fixed libpath issue for 64bit systems
- * Thu Oct 1 2009 Ionuț Arțăriși <mapleoin@fedoraproject.org> - 1.0.0-2
- - added virtual -static package
- * Mon Aug 31 2009 Ionuț Arțăriși <mapleoin@fedoraproject.org> - 1.0.0-1
- - Initial release.
|