← Back to team overview

elementary-dev-community team mailing list archive

Re: Bake Build System

 

Awesome to hear good news on Bake! Thanks Julien and the other
Elementaryites for trying it out; your feedback is very useful.

As many have pointed out, Bake is quite new and progress might seem to be a
little slow. This is two things really:
1. I really want to do a good job of it (no point adding another OK build
system to the mix)
2. My day job at Canonical is sucking up all my spare time :(

Due to point 2, any help would be greatly received. Good or bad feedback on
using Bake is very useful, in fact, the more bad feedback the better. I
need to know the areas where it needs improving. Bugs can be filed on
https://launchpad.net/bake.

Code contributions are welcome (hi fellow Vala lovers), just be aware due
to point 1 above I'm setting a high bar on contributions so expect some
work required in merge proposals. Finally, if there's anyone with spare Web
cycles, Bake desperately needs a simple website [1]. Web is not my forte.

--Robert

[1] https://bugs.launchpad.net/bake/+bug/1215366




On Sun, Sep 15, 2013 at 11:08 AM, Julien <spautz.julien@xxxxxxxxx> wrote:

> Hey guys,
>
> I've lately been toying with a relatively recent build system called *bake
> *. It was created and is maintained by Robert Ancell and you can find the
> source code here: https://launchpad.net/bake.
>
> There isn't much documentation out there, but the manual will teach you
> most important things: https://answers.launchpad.net/bake/+faq/2172
>
> $ bzr branch lp:bake
> $ cd bake
> $ yelp help
>
> So if you're like me and have no idea about cmake, bake might be the
> perfect alternative. It is *very* simple a nd requires practically no
> boiler code (unlike cmake). It would also be easier for new developers to
> set up their own projects.
>
> I'm pretty sure you want to see some actual implementation, so here it is:
>
> https://code.launchpad.net/~julien-spautz/cable/bake
>
> If you look at the diffs  (
> http://bazaar.launchpad.net/~julien-spautz/cable/bake/revision/137) you'll
> see that I added a few Recipe files, containing all the information bake
> needs, and at the same time got rid of all that cmake ugliness. Since Cable
> uses the same cmake template as the official elementary apps, this should
> work just as well with any other elementary app.
>
> If you want to try it yourself, here are some instructions:
>
> First install bake:
>
> $ sudo add-apt-repository ppa:bake-team/releases
> $ sudo apt-get update
> $ sudo apt-get install bake
>
> Now get my branch:
>
> $ bzr branch lp:~julien-spautz/cable/bake
> $ cd bake
>
> So far so good. Now let's build (make sure you have all the deps, you'll
> find them in /src/Recipe):
>
> $ bake
>
> There should now be an executable in src/ and one in tests/.
> How about cleaning up again?
>
> $ bake clean
>
> Installing?
>
> $ sudo bake install**
>
> Running unit tests? (I know you all enjoy those TDD threads)
>
> $ bake test
>
> Creating a .deb package?
>
> $ bake release-deb (might take a while)
>
> If you're not in love yet I really don't know...
>
> I'll try to convert some other elementary apps to bake in the future, but
> I don't think it'll be very difficult. The biggest downside of bake is of
> course that it is still relatively new and therefore lacks complete
> documentation and tutorials and probably still has some important bugs.
> Otherwise I see no reason not to switch at some point in the future, be it
> for Isis, or Isis + 1 (but not later, srsly).
>
> What are your opinions? Has anyone else had any experience with it?
>
> --
> Julien Spautz
>
>
>
> --
> Mailing list: https://launchpad.net/~elementary-dev-community
> Post to     : elementary-dev-community@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~elementary-dev-community
> More help   : https://help.launchpad.net/ListHelp
>
>

References