unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [PATCH] Build debian package for python-bindings.
@ 2011-06-19 18:16 david
  2011-06-19 19:53 ` david
  0 siblings, 1 reply; 8+ messages in thread
From: david @ 2011-06-19 18:16 UTC (permalink / raw)
  To: notmuch; +Cc: David Bremner

From: David Bremner <bremner@debian.org>

This uses dh_python2 (included with sufficiently recent versions of
the python/python-all packages). python-all brings in all of the
supported versions of python. The double calls to dh_auto_install are
to avoid looping over python versions ourselves.
---
 debian/control |   17 ++++++++++++++++-
 debian/rules   |   14 +++++++++++++-
 2 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/debian/control b/debian/control
index 3491e9a..2fefcbe 100644
--- a/debian/control
+++ b/debian/control
@@ -3,7 +3,9 @@ Section: mail
 Priority: extra
 Maintainer: Carl Worth <cworth@debian.org>
 Uploaders: Jameson Graef Rollins <jrollins@finestructure.net>, martin f. krafft <madduck@debian.org>
-Build-Depends: debhelper (>= 7.0.50~), pkg-config, libxapian-dev, libgmime-2.4-dev, libtalloc-dev, libz-dev, emacs (>= 23~)
+Build-Depends: debhelper (>= 7.0.50~), pkg-config, libxapian-dev, 
+ libgmime-2.4-dev, libtalloc-dev, libz-dev, emacs (>= 23~), 
+ python-all (>= 2.6.6-3~)
 Standards-Version: 3.9.1.0
 Homepage: http://notmuchmail.org/
 Vcs-Git: git://notmuchmail.org/git/notmuch
@@ -49,3 +51,16 @@ Description: thread-based email index, search and tagging (development)
  .
  This package provides the necessary development libraries and header
  files to allow you to develop new software using libnotmuch.
+
+Package: python-notmuch
+Architecture: all
+Section: python
+Depends: ${misc:Depends},${python:Depends}, libnotmuch1
+Description: python interface to the notmuch mail search and index library
+ Notmuch is a system for indexing, searching, reading, and tagging
+ large collections of email messages in maildir or mh format. It uses
+ the Xapian library to provide fast, full-text search with a very
+ convenient search syntax.
+ .
+ This package provides a python interface to the notmuch
+ functionality, directly interfacing with a shared notmuch library.
diff --git a/debian/rules b/debian/rules
index a4b526c..5aa27e8 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,11 +1,23 @@
 #!/usr/bin/make -f
 
 %:
-	dh $@
+	dh --with python2 $@
 
 override_dh_auto_configure:
 	dh_auto_configure -- --emacslispdir=/usr/share/emacs/site-lisp/notmuch
 
+override_dh_auto_build:
+	dh_auto_build
+	dh_auto_build --sourcedirectory bindings/python
+
+override_dh_auto_install:
+	dh_auto_install
+	dh_auto_install --sourcedirectory bindings/python
+
+override_dh_auto_clean:
+	dh_auto_clean
+	dh_auto_clean --sourcedirectory bindings/python
+
 override_dh_installdocs:
 	dh_installdocs
 	install -m644 vim/README debian/notmuch/usr/share/doc/notmuch/README.vim
-- 
1.7.5.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* (no subject)
  2011-06-19 18:16 [PATCH] Build debian package for python-bindings david
@ 2011-06-19 19:53 ` david
  2011-06-19 19:53   ` [PATCH 1/2] Build debian package for python-bindings david
  2011-06-19 19:53   ` [PATCH 2/2] Do not import notmuch in setup.py david
  0 siblings, 2 replies; 8+ messages in thread
From: david @ 2011-06-19 19:53 UTC (permalink / raw)
  To: notmuch

Bah, my previous attempt didn't build cleanly in a chroot, so I had to
patch setup.py. 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/2] Build debian package for python-bindings.
  2011-06-19 19:53 ` david
@ 2011-06-19 19:53   ` david
  2011-06-19 20:10     ` [PATCH] debian: break up build-depends on separate lines Jameson Graef Rollins
  2011-06-20  7:40     ` [PATCH 1/2] Build debian package for python-bindings Sebastian Spaeth
  2011-06-19 19:53   ` [PATCH 2/2] Do not import notmuch in setup.py david
  1 sibling, 2 replies; 8+ messages in thread
From: david @ 2011-06-19 19:53 UTC (permalink / raw)
  To: notmuch; +Cc: David Bremner

From: David Bremner <bremner@debian.org>

This uses dh_python2 (included with sufficiently recent versions of
the python/python-all packages). python-all brings in all of the
supported versions of python. The double calls to dh_auto_install are
to avoid looping over python versions ourselves.
---
 debian/control                |   17 ++++++++++++++++-
 debian/python-notmuch.install |    1 +
 debian/rules                  |   14 +++++++++++++-
 3 files changed, 30 insertions(+), 2 deletions(-)
 create mode 100644 debian/python-notmuch.install

diff --git a/debian/control b/debian/control
index 3491e9a..fa5f762 100644
--- a/debian/control
+++ b/debian/control
@@ -3,7 +3,9 @@ Section: mail
 Priority: extra
 Maintainer: Carl Worth <cworth@debian.org>
 Uploaders: Jameson Graef Rollins <jrollins@finestructure.net>, martin f. krafft <madduck@debian.org>
-Build-Depends: debhelper (>= 7.0.50~), pkg-config, libxapian-dev, libgmime-2.4-dev, libtalloc-dev, libz-dev, emacs (>= 23~)
+Build-Depends: debhelper (>= 7.0.50~), pkg-config, libxapian-dev, 
+ libgmime-2.4-dev, libtalloc-dev, libz-dev, emacs (>= 23~), 
+ python-all (>= 2.6.6-3~)
 Standards-Version: 3.9.1.0
 Homepage: http://notmuchmail.org/
 Vcs-Git: git://notmuchmail.org/git/notmuch
@@ -49,3 +51,16 @@ Description: thread-based email index, search and tagging (development)
  .
  This package provides the necessary development libraries and header
  files to allow you to develop new software using libnotmuch.
+
+Package: python-notmuch
+Architecture: all
+Section: python
+Depends: ${misc:Depends}, ${python:Depends}, libnotmuch1
+Description: python interface to the notmuch mail search and index library
+ Notmuch is a system for indexing, searching, reading, and tagging
+ large collections of email messages in maildir or mh format. It uses
+ the Xapian library to provide fast, full-text search with a very
+ convenient search syntax.
+ .
+ This package provides a Python interface to the notmuch
+ functionality, directly interfacing with a shared notmuch library.
diff --git a/debian/python-notmuch.install b/debian/python-notmuch.install
new file mode 100644
index 0000000..607c065
--- /dev/null
+++ b/debian/python-notmuch.install
@@ -0,0 +1 @@
+usr/lib/python*
diff --git a/debian/rules b/debian/rules
index a4b526c..7343ac2 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,11 +1,23 @@
 #!/usr/bin/make -f
 
 %:
-	dh $@
+	dh --with python2 $@
 
 override_dh_auto_configure:
 	dh_auto_configure -- --emacslispdir=/usr/share/emacs/site-lisp/notmuch
 
+override_dh_auto_build:
+	dh_auto_build
+	dh_auto_build --sourcedirectory bindings/python
+
+override_dh_auto_clean:
+	dh_auto_clean
+	dh_auto_clean --sourcedirectory bindings/python
+
+override_dh_auto_install:
+	dh_auto_install
+	dh_auto_install --sourcedirectory bindings/python
+
 override_dh_installdocs:
 	dh_installdocs
 	install -m644 vim/README debian/notmuch/usr/share/doc/notmuch/README.vim
-- 
1.7.5.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/2] Do not import notmuch in setup.py.
  2011-06-19 19:53 ` david
  2011-06-19 19:53   ` [PATCH 1/2] Build debian package for python-bindings david
@ 2011-06-19 19:53   ` david
  2011-06-20  7:47     ` Sebastian Spaeth
  1 sibling, 1 reply; 8+ messages in thread
From: david @ 2011-06-19 19:53 UTC (permalink / raw)
  To: notmuch; +Cc: David Bremner

From: David Bremner <bremner@debian.org>

Importing notmuch loads the notmuch shared library. When building
without a system install of notmuch, this requires e.g. setting
LD_LIBRARY_PATH for building and fails completely for cleaning.
---
 bindings/python/setup.py |   17 ++++++++++++++++-
 1 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/bindings/python/setup.py b/bindings/python/setup.py
index e4a3a25..1497bc4 100644
--- a/bindings/python/setup.py
+++ b/bindings/python/setup.py
@@ -1,7 +1,22 @@
 #!/usr/bin/env python
 
+import os
+import re
 from distutils.core import setup
-from notmuch import __VERSION__
+
+def get_version():
+    file = open('notmuch/__init__.py')
+    try:
+        for line in file:
+            if re.match('__VERSION__\s*=\s*',line) != None:
+                version = line.split('=', 1)[1]
+                return eval(version, {}, {})
+    finally:
+        file.close()
+    raise IOError('Unexpected end-of-file')
+
+__VERSION__=get_version()
+
 setup(name='notmuch',
       version=__VERSION__,
       description='Python binding of the notmuch mail search and indexing library.',
-- 
1.7.5.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH] debian: break up build-depends on separate lines
  2011-06-19 19:53   ` [PATCH 1/2] Build debian package for python-bindings david
@ 2011-06-19 20:10     ` Jameson Graef Rollins
  2011-06-20  7:40     ` [PATCH 1/2] Build debian package for python-bindings Sebastian Spaeth
  1 sibling, 0 replies; 8+ messages in thread
From: Jameson Graef Rollins @ 2011-06-19 20:10 UTC (permalink / raw)
  To: Notmuch Mail

For clarity and cleaner future diffs.
---
 debian/control |   12 +++++++++---
 1 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/debian/control b/debian/control
index fa5f762..8ffa22b 100644
--- a/debian/control
+++ b/debian/control
@@ -3,9 +3,15 @@ Section: mail
 Priority: extra
 Maintainer: Carl Worth <cworth@debian.org>
 Uploaders: Jameson Graef Rollins <jrollins@finestructure.net>, martin f. krafft <madduck@debian.org>
-Build-Depends: debhelper (>= 7.0.50~), pkg-config, libxapian-dev, 
- libgmime-2.4-dev, libtalloc-dev, libz-dev, emacs (>= 23~), 
- python-all (>= 2.6.6-3~)
+Build-Depends:
+ debhelper (>= 7.0.50~),
+ pkg-config,
+ libxapian-dev,
+ libgmime-2.4-dev,
+ libtalloc-dev,
+ libz-dev,
+ emacs (>= 23~),
+ python-all (>= 2.6.6-3~),
 Standards-Version: 3.9.1.0
 Homepage: http://notmuchmail.org/
 Vcs-Git: git://notmuchmail.org/git/notmuch
-- 
1.7.5.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/2] Build debian package for python-bindings.
  2011-06-19 19:53   ` [PATCH 1/2] Build debian package for python-bindings david
  2011-06-19 20:10     ` [PATCH] debian: break up build-depends on separate lines Jameson Graef Rollins
@ 2011-06-20  7:40     ` Sebastian Spaeth
  1 sibling, 0 replies; 8+ messages in thread
From: Sebastian Spaeth @ 2011-06-20  7:40 UTC (permalink / raw)
  To: david, notmuch; +Cc: David Bremner

[-- Attachment #1: Type: text/plain, Size: 297 bytes --]

On Sun, 19 Jun 2011 16:53:42 -0300, david@tethera.net wrote:
> From: David Bremner <bremner@debian.org>

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>

Looks good and nice to me (couldn't test it yet) if you are willing to
include python as build time dependency for everyone.

Sebastian

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/2] Do not import notmuch in setup.py.
  2011-06-19 19:53   ` [PATCH 2/2] Do not import notmuch in setup.py david
@ 2011-06-20  7:47     ` Sebastian Spaeth
  2011-06-23 22:24       ` Carl Worth
  0 siblings, 1 reply; 8+ messages in thread
From: Sebastian Spaeth @ 2011-06-20  7:47 UTC (permalink / raw)
  To: david, notmuch; +Cc: David Bremner

[-- Attachment #1: Type: text/plain, Size: 597 bytes --]

On Sun, 19 Jun 2011 16:53:43 -0300, david@tethera.net wrote:
> From: David Bremner <bremner@debian.org>
> 
> Importing notmuch loads the notmuch shared library. When building
> without a system install of notmuch, this requires e.g. setting
> LD_LIBRARY_PATH for building and fails completely for cleaning.

Yes, doing it this way in setup.py seems sane and fine to me. setup.py
still works.
Given that this is /bindings/python/* material, I took the liberty to
merge this patch.

The debian/control part, I would prefer it some maintainer would nod
off/merge that one.

Sebastian

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/2] Do not import notmuch in setup.py.
  2011-06-20  7:47     ` Sebastian Spaeth
@ 2011-06-23 22:24       ` Carl Worth
  0 siblings, 0 replies; 8+ messages in thread
From: Carl Worth @ 2011-06-23 22:24 UTC (permalink / raw)
  To: Sebastian Spaeth, david, notmuch; +Cc: David Bremner

[-- Attachment #1: Type: text/plain, Size: 430 bytes --]

On Mon, 20 Jun 2011 09:47:56 +0200, Sebastian Spaeth <Sebastian@SSpaeth.de> wrote:
> The debian/control part, I would prefer it some maintainer would nod
> off/merge that one.

Fortunately, that's David himself, now. :-)

This seems to all be pushed now.

David, it would help me if you would send a note to the list when you've
merged a patch series such as this one.

Thanks,

-Carl

-- 
carl.d.worth@intel.com

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2011-06-23 22:24 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-06-19 18:16 [PATCH] Build debian package for python-bindings david
2011-06-19 19:53 ` david
2011-06-19 19:53   ` [PATCH 1/2] Build debian package for python-bindings david
2011-06-19 20:10     ` [PATCH] debian: break up build-depends on separate lines Jameson Graef Rollins
2011-06-20  7:40     ` [PATCH 1/2] Build debian package for python-bindings Sebastian Spaeth
2011-06-19 19:53   ` [PATCH 2/2] Do not import notmuch in setup.py david
2011-06-20  7:47     ` Sebastian Spaeth
2011-06-23 22:24       ` Carl Worth

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).