I have restarted actively maintaining the Erlang support in GNU Autoconf. Autoconf version 2.64 has been released on July 26th, which contains a few changes to its Erlang support.
Autoconf had a bug breaking the AC_ERLANG_CHECK_LIB macro, between versions 2.61a and 2.63, making those versions of Autoconf practically unusable for Erlang projects. This bug was fixed in version 2.63b. This bug had remained undetected by the Autoconf maintainers because there were no unit tests for the Erlang macros. So I added unit tests for the Erlang-related macros in version 2.64, which should prevent such regressions in the future. This was my first encounter with GNU Autotest, as all of Autoconf's tests are written using Autotest. Although Autotest is basic, I find it very useful as a central driver for performing all the tests of a project. I will write more on that in another blog article.
I finally added the AC_ERLANG_SUBST_ERTS_VER macro. This macro was suggested (a long, long time ago) by Ruslan Babayev to ease the automatic generation of Erlang release resource files (.erl). This is the only user-visible change in Autoconf 2.64's Erlang support.
I plan to add more features to Autoconf's Erlang support in the next versions, and I started working on adding support to the other GNU Autotools and build system tools: Autotest, Automake, etc.
Comments
Kudos
Hi Romain,
Thanks for maintaining Erlang support in autoconf. I am very interested in Autotest and Automake integration.
I have setup an example autoconf'iscated Erlang app at http://github.com/mujaheed/erlang-example/tree/master.
There's EUnit and EDoc integration in my Makefile.am. It started out as a few lines just to compile the beams and started growing from there.
It would be nice to have some erlang support in Automake at least similar to java_JAVA. Something like adding erl_ERLANG primary I think should be straightforward.
Do you have any ideas on Autotest/EUnit integration?
I guess anything that would simplify Makefile.am and make it fool proof would allow autotools to be used by a wider audience.
Thanks again,
Ruslan
Re: Kudos
Hi Ruslan,
I just finished and committed the Autotest / EUnit integration today, cf. my article "EUnit integration into GNU Autotest". Can you take a look and try it?
I have also been working on adding new "primaries" to Automake. I already have something working, but it's far from complete. It want it to look like the _LIBRARIES primary for binary libraries, but with a per-Erlang-library installation directory.
Post new comment