Compare commits

..

No commits in common. "debian-fixes" and "master" have entirely different histories.

12 changed files with 96 additions and 162 deletions

1
.gitignore vendored
View file

@ -158,4 +158,3 @@ src/third_party/js-1.7/jskwgen
src/mongo/buildinfo.cpp src/mongo/buildinfo.cpp
buildinfo.cpp buildinfo.cpp
/.settings/ /.settings/
/.pc

11
debian/README.Debian vendored
View file

@ -1,15 +1,6 @@
MongoDB for Debian MongoDB for Debian
------------------ ------------------
Database at different location from upstream
To be consistent with the Debian Policy, the mongodb-server package puts
the databases under the /var/lib/mongodb directory instead of what
upstream uses in its documentation (namely, /data/db).
You can change this on your installation by editing the configuration file
/etc/mongodb.conf in the dbpath directive.
Binds only to localhost Binds only to localhost
As mongo needs some tuning to become secure, it binds to localhost by As mongo needs some tuning to become secure, it binds to localhost by
@ -23,4 +14,4 @@ Why only for x86 and amd64?
that the mongodb will be useful even it is not available for all Debian that the mongodb will be useful even it is not available for all Debian
supported platforms. supported platforms.
-- Rogério Brito <rbrito@ime.usp.br>, Fri, 12 Apr 2013 22:10:41 -0300 -- Antonin Kral <A.Kral@sh.cvut.cz>, Fri, 12 Feb 2010 09:19, +0100

27
debian/README.source vendored
View file

@ -1,26 +1,13 @@
git-buildpackage gbp
================ ===
Use of the command `git-import-orig` from the git-buildpackage suite of Use of git-import-orig is highly encouraged.
scripts is highly encouraged, as it makes for an easier maintenance of the
packaging.
When importing new upstream versions, it is recommended to run:
git-buildpackage --pristine-tar --uscan
so that most of the tasks are automated.
debian/gbp.conf debian/gbp.conf
=============== ===============
The `debian/*` files from the upstream tarball are filtered out (read: debian/* files from upstream tarball are filtered out because the merge is really
"mostly ignored") because of divergences that create conflicts that are difficult to maintain.
difficult to merge. It is up to the maintainer to check manually for upstream changes in debian dir,
especially man pages.
That being said, it is a good thing to manually check what upstream changed
in their `debian` dir and adapt those changes to the Debian packaging, as
they may have changed build dependencies or other assumptions.
-- Rogério Brito <rbrito@ime.usp.br>, Fri, 12 Apr 2013 22:26:07 -0300

110
debian/control vendored
View file

@ -2,78 +2,53 @@ Source: mongodb
Section: database Section: database
Priority: optional Priority: optional
Maintainer: Antonin Kral <A.Kral@sh.cvut.cz> Maintainer: Antonin Kral <A.Kral@sh.cvut.cz>
Uploaders: Uploaders: Roberto C. Sanchez <roberto@connexer.com>, Jérémy Lal <kapouer@melix.org>
Roberto C. Sanchez <roberto@connexer.com>, Build-Depends: debhelper (>= 9), cdbs (>= 0.4.73~), libpcre3, libpcre3-dev, scons, libreadline-dev, libboost-dev, libboost-thread-dev, libboost-filesystem-dev, libboost-program-options-dev, libboost-date-time-dev, python-pymongo
Jérémy Lal <kapouer@melix.org>
Build-Depends:
cdbs (>= 0.4.73~),
debhelper (>= 9),
libboost-date-time-dev,
libboost-dev,
libboost-filesystem-dev,
libboost-program-options-dev,
libboost-thread-dev,
libgoogle-perftools-dev,
libpcap-dev,
libpcre3,
libpcre3-dev,
libreadline-dev,
libsnappy-dev,
libstemmer-dev,
libv8-dev,
python-pymongo,
scons
Standards-Version: 3.9.3 Standards-Version: 3.9.3
Vcs-Git: git://github.com/bobek/mongo-debian.git Vcs-Git: git://github.com/bobek/mongo-debian.git
Vcs-Browser: https://github.com/bobek/mongo-debian Vcs-Browser: https://github.com/bobek/mongo-debian
Homepage: http://www.mongodb.org Homepage: http://www.mongodb.org
Package: mongodb Package: mongodb
Architecture: all Architecture: i386 amd64
Depends: Depends: mongodb-server (>= 1:2.4.1-2), mongodb-dev, ${shlibs:Depends}, ${misc:Depends}
mongodb-dev,
mongodb-server (>= 1:2.4.1-2),
${misc:Depends},
${shlibs:Depends}
Description: object/document-oriented database (metapackage) Description: object/document-oriented database (metapackage)
MongoDB is a high-performance, open source, schema-free MongoDB is a high-performance, open source, schema-free
document-oriented data store that's easy to deploy, manage document-oriented data store that's easy to deploy, manage
and use. It's network accessible, written in C++ and offers and use. It's network accessible, written in C++ and offers
the following features: the following features :
. .
* Collection oriented storage - easy storage of object-style data * Collection oriented storage - easy storage of object-
style data
* Full index support, including on inner objects * Full index support, including on inner objects
* Query profiling * Query profiling
* Replication and fail-over support * Replication and fail-over support
* Efficient storage of binary data including large objects (e.g. videos) * Efficient storage of binary data including large
objects (e.g. videos)
* Auto-sharding for cloud-level scalability * Auto-sharding for cloud-level scalability
. .
High performance, scalability, and reasonable depth of High performance, scalability, and reasonable depth of
functionality are the goals for the project. functionality are the goals for the project.
. .
This is a convenience metapackage that depends on all the mongodb parts: This is a metapackage that depends on all the mongodb parts.
the server, the clients and the development files (headers and library).
Package: mongodb-server Package: mongodb-server
Architecture: amd64 i386 Architecture: i386 amd64
Depends: Depends: mongodb-clients, ${shlibs:Depends}, ${misc:Depends}, adduser
adduser, Replaces: mongodb (<= 1:1.4.2-2)
mongodb-clients,
${misc:Depends},
${shlibs:Depends}
Replaces:
mongodb (<= 1:1.4.2-2)
Description: object/document-oriented database (server package) Description: object/document-oriented database (server package)
MongoDB is a high-performance, open source, schema-free MongoDB is a high-performance, open source, schema-free
document-oriented data store that's easy to deploy, manage document-oriented data store that's easy to deploy, manage
and use. It's network accessible, written in C++ and offers and use. It's network accessible, written in C++ and offers
the following features: the following features :
. .
* Collection oriented storage - easy storage of object-style data * Collection oriented storage - easy storage of object-
style data
* Full index support, including on inner objects * Full index support, including on inner objects
* Query profiling * Query profiling
* Replication and fail-over support * Replication and fail-over support
* Efficient storage of binary data including large objects (e.g. videos) * Efficient storage of binary data including large
objects (e.g. videos)
* Auto-sharding for cloud-level scalability * Auto-sharding for cloud-level scalability
. .
High performance, scalability, and reasonable depth of High performance, scalability, and reasonable depth of
@ -82,23 +57,22 @@ Description: object/document-oriented database (server package)
This package contains the server itself. This package contains the server itself.
Package: mongodb-clients Package: mongodb-clients
Architecture: amd64 i386 Architecture: i386 amd64
Depends: Depends: ${shlibs:Depends}, ${misc:Depends}
${misc:Depends}, Replaces: mongodb (<= 1:1.4.2-2)
${shlibs:Depends}
Replaces:
mongodb (<= 1:1.4.2-2)
Description: object/document-oriented database (client apps) Description: object/document-oriented database (client apps)
MongoDB is a high-performance, open source, schema-free MongoDB is a high-performance, open source, schema-free
document-oriented data store that's easy to deploy, manage document-oriented data store that's easy to deploy, manage
and use. It's network accessible, written in C++ and offers and use. It's network accessible, written in C++ and offers
the following features: the following features :
. .
* Collection oriented storage - easy storage of object-style data * Collection oriented storage - easy storage of object-
style data
* Full index support, including on inner objects * Full index support, including on inner objects
* Query profiling * Query profiling
* Replication and fail-over support * Replication and fail-over support
* Efficient storage of binary data including large objects (e.g. videos) * Efficient storage of binary data including large
objects (e.g. videos)
* Auto-sharding for cloud-level scalability * Auto-sharding for cloud-level scalability
. .
High performance, scalability, and reasonable depth of High performance, scalability, and reasonable depth of
@ -108,29 +82,27 @@ Description: object/document-oriented database (client apps)
Package: mongodb-dev Package: mongodb-dev
Section: libdevel Section: libdevel
Architecture: amd64 i386 Architecture: i386 amd64
Depends: Depends: libboost-dev, ${shlibs:Depends}, ${misc:Depends}
libboost-dev, Suggests: mongodb-server
${misc:Depends}, Replaces: mongodb (<= 1:1.4.2-2)
${shlibs:Depends}
Suggests:
mongodb-server
Replaces:
mongodb (<= 1:1.4.2-2)
Description: object/document-oriented database (development) Description: object/document-oriented database (development)
MongoDB is a high-performance, open source, schema-free MongoDB is a high-performance, open source, schema-free
document-oriented data store that's easy to deploy, manage document-oriented data store that's easy to deploy, manage
and use. It's network accessible, written in C++ and offers and use. It's network accessible, written in C++ and offers
the following features: the following features :
. .
* Collection oriented storage - easy storage of object-style data * Collection oriented storage - easy storage of object-
style data
* Full index support, including on inner objects * Full index support, including on inner objects
* Query profiling * Query profiling
* Replication and fail-over support * Replication and fail-over support
* Efficient storage of binary data including large objects (e.g. videos) * Efficient storage of binary data including large
objects (e.g. videos)
* Auto-sharding for cloud-level scalability * Auto-sharding for cloud-level scalability
. .
High performance, scalability, and reasonable depth of High performance, scalability, and reasonable depth of
functionality are the goals for the project. functionality are the goals for the project.
. .
This package contains the development headers and libraries. Development headers and libraries.

10
debian/copyright vendored
View file

@ -1,4 +1,4 @@
This package was debianized This package was debianized
by Kristina Chodorow <kristina@10gen.com> by Kristina Chodorow <kristina@10gen.com>
and Antonin Kral <A.Kral@bobek.cz> and Antonin Kral <A.Kral@bobek.cz>
@ -13,7 +13,7 @@ Upstream Authors:
Kristina Chodorow Kristina Chodorow
Debian Maintainers: Debian Maintainers:
Antonin Kral Antonin Kral
Roberto C. Sanchez Roberto C. Sanchez
@ -25,8 +25,8 @@ License:
Apache License 2.0 Apache License 2.0
http://www.apache.org/licenses/LICENSE-2.0 http://www.apache.org/licenses/LICENSE-2.0
On a Debian system, the license can be found at On a Debian system, the license can be found at
/usr/share/common-licenses/Apache-2.0 /usr/share/common-licenses/Apache-2.0
AGPL 3.0 AGPL 3.0
http://www.fsf.org/licensing/licenses/agpl-3.0.html http://www.fsf.org/licensing/licenses/agpl-3.0.html
@ -44,7 +44,7 @@ License Notice for SCONS
SCONS and it components, generated code and utilities (e.g. gch.py) are SCONS and it components, generated code and utilities (e.g. gch.py) are
licensed under GPL 2. licensed under GPL 2.
License Notice for Boost License Notice for Boost
------------------------ ------------------------

View file

@ -1,12 +1,7 @@
debian/tmp/usr/bin/bsondump
debian/tmp/usr/bin/mongo debian/tmp/usr/bin/mongo
debian/tmp/usr/bin/mongodump debian/tmp/usr/bin/mongodump
debian/tmp/usr/bin/mongoexport debian/tmp/usr/bin/mongoexport
debian/tmp/usr/bin/mongofiles debian/tmp/usr/bin/mongofiles
debian/tmp/usr/bin/mongoimport debian/tmp/usr/bin/mongoimport
debian/tmp/usr/bin/mongooplog
debian/tmp/usr/bin/mongoperf
debian/tmp/usr/bin/mongorestore debian/tmp/usr/bin/mongorestore
debian/tmp/usr/bin/mongosniff
debian/tmp/usr/bin/mongostat debian/tmp/usr/bin/mongostat
debian/tmp/usr/bin/mongotop

View file

@ -0,0 +1,30 @@
# Agreed with upstream, that redefining rpath is necessary as xulrunner used to
# change API without changing so-name
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongo /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongodump /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongoexport /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongofiles /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongoimport /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongorestore /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongostat /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongo /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongodump /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongoexport /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongofiles /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongoimport /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongorestore /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath ./usr/bin/mongostat /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongo /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongodump /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongoexport /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongofiles /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongoimport /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongorestore /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongostat /usr/lib/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongo /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongodump /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongoexport /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongofiles /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongoimport /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongorestore /usr/lib64/xulrunner-1.9.1
mongodb-clients: binary-or-shlib-defines-rpath usr/bin/mongostat /usr/lib64/xulrunner-1.9.1

View file

@ -1,26 +0,0 @@
MongoDB for Debian
------------------
Database at different location from upstream
To be consistent with the Debian Policy, the mongodb-server package puts
the databases under the /var/lib/mongodb directory instead of what
upstream uses in its documentation (namely, /data/db).
You can change this on your installation by editing the configuration file
/etc/mongodb.conf in the dbpath directive.
Binds only to localhost
As mongo needs some tuning to become secure, it binds to localhost by
default. You can change this behavior in /etc/mongodb.conf by
editing/removing/commenting out bind_ip line.
Why only for x86 and amd64?
The mongodb server depends on both little-endianness and unaligned memory
access, which I believe means it can only work on i386 and amd64. We believe
that the mongodb will be useful even it is not available for all Debian
supported platforms.
-- Rogério Brito <rbrito@ime.usp.br>, Fri, 12 Apr 2013 22:10:41 -0300

10
debian/mongodb-server.lintian-overrides vendored Normal file
View file

@ -0,0 +1,10 @@
# Agreed with upstream, that redefining rpath is necessary as xulrunner used to
# change API without changing so-name
mongodb-server: binary-or-shlib-defines-rpath ./usr/bin/mongod /usr/lib/xulrunner-1.9.1
mongodb-server: binary-or-shlib-defines-rpath ./usr/bin/mongos /usr/lib/xulrunner-1.9.1
mongodb-server: binary-or-shlib-defines-rpath ./usr/bin/mongod /usr/lib64/xulrunner-1.9.1
mongodb-server: binary-or-shlib-defines-rpath ./usr/bin/mongos /usr/lib64/xulrunner-1.9.1
mongodb-server: binary-or-shlib-defines-rpath usr/bin/mongod /usr/lib/xulrunner-1.9.1
mongodb-server: binary-or-shlib-defines-rpath usr/bin/mongos /usr/lib/xulrunner-1.9.1
mongodb-server: binary-or-shlib-defines-rpath usr/bin/mongod /usr/lib64/xulrunner-1.9.1
mongodb-server: binary-or-shlib-defines-rpath usr/bin/mongos /usr/lib64/xulrunner-1.9.1

View file

@ -1,22 +0,0 @@
From 06641cf5dfebebb975d8308c823d5a18daaa1738 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= <rbrito@ime.usp.br>
Date: Fri, 12 Apr 2013 23:50:07 -0300
Subject: [PATCH] Use libstemmer when using system libraries.
---
SConstruct | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/SConstruct
+++ b/SConstruct
@@ -785,7 +785,9 @@
CPPDEFINES=['BOOST_ALL_NO_LIB'])
env.Prepend(CPPPATH=['$BUILD_DIR/third_party/s2'])
-env.Prepend(CPPPATH=['$BUILD_DIR/third_party/libstemmer_c/include'])
+
+if not use_system_version_of_library("stemmer"):
+ env.Prepend(CPPPATH=['$BUILD_DIR/third_party/libstemmer_c/include'])
env.Append( CPPPATH=['$EXTRACPPPATH'],
LIBPATH=['$EXTRALIBPATH'] )

View file

@ -1 +0,0 @@
0001-Use-libstemmer-when-using-system-libraries.patch

5
debian/rules vendored
View file

@ -19,9 +19,8 @@ ifneq (,$(findstring parallel,$(DEB_BUILD_OPTIONS)))
endif endif
DEB_SCONS_BUILD_TARGET = all DEB_SCONS_BUILD_TARGET = all
DEB_SCONS_BUILD_OPTIONS = --use-system-all DEB_SCONS_INSTALL_OPTIONS += --prefix=$(CURDIR)/debian/tmp/usr --full
DEB_SCONS_INSTALL_OPTIONS += --prefix=$(CURDIR)/debian/tmp/usr --full --use-system-all DEB_SCONS_CHECK_TARGET = --smokedbprefix=$(CURDIR)/debian/tmp-test smoke
DEB_SCONS_CHECK_TARGET = --smokedbprefix=$(CURDIR)/debian/tmp-test smoke --use-system-all
clean:: clean::
find . -name "*.pyc" -delete find . -name "*.pyc" -delete