[PATCH v2] debian: package ruby bindings
Felipe Contreras writes: > Signed-off-by: Felipe Contreras > --- > debian/control | 14 ++ > debian/notmuch-ruby.install | 1 + > debian/rules| 3 +++ > 3 files changed, 18 insertions(+) > create mode 100644 debian/notmuch-ruby.install pushed. d
Re: [PATCH v2] debian: package ruby bindings
Felipe Contreras writes: > Signed-off-by: Felipe Contreras > --- > debian/control | 14 ++ > debian/notmuch-ruby.install | 1 + > debian/rules| 3 +++ > 3 files changed, 18 insertions(+) > create mode 100644 debian/notmuch-ruby.install pushed. d ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH v2] debian: package ruby bindings
2013/5/16 David Bremner : > Felipe Contreras writes: >> >> Yes. Do you have an old version of notmuch installed? >> > > Yes I do. Hmm. It still seems like a bug to me; shouldn't the include > paths be ordered to find the right include files first? > > d Well I must accept I haven't spent much time on thinking how to make extconf.rb perfect. Excerpt from extconf.rb from bindings/ruby: find_header('notmuch.h', '../../lib') find_library('notmuch', 'notmuch_database_create', '../../lib') Two problems here: 1. The library must be built before the bindings are built otherwise the installed version is used. However the installed version should never be used (or must be made a non-default option somehow) 2. The library must be built in the source tree. Out-of-source tree builds will cause extconf.rb to look for the installed version too. Not sure whether this is a major concern because I don't know whether out-of-tree builds are supported by the build system. Having said that, I will try to have a look at solving these issues this weekend. Unfortunately I can't make promises because real-life is killing all my time lately. -alip
[PATCH v2] debian: package ruby bindings
Felipe Contreras writes: > > Yes. Do you have an old version of notmuch installed? > Yes I do. Hmm. It still seems like a bug to me; shouldn't the include paths be ordered to find the right include files first? d
[PATCH v2] debian: package ruby bindings
Felipe Contreras writes: > Signed-off-by: Felipe Contreras > --- > debian/control | 14 ++ > debian/notmuch-ruby.install | 1 + > debian/rules| 3 +++ > 3 files changed, 18 insertions(+) > create mode 100644 debian/notmuch-ruby.install > I get a build failure here; I installed ruby-dev and ran the usual "make debian-snapshot". Does it work for you in a clean with only the declared build-depends installed? cd bindings/ruby && ruby extconf.rb --vendor && make checking for notmuch.h in ../../lib... yes checking for notmuch_database_create() in -lnotmuch... yes creating Makefile make[2]: Entering directory `/home/bremner/software/upstream/notmuch/bindings/ruby' compiling status.c status.c: In function ?notmuch_rb_status_raise?: status.c:46:10: error: ?NOTMUCH_STATUS_UNBALANCED_ATOMIC? undeclared (first use in this function) status.c:46:10: note: each undeclared identifier is reported only once for each function it appears in make[2]: *** [status.o] Error 1 make[2]: Leaving directory `/home/bremner/software/upstream/notmuch/bindings/ruby' make[1]: *** [override_dh_auto_build] Error 2 make[1]: Leaving directory `/home/bremner/software/upstream/notmuch' make: *** [build] Error 2 dpkg-buildpackage: error: debian/rules build gave error exit status 2 debuild: fatal error at line 1357: dpkg-buildpackage -rfakeroot -D -us -uc -i failed
[PATCH v2] debian: package ruby bindings
On Thu, May 16, 2013 at 9:31 AM, David Bremner wrote: > Felipe Contreras writes: >> >> Yes. Do you have an old version of notmuch installed? >> > > Yes I do. Hmm. It still seems like a bug to me; shouldn't the include > paths be ordered to find the right include files first? Yes, it is a bug. And there were attempts to fix it, but it broke the normal build AFAICR. -- Felipe Contreras
[PATCH v2] debian: package ruby bindings
On Thu, May 16, 2013 at 8:51 AM, David Bremner wrote: > Felipe Contreras writes: > >> Signed-off-by: Felipe Contreras >> --- >> debian/control | 14 ++ >> debian/notmuch-ruby.install | 1 + >> debian/rules| 3 +++ >> 3 files changed, 18 insertions(+) >> create mode 100644 debian/notmuch-ruby.install >> > > I get a build failure here; I installed ruby-dev and ran the usual > "make debian-snapshot". > > Does it work for you in a clean with only the declared build-depends > installed? Yes. Do you have an old version of notmuch installed? -- Felipe Contreras
Re: [PATCH v2] debian: package ruby bindings
On Thu, May 16, 2013 at 9:31 AM, David Bremner wrote: > Felipe Contreras writes: >> >> Yes. Do you have an old version of notmuch installed? >> > > Yes I do. Hmm. It still seems like a bug to me; shouldn't the include > paths be ordered to find the right include files first? Yes, it is a bug. And there were attempts to fix it, but it broke the normal build AFAICR. -- Felipe Contreras ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH v2] debian: package ruby bindings
2013/5/16 David Bremner : > Felipe Contreras writes: >> >> Yes. Do you have an old version of notmuch installed? >> > > Yes I do. Hmm. It still seems like a bug to me; shouldn't the include > paths be ordered to find the right include files first? > > d Well I must accept I haven't spent much time on thinking how to make extconf.rb perfect. Excerpt from extconf.rb from bindings/ruby: find_header('notmuch.h', '../../lib') find_library('notmuch', 'notmuch_database_create', '../../lib') Two problems here: 1. The library must be built before the bindings are built otherwise the installed version is used. However the installed version should never be used (or must be made a non-default option somehow) 2. The library must be built in the source tree. Out-of-source tree builds will cause extconf.rb to look for the installed version too. Not sure whether this is a major concern because I don't know whether out-of-tree builds are supported by the build system. Having said that, I will try to have a look at solving these issues this weekend. Unfortunately I can't make promises because real-life is killing all my time lately. -alip ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH v2] debian: package ruby bindings
Felipe Contreras writes: > > Yes. Do you have an old version of notmuch installed? > Yes I do. Hmm. It still seems like a bug to me; shouldn't the include paths be ordered to find the right include files first? d ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH v2] debian: package ruby bindings
On Thu, May 16, 2013 at 8:51 AM, David Bremner wrote: > Felipe Contreras writes: > >> Signed-off-by: Felipe Contreras >> --- >> debian/control | 14 ++ >> debian/notmuch-ruby.install | 1 + >> debian/rules| 3 +++ >> 3 files changed, 18 insertions(+) >> create mode 100644 debian/notmuch-ruby.install >> > > I get a build failure here; I installed ruby-dev and ran the usual > "make debian-snapshot". > > Does it work for you in a clean with only the declared build-depends > installed? Yes. Do you have an old version of notmuch installed? -- Felipe Contreras ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH v2] debian: package ruby bindings
Felipe Contreras writes: > Signed-off-by: Felipe Contreras > --- > debian/control | 14 ++ > debian/notmuch-ruby.install | 1 + > debian/rules| 3 +++ > 3 files changed, 18 insertions(+) > create mode 100644 debian/notmuch-ruby.install > I get a build failure here; I installed ruby-dev and ran the usual "make debian-snapshot". Does it work for you in a clean with only the declared build-depends installed? cd bindings/ruby && ruby extconf.rb --vendor && make checking for notmuch.h in ../../lib... yes checking for notmuch_database_create() in -lnotmuch... yes creating Makefile make[2]: Entering directory `/home/bremner/software/upstream/notmuch/bindings/ruby' compiling status.c status.c: In function ‘notmuch_rb_status_raise’: status.c:46:10: error: ‘NOTMUCH_STATUS_UNBALANCED_ATOMIC’ undeclared (first use in this function) status.c:46:10: note: each undeclared identifier is reported only once for each function it appears in make[2]: *** [status.o] Error 1 make[2]: Leaving directory `/home/bremner/software/upstream/notmuch/bindings/ruby' make[1]: *** [override_dh_auto_build] Error 2 make[1]: Leaving directory `/home/bremner/software/upstream/notmuch' make: *** [build] Error 2 dpkg-buildpackage: error: debian/rules build gave error exit status 2 debuild: fatal error at line 1357: dpkg-buildpackage -rfakeroot -D -us -uc -i failed ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch
[PATCH v2] debian: package ruby bindings
Signed-off-by: Felipe Contreras --- debian/control | 14 ++ debian/notmuch-ruby.install | 1 + debian/rules| 3 +++ 3 files changed, 18 insertions(+) create mode 100644 debian/notmuch-ruby.install diff --git a/debian/control b/debian/control index 854a32a..c59d3ea 100644 --- a/debian/control +++ b/debian/control @@ -15,6 +15,7 @@ Build-Depends: libz-dev, python-all (>= 2.6.6-3~), python3-all (>= 3.1.2-7~), + ruby, ruby-dev, emacs23-nox | emacs23 (>=23~) | emacs23-lucid (>=23~) | emacs24-nox | emacs24 (>=24~) | emacs24-lucid (>=24~), gdb, @@ -89,6 +90,19 @@ Description: Python 3 interface to the notmuch mail search and index library This package provides a Python 3 interface to the notmuch functionality, directly interfacing with a shared notmuch library. +Package: notmuch-ruby +Architecture: any +Section: ruby +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: Ruby 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 Ruby interface to the notmuch + functionality, directly interfacing with a shared notmuch library. + Package: notmuch-emacs Architecture: all Section: mail diff --git a/debian/notmuch-ruby.install b/debian/notmuch-ruby.install new file mode 100644 index 000..98e7050 --- /dev/null +++ b/debian/notmuch-ruby.install @@ -0,0 +1 @@ +usr/lib/ruby/vendor_ruby/*/*/notmuch.so diff --git a/debian/rules b/debian/rules index c4e3930..71a5602 100755 --- a/debian/rules +++ b/debian/rules @@ -12,15 +12,18 @@ override_dh_auto_build: dh_auto_build dh_auto_build --sourcedirectory bindings/python cd bindings/python && $(python3_all) setup.py build + cd bindings/ruby && ruby extconf.rb --vendor && make $(MAKE) -C contrib/notmuch-mutt override_dh_auto_clean: dh_auto_clean dh_auto_clean --sourcedirectory bindings/python cd bindings/python && $(python3_all) setup.py clean -a + dh_auto_clean --sourcedirectory bindings/ruby $(MAKE) -C contrib/notmuch-mutt clean override_dh_auto_install: dh_auto_install dh_auto_install --sourcedirectory bindings/python cd bindings/python && $(python3_all) setup.py install --install-layout=deb --root=$(CURDIR)/debian/tmp + dh_auto_install --sourcedirectory bindings/ruby -- 1.8.2.1.679.g509521a
[PATCH v2] debian: package ruby bindings
Signed-off-by: Felipe Contreras --- debian/control | 14 ++ debian/notmuch-ruby.install | 1 + debian/rules| 3 +++ 3 files changed, 18 insertions(+) create mode 100644 debian/notmuch-ruby.install diff --git a/debian/control b/debian/control index 854a32a..c59d3ea 100644 --- a/debian/control +++ b/debian/control @@ -15,6 +15,7 @@ Build-Depends: libz-dev, python-all (>= 2.6.6-3~), python3-all (>= 3.1.2-7~), + ruby, ruby-dev, emacs23-nox | emacs23 (>=23~) | emacs23-lucid (>=23~) | emacs24-nox | emacs24 (>=24~) | emacs24-lucid (>=24~), gdb, @@ -89,6 +90,19 @@ Description: Python 3 interface to the notmuch mail search and index library This package provides a Python 3 interface to the notmuch functionality, directly interfacing with a shared notmuch library. +Package: notmuch-ruby +Architecture: any +Section: ruby +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: Ruby 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 Ruby interface to the notmuch + functionality, directly interfacing with a shared notmuch library. + Package: notmuch-emacs Architecture: all Section: mail diff --git a/debian/notmuch-ruby.install b/debian/notmuch-ruby.install new file mode 100644 index 000..98e7050 --- /dev/null +++ b/debian/notmuch-ruby.install @@ -0,0 +1 @@ +usr/lib/ruby/vendor_ruby/*/*/notmuch.so diff --git a/debian/rules b/debian/rules index c4e3930..71a5602 100755 --- a/debian/rules +++ b/debian/rules @@ -12,15 +12,18 @@ override_dh_auto_build: dh_auto_build dh_auto_build --sourcedirectory bindings/python cd bindings/python && $(python3_all) setup.py build + cd bindings/ruby && ruby extconf.rb --vendor && make $(MAKE) -C contrib/notmuch-mutt override_dh_auto_clean: dh_auto_clean dh_auto_clean --sourcedirectory bindings/python cd bindings/python && $(python3_all) setup.py clean -a + dh_auto_clean --sourcedirectory bindings/ruby $(MAKE) -C contrib/notmuch-mutt clean override_dh_auto_install: dh_auto_install dh_auto_install --sourcedirectory bindings/python cd bindings/python && $(python3_all) setup.py install --install-layout=deb --root=$(CURDIR)/debian/tmp + dh_auto_install --sourcedirectory bindings/ruby -- 1.8.2.1.679.g509521a ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch