Produits Support Open Source Company
 
 
 
Home > Blogs > Erlang automake project

Mickaël Rémond's avatar

Erlang automake project

Posted by Mickaël Rémond on 08 Dec 2007 at 11:13
I recently wrote a new Erlang project call automake to ease build of Erlang module. This module is especially useful during development phase.

Erlang is distributed with a make module that build standard Erlang files from information provided in Emakefile files (See Erlang Make Documentation).

However, I get bored having to write and maintained Emakefile manually. I decided to write a tool to do the job for me and this is what Erlang automake does. It try to does it "smartly" by finding the location of your needed include files and taking this information into account in your Emakefile.

It does much more however. You can pass several project directories and Erlang automake will build an Erlang Emakefile compiling all you project to a single directory. This is useful during development as it ease path setting, and simplify dynamic code reload. This is particularly usefull if you are developing code base on several different repository (example: code coming from ejabberd main repository, from ejabberd-modules repository and/or some other private projects.

More features are already there or are planned but I will not take about them yet.

The code is developed in Process-one contribs Subversion repository and is tracked in Process-one Erlang Forge. You can also download the archive: automake-1.0.tgz

Your ideas, comments, patchs, feature requests are of course welcome.

Getting started

Install the Erlang Automake tool somewhere in your path. You should also install the eautomake script as it acts as a useful wrapper.

Once your done, you can experiment with the following commands:

  • eautomake: Will generate an Emakefile for the project in the current directory. It will also create an Eautomake file that describe your project.
  • eautomake create Dir1 Dir2 ...: Create a build file for several directories. It also generate Eautomake file that kept the lists of your projects directories. To update your EMakefile, the eautomake command is enough as the project description is then read from Eautomake file.
  • eautomake: Will update emakefile to take new Erlang source file into accounts.

"erl -make" command is used to compile your project once the Eautomake file has been generated.



Comments

anonymous avatar

The svn repository linked from the article is 403 access denied.

Can you please give us an update on exmpp? Your Jaiku posts had me hopeful that something is coming soon.

Posted by Arona Myous on 08 Dec 2007 at 18:39
Mickaël Rémond's avatar

Thank you, I fixed the link.

Regarding exmpp, it is ready for a while, you are right.
It should come soon, now as it is finished. It has been developed with a partner and customer and we are organising the release together.

Posted by Mickaël Rémond on 08 Dec 2007 at 19:33
anonymous avatar

Quite useful utility.
Suggestion for eautomake: eau grin.

Posted by Andrew on 20 Dec 2007 at 13:09
anonymous avatar

Perhaps could be useful to check where_is_file adding includes.

Posted by Andrew on 20 Dec 2007 at 16:36

Page 1 of 1 pages

Add comment

Name:

Email:

URL:

Smileys

Remember my personal information

Notify me of follow-up comments?