diff options
Diffstat (limited to 'guide/ch24.html')
-rw-r--r-- | guide/ch24.html | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/guide/ch24.html b/guide/ch24.html index c6b95c7..905dcd4 100644 --- a/guide/ch24.html +++ b/guide/ch24.html @@ -31,7 +31,37 @@ div.navfooter{margin-bottom:1em} </header> <main> -<div class="navheader"><table width="100%" summary="Navigation header"><tr><td width="20%" align="left"><a accesskey="p" href="ch23.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch25.html">Next</a></td></tr></table><hr /></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_short_history"></a>Chapter 24. Short history</h2></div></div></div><p>Placeholder chapter.</p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch23.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="pt05.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch25.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> </td></tr></table></div> +<div class="navheader"><table width="100%" summary="Navigation header"><tr><td width="20%" align="left"><a accesskey="p" href="ch23.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch25.html">Next</a></td></tr></table><hr /></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="_short_history"></a>Chapter 24. Short history</h2></div></div></div><p>This chapter aims to be a brief record of the life of the +Erlang.mk project.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_before_erlang_mk"></a>24.1. Before Erlang.mk</h2></div></div></div><p>Erlang.mk originates from the Cowboy project. Cowboy started +as a Rebar project and I, Loïc Hoguin, was very happy with it +for a couple years. Over time however I started getting annoyed +and frustrated by a number of things, including bad defaults, +changing defaults and overall slowness.</p><p>In particular, at the time I gave up on Erlang.mk, the Cowboy +test suite was taking about five minutes to run. A quick experiment +showed I could get much lower times by simply invoking <code class="literal">ct_run</code> +directly. On January 4th, 2013, the Cowboy test suite took less +than a minute to complete.</p><p>Following this success I started removing a little more and, +on the fateful day of January 5th, 2013, removed the dependency +on Rebar entirely. Rebar, and in particular the concept of +dependencies, was, and still is, a pretty strong influence.</p><p>Erlang.mk was conceived.</p><p>A few months passed and, on May 1st, 2013, the Erlang.mk +repository was created. Erlang.mk was born.</p><p>Little did I know how much it would grow.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_lifetime_of_the_project"></a>24.2. Lifetime of the project</h2></div></div></div><p>Erlang.mk would eventually become a much larger file able to +deal with many more projects than just Cowboy. From the birth +of the project, the biggest force for growth was user contributions, +because Erlang.mk appealed to a variety of people with different +needs, needs that Erlang.mk was not fulfilling yet.</p><p>The project was split into smaller files focused on a different +feature each, and a build script was written to build the single +Erlang.mk file.</p><p>A test suite was contributed by a user, and later taken as a basis +for the current, much more complete test suite. Turns out testing +a Makefile is pretty straightforward.</p><p>A package index was added to solve the problem of discovering +Erlang projects.</p><p>After trying to see if Erlang build tools could cooperate, the +decision was made to improve compatibility with existing Rebar +projects by patching Rebar out, using Rebar. This feature, called +autopatch, proved very successful and made Erlang.mk compatible +with more than 90% of all Erlang projects.</p><p>Erlang.mk documentation was much improved and the Erlang.mk website +was created in the summer of 2015.</p><p>Over the year of 2015, Erlang.mk went from curiosity to a serious +alternative to other Erlang build tools. The user base increased +immensely and large projects started using it, including RabbitMQ +from the 3.6.0 release onward.</p><p>A bright future lies ahead.</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch23.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="pt05.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch25.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> </td></tr></table></div> </main> </body> </html> |