librelist archives

« back to archive

default build back-end

default build back-end

From:
Gour-Gadadhara Dasa
Date:
2011-06-05 @ 09:56
Hello!

I'm curious if waf will become the default build back-end for Bento or there
will be support for e.g. Scons as well?


Sincerely,
Gour


-- 

“In the material world, conceptions of good and bad are
all mental speculations…” (Sri Caitanya Mahaprabhu)

http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810

Re: [bento] default build back-end

From:
David Cournapeau
Date:
2011-06-05 @ 22:47
On Sun, Jun 5, 2011 at 6:56 PM, Gour-Gadadhara Dasa <gour@atmarama.net> wrote:
> Hello!
>
> I'm curious if waf will become the default build back-end for Bento or there
> will be support for e.g. Scons as well?

One does not preclude the other. I have not worked on a scons backend
at all, but it should be possible to do so.

cheers,

David

Re: [bento] default build back-end

From:
Gour-Gadadhara Dasa
Date:
2011-06-06 @ 06:33
On Mon, 6 Jun 2011 07:47:12 +0900
David Cournapeau <cournape@gmail.com> wrote:

> One does not preclude the other. I have not worked on a scons backend
> at all, but it should be possible to do so.

What do you think about fbuild?

Does it bring some significantly new to waf/scons arena?

btw, my main concern with waf is that it is, still, mostlly one-man show...I
know, bento is in a similar boat, but if python scientific community embrace
it, it will probably change. :-)


Sincerely,
Gour


-- 
“In the material world, conceptions of good and bad are
all mental speculations…” (Sri Caitanya Mahaprabhu)

http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810

Re: [bento] default build back-end

From:
David Cournapeau
Date:
2011-06-06 @ 10:42
On Mon, Jun 6, 2011 at 3:33 PM, Gour-Gadadhara Dasa <gour@atmarama.net> wrote:
> On Mon, 6 Jun 2011 07:47:12 +0900
> David Cournapeau <cournape@gmail.com> wrote:
>
>> One does not preclude the other. I have not worked on a scons backend
>> at all, but it should be possible to do so.
>
> What do you think about fbuild?

I quickly looked at it, and would have most certainly used it it it
were not python 3 specific (and in a fundamental way, as it uses
function annotation).

> Does it bring some significantly new to waf/scons arena?

It is simpler than either of them, while retaining most of what most
people need. That was my impression after a few hours of looking at
it.

The fundamental idea is that as long as you don't use hooks inside
bento, you will really be able to switch build backends without even
being aware of it. And hooks are only really needed when you need
compilation customization.

> btw, my main concern with waf is that it is, still, mostlly one-man show...

Yes, it is indeed an issue, which is one of the reason why I have not
embraced it more fully inside bento. OTOH, fbuild is even more
confidential. Waf is used by several significant projects, including
one of the most famous open source project, samba:
http://wiki.samba.org/index.php/Waf. They seem quite happy with it.

cheers,

David

Re: [bento] default build back-end

From:
Gour-Gadadhara Dasa
Date:
2011-06-07 @ 08:21
On Mon, 6 Jun 2011 19:42:14 +0900
David Cournapeau <cournape@gmail.com> wrote:

> Yes, it is indeed an issue, which is one of the reason why I have not
> embraced it more fully inside bento. 

I read the longish thread on distutils where you tried to point out defects in
distutils as well as explain why distutils2 won't cut it. It clearly proves
that you didn't take implmentation of build package (aka disttoy) lightly and
you know the field.

That just inspires me to suggest to keep some 'bento' build tool in order to
satisfy 80:20 rule hoping that building Python project which uses Cython
extension will be covered with the above 80%. :-)


Sincerely,
Gour

-- 
“In the material world, conceptions of good and bad are
all mental speculations…” (Sri Caitanya Mahaprabhu)

http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810

Re: [bento] default build back-end

From:
David Cournapeau
Date:
2011-06-08 @ 04:27
On Tue, Jun 7, 2011 at 5:21 PM, Gour-Gadadhara Dasa <gour@atmarama.net> wrote:
> On Mon, 6 Jun 2011 19:42:14 +0900
> David Cournapeau <cournape@gmail.com> wrote:
>
>> Yes, it is indeed an issue, which is one of the reason why I have not
>> embraced it more fully inside bento.
>
> I read the longish thread on distutils where you tried to point out defects in
> distutils as well as explain why distutils2 won't cut it. It clearly proves
> that you didn't take implmentation of build package (aka disttoy) lightly and
> you know the field.
>
> That just inspires me to suggest to keep some 'bento' build tool in order to
> satisfy 80:20 rule hoping that building Python project which uses Cython
> extension will be covered with the above 80%. :-)

That's more or less what I envisioned: a small tool called yaku is
used by default, and should be enough for most people (anyone who did
not need to extend distutils, basically). For the rest, there is
support for waf, or you can use your own if you really want to.

cheers,

David

Re: [bento] default build back-end

From:
Gour-Gadadhara Dasa
Date:
2011-06-08 @ 19:19
On Wed, 8 Jun 2011 13:27:25 +0900
David Cournapeau <cournape@gmail.com> wrote:

> That's more or less what I envisioned: a small tool called yaku is
> used by default, and should be enough for most people (anyone who did
> not need to extend distutils, basically). For the rest, there is
> support for waf, or you can use your own if you really want to.

That's very nice...Can yaku build cython extension?


Sincerely,
Gour

-- 
“In the material world, conceptions of good and bad are
all mental speculations…” (Sri Caitanya Mahaprabhu)

http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810

Re: [bento] default build back-end

From:
Gour-Gadadhara Dasa
Date:
2011-06-06 @ 11:41
On Mon, 6 Jun 2011 19:42:14 +0900
David Cournapeau <cournape@gmail.com> wrote:

> I quickly looked at it, and would have most certainly used it it it
> were not python 3 specific (and in a fundamental way, as it uses
> function annotation).

Yeah...I'm not so against python-3, but I understand it in the context of Bento.

> It is simpler than either of them, while retaining most of what most
> people need. That was my impression after a few hours of looking at
> it.

This is very welcome - simplicity is nice. :-)

> The fundamental idea is that as long as you don't use hooks inside
> bento, you will really be able to switch build backends without even
> being aware of it. And hooks are only really needed when you need
> compilation customization.

I believe that for building PyQT+Cython-based project, there is no need for
rocket science and still possible to avoid distutils(2).

> Yes, it is indeed an issue, which is one of the reason why I have not
> embraced it more fully inside bento. 

I had slight experience with the author on IRC and heard some more anecdotes
that author tend to be a bit stubborn at times. :-)


> OTOH, fbuild is even more confidential. 

Indeed. Let's see how it will develop.

Thank you for your input and all the best with Bento.


Sincerely,
Gour

-- 
“In the material world, conceptions of good and bad are
all mental speculations…” (Sri Caitanya Mahaprabhu)

http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810