unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* notmuch release 0.20.2 now available
@ 2015-06-30  5:24 David Bremner
  2015-06-30  6:39 ` Suvayu Ali
  0 siblings, 1 reply; 6+ messages in thread
From: David Bremner @ 2015-06-30  5:24 UTC (permalink / raw)
  To: notmuch

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


Where to obtain notmuch 0.20.2
===========================
  http://notmuchmail.org/releases/notmuch-0.20.2.tar.gz

Which can be verified with:

  http://notmuchmail.org/releases/notmuch-0.20.2.tar.gz.sha1
  1aba10c86af29cc5b372b81f1780290bebff7f26  notmuch-0.20.2.tar.gz

  http://notmuchmail.org/releases/notmuch-0.20.2.tar.gz.sha1.asc
  (signed by David Bremner)

What's new in notmuch 0.20.2
=========================

Emacs Interface
---------------

Bug fix for marking messages read in `notmuch-tree` mode.

What is notmuch
===============
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 convenient
search syntax.

For more about notmuch, see http://notmuchmail.org


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 647 bytes --]

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

* Re: notmuch release 0.20.2 now available
  2015-06-30  5:24 notmuch release 0.20.2 now available David Bremner
@ 2015-06-30  6:39 ` Suvayu Ali
  2015-06-30  7:34   ` David Bremner
  0 siblings, 1 reply; 6+ messages in thread
From: Suvayu Ali @ 2015-06-30  6:39 UTC (permalink / raw)
  To: notmuch

Hi David,

On Tue, Jun 30, 2015 at 07:24:28AM +0200, David Bremner wrote:
> 
> Where to obtain notmuch 0.20.2
> ===========================
>   http://notmuchmail.org/releases/notmuch-0.20.2.tar.gz

I took a quick pass at building the release for Fedora.  The ruby
bindings seem to fail to build (actually linking fails).

https://copr-be.cloud.fedoraproject.org/results/fatka/notmuch/fedora-22-x86_64/notmuch-0.20.2-1.20150627.git.8cca886b.fc22/build.log.gz

See to the end of the log, search for "make -C bindings/ruby", then you
can see the link failure a few lines down.

Any thoughts?

-- 
Suvayu

Open source is the future. It sets us free.

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

* Re: notmuch release 0.20.2 now available
  2015-06-30  6:39 ` Suvayu Ali
@ 2015-06-30  7:34   ` David Bremner
  2015-06-30  8:40     ` Suvayu Ali
  0 siblings, 1 reply; 6+ messages in thread
From: David Bremner @ 2015-06-30  7:34 UTC (permalink / raw)
  To: Suvayu Ali, notmuch

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

Suvayu Ali <fatkasuvayu+linux@gmail.com> writes:

> Hi David,
>
> On Tue, Jun 30, 2015 at 07:24:28AM +0200, David Bremner wrote:
>> 
>> Where to obtain notmuch 0.20.2
>> ===========================
>>   http://notmuchmail.org/releases/notmuch-0.20.2.tar.gz
>
> I took a quick pass at building the release for Fedora.  The ruby
> bindings seem to fail to build (actually linking fails).
>

The ruby bindings are not built automatically by 0.20.2.  You seem to be
building a snapshot of master. If you want to build the release from
git, use the signed tag.

The question of why master won't build for you is also interesting, but
a different question. A quick search reveals packages of notmuch 0.19
ruby bindings seemingly for fc22

     https://apps.fedoraproject.org/packages/ruby-notmuch/contents

So I guess have a look and see what existing fedora packaging does.

At the moment the only way to disable the ruby bindings (other than
hacking the build system) is not to have the ruby development files in
the build env. This may change by the time this is part of a release.

d

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 647 bytes --]

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

* Re: notmuch release 0.20.2 now available
  2015-06-30  7:34   ` David Bremner
@ 2015-06-30  8:40     ` Suvayu Ali
  2015-06-30 17:02       ` David Bremner
  0 siblings, 1 reply; 6+ messages in thread
From: Suvayu Ali @ 2015-06-30  8:40 UTC (permalink / raw)
  To: notmuch

Hi David,

On Tue, Jun 30, 2015 at 09:34:36AM +0200, David Bremner wrote:
> Suvayu Ali <fatkasuvayu+linux@gmail.com> writes:
> > On Tue, Jun 30, 2015 at 07:24:28AM +0200, David Bremner wrote:
> >> 
> >> Where to obtain notmuch 0.20.2
> >> ===========================
> >>   http://notmuchmail.org/releases/notmuch-0.20.2.tar.gz
> >
> > I took a quick pass at building the release for Fedora.  The ruby
> > bindings seem to fail to build (actually linking fails).
> >
> 
> The ruby bindings are not built automatically by 0.20.2.  You seem to be
> building a snapshot of master. If you want to build the release from
> git, use the signed tag.

Yes, I was aware.  I tried again with proper 0.20.2.  And everything
succeeds.  So I guess something with master.  I usually build master in
that repo, I guess I'll stick to the release for now.

> The question of why master won't build for you is also interesting, but
> a different question. A quick search reveals packages of notmuch 0.19
> ruby bindings seemingly for fc22
> 
>      https://apps.fedoraproject.org/packages/ruby-notmuch/contents
> 
> So I guess have a look and see what existing fedora packaging does.

Yes, I have looked at what the official packages[1] do, I do exactly the
same[2].  Essentially the spec file does the following:

  pushd bindings/ruby
      ruby extconf.rb --vendor --with-cflags="%{optflags}"
      make %{?_smp_mflags}
  popd

where, _smp_mflags is -jN, and optflags is options for gcc.  If you need
the specific flags, I can try to look it up.

> At the moment the only way to disable the ruby bindings (other than
> hacking the build system) is not to have the ruby development files in
> the build env. This may change by the time this is part of a release.

Since everything is built in a chroot, I have control over the build
environment via the spec file.  If need be, I can disable it.  However
it would be interesting to know why master fails.

Thanks for your comments.

Cheers,

Footnotes:

[1] http://pkgs.fedoraproject.org/cgit/notmuch.git/tree/notmuch.spec#n137
[2] https://github.com/suvayu/notmuch-spec/blob/master/notmuch.spec#L139

-- 
Suvayu

Open source is the future. It sets us free.

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

* Re: notmuch release 0.20.2 now available
  2015-06-30  8:40     ` Suvayu Ali
@ 2015-06-30 17:02       ` David Bremner
  2015-07-06 14:04         ` Suvayu Ali
  0 siblings, 1 reply; 6+ messages in thread
From: David Bremner @ 2015-06-30 17:02 UTC (permalink / raw)
  To: Suvayu Ali, notmuch

Suvayu Ali <fatkasuvayu+linux@gmail.com> writes:

>
> Yes, I have looked at what the official packages[1] do, I do exactly the
> same[2].  Essentially the spec file does the following:
>
>   pushd bindings/ruby
>       ruby extconf.rb --vendor --with-cflags="%{optflags}"
>       make %{?_smp_mflags}
>   popd

I think the problem is contained in the original message. Since we want
to create a shared library "notmuch.so" for ruby to import, we need to
compile the C files in bindings/ruby with -fPIC.

I don't know if this is Debian specific, or ruby version specific, but
on my Debian Jessie machine with ruby 2.1, the generated Makefile
bindings/ruby/Makefile has

CFLAGS   = $(CCDLFLAGS) -g -O2 -fstack-protector-strong -Wformat
-Werror=format-security -fPIC $(ARCH_FLAG)

in it

even when invoked outside the notmuch build system; e.g.

% cd bindings/ruby && ruby extconf.rb

I guess the first step is to see if the -fPIC flag is also there on
Fedora, and if not, why not. If I look at the builds for 0.19 [1]
it seems it is. But notice there it is not required to pass it in to "--with-cflags"

d

[1] https://kojipkgs.fedoraproject.org/packages/notmuch/0.19/1.fc21/data/logs/x86_64/build.log
    - I couldn't find x86_64 build logs for 0.20  

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

* Re: notmuch release 0.20.2 now available
  2015-06-30 17:02       ` David Bremner
@ 2015-07-06 14:04         ` Suvayu Ali
  0 siblings, 0 replies; 6+ messages in thread
From: Suvayu Ali @ 2015-07-06 14:04 UTC (permalink / raw)
  To: notmuch

Hi David,

First, apologies for the delay.  I had a bicycle accident, still
recovering.

On Tue, Jun 30, 2015 at 07:02:52PM +0200, David Bremner wrote:
> Suvayu Ali <fatkasuvayu+linux@gmail.com> writes:
> 
> > Yes, I have looked at what the official packages[1] do, I do exactly the
> > same[2].  Essentially the spec file does the following:
> >
> >   pushd bindings/ruby
> >       ruby extconf.rb --vendor --with-cflags="%{optflags}"
> >       make %{?_smp_mflags}
> >   popd
> 
> I think the problem is contained in the original message. Since we want
> to create a shared library "notmuch.so" for ruby to import, we need to
> compile the C files in bindings/ruby with -fPIC.
> 
> I don't know if this is Debian specific, or ruby version specific, but
> on my Debian Jessie machine with ruby 2.1, the generated Makefile
> bindings/ruby/Makefile has
> 
> CFLAGS   = $(CCDLFLAGS) -g -O2 -fstack-protector-strong -Wformat
> -Werror=format-security -fPIC $(ARCH_FLAG)
> 
> in it
> 
> even when invoked outside the notmuch build system; e.g.
> 
> % cd bindings/ruby && ruby extconf.rb
> 
> I guess the first step is to see if the -fPIC flag is also there on
> Fedora, and if not, why not. If I look at the builds for 0.19 [1]
> it seems it is. But notice there it is not required to pass it in to "--with-cflags"

Indeed.  I looked at the generated Makefiles, they like below:

--- nm-0.20.2.mk	2015-07-06 15:11:26.138317221 +0200
+++ nm-master.mk	2015-07-06 15:41:14.929951640 +0200
@@ -80,7 +80,7 @@
 debugflags = -ggdb3
 warnflags = -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat
 CCDLFLAGS = -fPIC
-CFLAGS   = $(CCDLFLAGS) -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches  -m64 -mtune=generic $(ARCH_FLAG)
+CFLAGS   = $(CCDLFLAGS) -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -mtune=generic -fPIC $(ARCH_FLAG)
 INCFLAGS = -I. -I../../lib -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
 DEFS     = 
 CPPFLAGS =   $(DEFS) $(cppflags)

So actually, the master version gets the -fPIC flag.  But it should be
redundant, since CCDLFLAGS is already set to -fPIC.  Now when I compare
the corresponding compile commands, I see (you also noticed that in the
logs):

0.20.2: gcc -I. -I../../lib -I/usr/include -I/usr/include/ruby/backward -I/usr/include -I.   -fPIC -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches  -m64 -mtune=generic -m64 -o message.o -c message.c
master: gcc -I. -I../../lib -I/usr/include -I/usr/include/ruby/backward -I/usr/include -I.   -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches  -m64 -mtune=generic -o message.o -c message.c

So the trailing bits of the command is somehow dropped, and the
CCDLFLAGS seems to be absent (see, no empty space either).  I do not
understand why that would be the case.  I'll dig further when I can find
some more time ...

> [1] https://kojipkgs.fedoraproject.org/packages/notmuch/0.19/1.fc21/data/logs/x86_64/build.log
>     - I couldn't find x86_64 build logs for 0.20  

You can't, Fedora ships only 0.19.  That's why I maintain the 0.20+ copr
repository, for myself and other interested (invisible) users out there
:-p.  This gap was much wider in the past.

Cheers,

-- 
Suvayu

Open source is the future. It sets us free.

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

end of thread, other threads:[~2015-07-06 14:04 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-30  5:24 notmuch release 0.20.2 now available David Bremner
2015-06-30  6:39 ` Suvayu Ali
2015-06-30  7:34   ` David Bremner
2015-06-30  8:40     ` Suvayu Ali
2015-06-30 17:02       ` David Bremner
2015-07-06 14:04         ` Suvayu Ali

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).