aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--guide/asciidoc.html21
-rw-r--r--guide/ct.html4
-rw-r--r--guide/dialyzer.html4
-rw-r--r--guide/edoc.html4
-rw-r--r--guide/eunit.html4
-rw-r--r--guide/index.html2
-rw-r--r--guide/overview.html4
-rw-r--r--guide/shell.html4
8 files changed, 33 insertions, 14 deletions
diff --git a/guide/asciidoc.html b/guide/asciidoc.html
index 8903668..ed4222b 100644
--- a/guide/asciidoc.html
+++ b/guide/asciidoc.html
@@ -33,7 +33,26 @@ 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="docs.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="edoc.html">Next</a></td></tr></table><hr /></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="asciidoc"></a>Chapter 12. Asciidoc documentation</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="docs.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="docs.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="edoc.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="docs.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="edoc.html">Next</a></td></tr></table><hr /></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="asciidoc"></a>Chapter 12. AsciiDoc documentation</h2></div></div></div><p>Erlang.mk provides rules for generating documentation from
+AsciiDoc files. It can automatically build a user guide PDF,
+chunked HTML documentation and Unix manual pages.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_writing_asciidoc_documentation"></a>12.1. Writing AsciiDoc documentation</h2></div></div></div><p><a class="ulink" href="http://asciidoc.org/" target="_top">AsciiDoc</a> is a text document format for
+writing notes, documentation, articles, books, ebooks, slideshows,
+web pages, man pages and blogs. AsciiDoc files can be translated
+to many formats including HTML, PDF, EPUB, man page.</p><p>The <a class="ulink" href="http://asciidoc.org/userguide.html" target="_top">AsciiDoc user guide</a>
+describes the AsciiDoc syntax.</p><p>The <a class="ulink" href="https://github.com/ninenines/erlang.mk/tree/master/doc/src/guide" target="_top">Erlang.mk user guide</a>
+is written in AsciiDoc and can be used as an example. The entry
+file is <a class="ulink" href="https://github.com/ninenines/erlang.mk/blob/master/doc/src/guide/book.asciidoc" target="_top">book.asciidoc</a>.</p><p>Erlang.mk expects you to put your documentation in a specific
+location. This is <span class="emphasis"><em>doc/src/guide/</em></span> for the user guide, and
+<span class="emphasis"><em>doc/src/manual/</em></span> for the function reference. In the case of
+the user guide, the entry point is always <span class="emphasis"><em>doc/src/guide/book.asciidoc</em></span>.</p><p>For manual pages, it is good practice to use section 3 for
+modules, and section 7 for the application itself.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_2"></a>12.2. Configuration</h2></div></div></div><p>All of the AsciiDoc related configuration can be done directly
+inside the files themselves.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage"></a>12.3. Usage</h2></div></div></div><p>To build all documentation:</p><pre class="programlisting">$ make docs</pre><p>To build only the AsciiDoc documentation:</p><pre class="programlisting">$ make asciidoc</pre><p>To build only the user guide:</p><pre class="programlisting">$ make asciidoc-guide</pre><p>To build only the manual:</p><pre class="programlisting">$ make asciidoc-manual</pre><p>To install man pages on Unix:</p><pre class="programlisting">$ make install-docs</pre><p>Erlang.mk allows customizing the installation path and sections
+of the man pages to be installed. The <code class="literal">MAN_INSTALL_PATH</code> variable
+defines where man pages will be installed. It defaults to
+<span class="emphasis"><em>/usr/local/share/man</em></span>. The <code class="literal">MAN_SECTIONS</code> variable defines
+which manual sections are to be installed. It defaults to <code class="literal">3 7</code>.</p><p>To install man pages to a custom location:</p><pre class="programlisting">$ make install-docs MAN_INSTALL_PATH=/opt/share/man</pre><p>Note that you may need to run the install commands using
+<code class="literal">sudo</code> or equivalent if the location is not writeable by
+your user.</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="docs.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="docs.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="edoc.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>
diff --git a/guide/ct.html b/guide/ct.html
index 97c8f36..b1672f8 100644
--- a/guide/ct.html
+++ b/guide/ct.html
@@ -39,7 +39,7 @@ Test suites.</p><div class="section"><div class="titlepage"><div><div><h2 class=
is the best place to learn how to write tests. Erlang.mk
requires that file names for test suites end with <span class="emphasis"><em>_SUITE.erl</em></span>
and that the files be located in the <span class="emphasis"><em>$(TEST_DIR)</em></span> directory.
-This defaults to <span class="emphasis"><em>test/</em></span>.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_5"></a>16.2. Configuration</h2></div></div></div><p>The <code class="literal">CT_OPTS</code> variable allows you to set extra Common Test
+This defaults to <span class="emphasis"><em>test/</em></span>.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_6"></a>16.2. Configuration</h2></div></div></div><p>The <code class="literal">CT_OPTS</code> variable allows you to set extra Common Test
options. Options are documented in the
<a class="ulink" href="http://www.erlang.org/doc/apps/common_test/run_test_chapter.html" target="_top">Common Test user guide</a>.
You can use it to set Common Test hooks, for example:</p><pre class="programlisting">CT_OPTS = -ct_hooks cowboy_ct_hook</pre><p>The <code class="literal">CT_SUITES</code> variable can be used to override what
@@ -47,7 +47,7 @@ Common Test suites Erlang.mk will be aware of. It does
not normally need to be set as Erlang.mk will find the
test suites automatically.</p><p>The name of the suite is the part before <code class="literal">_SUITE.erl</code>.
If the file is named <span class="emphasis"><em>http_SUITE.erl</em></span>, the test suite
-is <code class="literal">http</code>:</p><pre class="programlisting">CT_SUITES = http ws</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage_4"></a>16.3. Usage</h2></div></div></div><p>To run all tests (including Common Test):</p><pre class="programlisting">$ make tests</pre><p>To run all tests and static checks (including Common Test):</p><pre class="programlisting">$ make check</pre><p>You can also run Common Test separately:</p><pre class="programlisting">$ make ct</pre><p>Erlang.mk will create targets for all test suites it finds.
+is <code class="literal">http</code>:</p><pre class="programlisting">CT_SUITES = http ws</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage_5"></a>16.3. Usage</h2></div></div></div><p>To run all tests (including Common Test):</p><pre class="programlisting">$ make tests</pre><p>To run all tests and static checks (including Common Test):</p><pre class="programlisting">$ make check</pre><p>You can also run Common Test separately:</p><pre class="programlisting">$ make ct</pre><p>Erlang.mk will create targets for all test suites it finds.
If you have a file named <span class="emphasis"><em>test/http_SUITE.erl</em></span>, then the
target <code class="literal">ct-http</code> will run that specific test suite:</p><pre class="programlisting">$ make ct-http</pre><p>Erlang.mk provides a convenient way to run a specific
group or a specific test case within a specific group,
diff --git a/guide/dialyzer.html b/guide/dialyzer.html
index 0c9f537..6d995bd 100644
--- a/guide/dialyzer.html
+++ b/guide/dialyzer.html
@@ -44,7 +44,7 @@ dependencies of the application or applications you are
currently working on, including standard applications in
Erlang/OTP itself.</p><p>Dialyzer can generate this PLT file. Erlang.mk includes rules
to automatically generate the PLT file when it is missing.</p><p>Once the PLT file is generated, Dialyzer can perform the
-analysis in record time.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_6"></a>20.2. Configuration</h2></div></div></div><p>In a typical usage scenario, no variable needs to be set.
+analysis in record time.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_7"></a>20.2. Configuration</h2></div></div></div><p>In a typical usage scenario, no variable needs to be set.
The defaults should be enough. Do note however that the
dependencies need to be set properly using the <code class="literal">DEPS</code> and
<code class="literal">LOCAL_DEPS</code> variables.</p><p>The <code class="literal">DIALYZER_PLT</code> file indicates where the PLT file will
@@ -59,7 +59,7 @@ The former one defines which directories should be part
of the analysis. The latter defines what extra warnings
Dialyzer should report.</p><p>Note that Erlang.mk enables the race condition warnings
by default. As it can take considerably large resources
-to run, you may want to disable it on larger projects.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage_5"></a>20.3. Usage</h2></div></div></div><p>To perform an analysis, run the following command:</p><pre class="programlisting">$ make dialyze</pre><p>This will create the PLT file if it doesn’t exist.</p><p>The analysis will also be performed when you run the
+to run, you may want to disable it on larger projects.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage_6"></a>20.3. Usage</h2></div></div></div><p>To perform an analysis, run the following command:</p><pre class="programlisting">$ make dialyze</pre><p>This will create the PLT file if it doesn’t exist.</p><p>The analysis will also be performed when you run the
following command, alongside tests:</p><pre class="programlisting">$ make check</pre><p>You can use the <code class="literal">plt</code> target to create the PLT file if
it doesn’t exist. This is normally not necessary as
Dialyzer creates it automatically.</p><p>The PLT file will be removed when you run <code class="literal">make distclean</code>.</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ci.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="tests.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="xref.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>
diff --git a/guide/edoc.html b/guide/edoc.html
index e24967c..40ebdde 100644
--- a/guide/edoc.html
+++ b/guide/edoc.html
@@ -35,11 +35,11 @@ div.navfooter{margin-bottom:1em}
<div class="navheader"><table width="100%" summary="Navigation header"><tr><td width="20%" align="left"><a accesskey="p" href="asciidoc.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="tests.html">Next</a></td></tr></table><hr /></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="edoc"></a>Chapter 13. EDoc comments</h2></div></div></div><p>Erlang.mk provides a thin wrapper on top of EDoc, an application
that generates documentation based on comments found in modules.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_writing_edoc_comments"></a>13.1. Writing EDoc comments</h2></div></div></div><p>The <a class="ulink" href="http://www.erlang.org/doc/apps/edoc/chapter.html" target="_top">EDoc user guide</a>
-explains everything you need to know about EDoc comments.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_2"></a>13.2. Configuration</h2></div></div></div><p>The <code class="literal">EDOC_OPTS</code> variable allows you to specify additional
+explains everything you need to know about EDoc comments.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_3"></a>13.2. Configuration</h2></div></div></div><p>The <code class="literal">EDOC_OPTS</code> variable allows you to specify additional
EDoc options. Options are documented in the
<a class="ulink" href="http://www.erlang.org/doc/man/edoc.html#run-2" target="_top">EDoc manual</a>.</p><p>A common use for this variable is to enable Markdown in doc
comments, using the <code class="literal">edown</code> application:</p><pre class="programlisting">DOC_DEPS = edown
-EDOC_OPTS = {doclet, edown_doclet}</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage"></a>13.3. Usage</h2></div></div></div><p>To build all documentation, you would typically use:</p><pre class="programlisting">$ make docs</pre><p>Do note, however, that EDoc comments will only be generated
+EDOC_OPTS = {doclet, edown_doclet}</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage_2"></a>13.3. Usage</h2></div></div></div><p>To build all documentation, you would typically use:</p><pre class="programlisting">$ make docs</pre><p>Do note, however, that EDoc comments will only be generated
automatically if the <span class="emphasis"><em>doc/overview.edoc</em></span> file exists. If you
do not want that file and still want to generate doc comments,
two solutions are available.</p><p>You can generate EDoc documentation directly:</p><pre class="programlisting">$ make edoc</pre><p>You can enable automatic generation on <code class="literal">make docs</code> by adding
diff --git a/guide/eunit.html b/guide/eunit.html
index 422003c..2162fee 100644
--- a/guide/eunit.html
+++ b/guide/eunit.html
@@ -58,12 +58,12 @@ compiled.</p><pre class="programlisting">-ifdef(TEST).
%% Insert tests here.
-endif.</pre><p>Erlang.mk will automatically recompile your code when you
-perform a normal build after running tests, and vice versa.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_4"></a>15.2. Configuration</h2></div></div></div><p>The <code class="literal">EUNIT_OPTS</code> variable allows you to specify additional
+perform a normal build after running tests, and vice versa.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_5"></a>15.2. Configuration</h2></div></div></div><p>The <code class="literal">EUNIT_OPTS</code> variable allows you to specify additional
EUnit options. Options are documented in the
<a class="ulink" href="http://www.erlang.org/doc/man/eunit.html#test-2" target="_top">EUnit manual</a>.
At the time of writing, the only available option is <code class="literal">verbose</code>:</p><pre class="programlisting">EUNIT_OPTS = verbose</pre><p>The <code class="literal">EUNIT_ERL_OPTS</code> variable allows you to specify options
to be passed to <code class="literal">erl</code> when running EUnit tests. For example,
-you can load the <span class="emphasis"><em>vm.args</em></span> and <span class="emphasis"><em>sys.config</em></span> files:</p><pre class="programlisting">EUNIT_ERL_OPTS = -args_file rel/vm.args -config rel/sys.config</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage_3"></a>15.3. Usage</h2></div></div></div><p>To run all tests (including EUnit):</p><pre class="programlisting">$ make tests</pre><p>To run all tests and static checks (including EUnit):</p><pre class="programlisting">$ make check</pre><p>You can also run EUnit separately:</p><pre class="programlisting">$ make eunit</pre><p>EUnit will be quiet by default, only outputting errors.
+you can load the <span class="emphasis"><em>vm.args</em></span> and <span class="emphasis"><em>sys.config</em></span> files:</p><pre class="programlisting">EUNIT_ERL_OPTS = -args_file rel/vm.args -config rel/sys.config</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage_4"></a>15.3. Usage</h2></div></div></div><p>To run all tests (including EUnit):</p><pre class="programlisting">$ make tests</pre><p>To run all tests and static checks (including EUnit):</p><pre class="programlisting">$ make check</pre><p>You can also run EUnit separately:</p><pre class="programlisting">$ make eunit</pre><p>EUnit will be quiet by default, only outputting errors.
You can easily make it verbose for a single invocation:</p><pre class="programlisting">$ make eunit EUNIT_OPTS=verbose</pre><p>Erlang.mk allows you to run all tests from a specific
module, or a specific test case from that module, using
the variable <code class="literal">t</code>.</p><p>For example, to run all tests from the <code class="literal">cow_http_hd</code>
diff --git a/guide/index.html b/guide/index.html
index a442678..ab968ca 100644
--- a/guide/index.html
+++ b/guide/index.html
@@ -33,7 +33,7 @@ div.navfooter{margin-bottom:1em}
</header>
<main>
-<div class="navheader"><table width="100%" summary="Navigation header"><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="installation.html">Next</a></td></tr></table><hr /></div><div xml:lang="en" class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="idm140376562565536"></a>Erlang.mk User Guide</h1></div><div><div class="author"><h3 class="author"><span class="firstname">Loïc</span> <span class="surname">Hoguin</span></h3><code class="email">&lt;<a class="email" href="mailto:[email protected]">[email protected]</a>&gt;</code></div></div></div><hr /></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="chapter"><a href="installation.html">1. Installation</a></span></dt><dd><dl><dt><span class="section"><a href="installation.html#_on_unix">1.1. On Unix</a></span></dt><dt><span class="section"><a href="installation.html#_on_windows">1.2. On Windows</a></span></dt></dl></dd><dt><span class="chapter"><a href="getting_started.html">2. Getting started</a></span></dt><dd><dl><dt><span class="section"><a href="getting_started.html#_creating_a_folder_for_your_project">2.1. Creating a folder for your project</a></span></dt><dt><span class="section"><a href="getting_started.html#_downloading_erlang_mk">2.2. Downloading Erlang.mk</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_started_with_otp_applications">2.3. Getting started with OTP applications</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_started_with_otp_libraries">2.4. Getting started with OTP libraries</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_started_with_otp_releases">2.5. Getting started with OTP releases</a></span></dt><dt><span class="section"><a href="getting_started.html#_using_spaces_instead_of_tabs">2.6. Using spaces instead of tabs</a></span></dt><dt><span class="section"><a href="getting_started.html#_using_templates">2.7. Using templates</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_help">2.8. Getting help</a></span></dt></dl></dd><dt><span class="chapter"><a href="overview.html">3. Overview</a></span></dt><dd><dl><dt><span class="section"><a href="overview.html#_building_your_project">3.1. Building your project</a></span></dt><dt><span class="section"><a href="overview.html#_exploring_the_package_index">3.2. Exploring the package index</a></span></dt><dt><span class="section"><a href="overview.html#_generating_documentation">3.3. Generating documentation</a></span></dt><dt><span class="section"><a href="overview.html#_running_tests">3.4. Running tests</a></span></dt><dt><span class="section"><a href="overview.html#_need_more">3.5. Need more?</a></span></dt></dl></dd><dt><span class="chapter"><a href="updating.html">4. Updating Erlang.mk</a></span></dt><dd><dl><dt><span class="section"><a href="updating.html#_initial_bootstrap">4.1. Initial bootstrap</a></span></dt><dt><span class="section"><a href="updating.html#_updating">4.2. Updating</a></span></dt><dt><span class="section"><a href="updating.html#_customizing_the_build">4.3. Customizing the build</a></span></dt></dl></dd><dt><span class="chapter"><a href="limitations.html">5. Limitations</a></span></dt><dd><dl><dt><span class="section"><a href="limitations.html#_erlang_must_be_available">5.1. Erlang must be available</a></span></dt><dt><span class="section"><a href="limitations.html#_spaces_in_path">5.2. Spaces in path</a></span></dt><dt><span class="section"><a href="limitations.html#_dependency_tracking_and_modification_times">5.3. Dependency tracking and modification times</a></span></dt></dl></dd><dt><span class="part"><a href="code.html">I. Code</a></span></dt><dd><dl><dt><span class="chapter"><a href="building.html">6. Building</a></span></dt><dd><dl><dt><span class="section"><a href="building.html#_how_to_build">6.1. How to build</a></span></dt><dt><span class="section"><a href="building.html#_what_to_build">6.2. What to build</a></span></dt><dt><span class="section"><a href="building.html#_application_resource_file">6.3. Application resource file</a></span></dt><dt><span class="section"><a href="building.html#_automatic_application_resource_file_values">6.4. Automatic application resource file values</a></span></dt><dt><span class="section"><a href="building.html#_file_formats">6.5. File formats</a></span></dt><dt><span class="section"><a href="building.html#_compilation_options">6.6. Compilation options</a></span></dt><dt><span class="section"><a href="building.html#_cold_and_hot_builds">6.7. Cold and hot builds</a></span></dt><dt><span class="section"><a href="building.html#_dependency_tracking">6.8. Dependency tracking</a></span></dt><dt><span class="section"><a href="building.html#_generating_erlang_source">6.9. Generating Erlang source</a></span></dt><dt><span class="section"><a href="building.html#_cleaning">6.10. Cleaning</a></span></dt></dl></dd><dt><span class="chapter"><a href="deps.html">7. Packages and dependencies</a></span></dt><dd><dl><dt><span class="section"><a href="deps.html#_searching_packages">7.1. Searching packages</a></span></dt><dt><span class="section"><a href="deps.html#_adding_dependencies_to_your_project">7.2. Adding dependencies to your project</a></span></dt><dt><span class="section"><a href="deps.html#_how_deps_are_fetched_and_built">7.3. How deps are fetched and built</a></span></dt><dt><span class="section"><a href="deps.html#_ignoring_unwanted_dependencies">7.4. Ignoring unwanted dependencies</a></span></dt><dt><span class="section"><a href="deps.html#_dependencies_directory">7.5. Dependencies directory</a></span></dt><dt><span class="section"><a href="deps.html#_dependencies_local_to_the_repository">7.6. Dependencies local to the repository</a></span></dt><dt><span class="section"><a href="deps.html#_repositories_with_no_application_at_the_root_level">7.7. Repositories with no application at the root level</a></span></dt><dt><span class="section"><a href="deps.html#_autopatch">7.8. Autopatch</a></span></dt><dt><span class="section"><a href="deps.html#_skipping_deps">7.9. Skipping deps</a></span></dt></dl></dd><dt><span class="chapter"><a href="ports.html">8. NIFs and port drivers</a></span></dt><dd><dl><dt><span class="section"><a href="ports.html#_c_source_code_location_and_erlang_environment">8.1. C source code location and Erlang environment</a></span></dt><dt><span class="section"><a href="ports.html#_using_a_custom_makefile">8.2. Using a custom Makefile</a></span></dt><dt><span class="section"><a href="ports.html#_using_erlang_mk_directly">8.3. Using Erlang.mk directly</a></span></dt></dl></dd><dt><span class="chapter"><a href="relx.html">9. Releases</a></span></dt><dd><dl><dt><span class="section"><a href="relx.html#_setup">9.1. Setup</a></span></dt><dt><span class="section"><a href="relx.html#_configuration">9.2. Configuration</a></span></dt><dt><span class="section"><a href="relx.html#_generating_the_release">9.3. Generating the release</a></span></dt><dt><span class="section"><a href="relx.html#_running_the_release">9.4. Running the release</a></span></dt></dl></dd><dt><span class="chapter"><a href="escript.html">10. Escripts</a></span></dt><dt><span class="chapter"><a href="compat.html">11. Compatibility with other build tools</a></span></dt><dd><dl><dt><span class="section"><a href="compat.html#_rebar_projects_as_erlang_mk_dependencies">11.1. Rebar projects as Erlang.mk dependencies</a></span></dt><dt><span class="section"><a href="compat.html#_erlang_mk_projects_as_rebar_dependencies">11.2. Erlang.mk projects as Rebar dependencies</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="docs.html">II. Documentation</a></span></dt><dd><dl><dt><span class="chapter"><a href="asciidoc.html">12. Asciidoc documentation</a></span></dt><dt><span class="chapter"><a href="edoc.html">13. EDoc comments</a></span></dt><dd><dl><dt><span class="section"><a href="edoc.html#_writing_edoc_comments">13.1. Writing EDoc comments</a></span></dt><dt><span class="section"><a href="edoc.html#_configuration_2">13.2. Configuration</a></span></dt><dt><span class="section"><a href="edoc.html#_usage">13.3. Usage</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="tests.html">III. Tests</a></span></dt><dd><dl><dt><span class="chapter"><a href="shell.html">14. Erlang shell</a></span></dt><dd><dl><dt><span class="section"><a href="shell.html#_configuration_3">14.1. Configuration</a></span></dt><dt><span class="section"><a href="shell.html#_usage_2">14.2. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="eunit.html">15. EUnit</a></span></dt><dd><dl><dt><span class="section"><a href="eunit.html#_writing_tests">15.1. Writing tests</a></span></dt><dt><span class="section"><a href="eunit.html#_configuration_4">15.2. Configuration</a></span></dt><dt><span class="section"><a href="eunit.html#_usage_3">15.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="ct.html">16. Common Test</a></span></dt><dd><dl><dt><span class="section"><a href="ct.html#_writing_tests_2">16.1. Writing tests</a></span></dt><dt><span class="section"><a href="ct.html#_configuration_5">16.2. Configuration</a></span></dt><dt><span class="section"><a href="ct.html#_usage_4">16.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="property_based_testing.html">17. Property based testing</a></span></dt><dt><span class="chapter"><a href="coverage.html">18. Code coverage</a></span></dt><dt><span class="chapter"><a href="ci.html">19. Continuous integration</a></span></dt><dt><span class="chapter"><a href="dialyzer.html">20. Dialyzer</a></span></dt><dd><dl><dt><span class="section"><a href="dialyzer.html#_how_it_works">20.1. How it works</a></span></dt><dt><span class="section"><a href="dialyzer.html#_configuration_6">20.2. Configuration</a></span></dt><dt><span class="section"><a href="dialyzer.html#_usage_5">20.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="xref.html">21. Xref</a></span></dt></dl></dd><dt><span class="part"><a href="plugins.html">IV. Third-party plugins</a></span></dt><dd><dl><dt><span class="chapter"><a href="plugins_usage.html">22. External plugins</a></span></dt><dd><dl><dt><span class="section"><a href="plugins_usage.html#_loading_all_plugins_from_a_dependency">22.1. Loading all plugins from a dependency</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_loading_one_plugin_from_a_dependency">22.2. Loading one plugin from a dependency</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_writing_external_plugins">22.3. Writing external plugins</a></span></dt></dl></dd><dt><span class="chapter"><a href="plugins_list.html">23. List of plugins</a></span></dt><dd><dl><dt><span class="section"><a href="plugins_list.html#_efene_mk">23.1. efene.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_elixir_mk">23.2. elixir.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_elvis_mk">23.3. elvis.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_geas">23.4. geas</a></span></dt><dt><span class="section"><a href="plugins_list.html#_hexer_mk">23.5. hexer.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_lfe_mk">23.6. lfe.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_reload_mk">23.7. reload.mk</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="about.html">V. About Erlang.mk</a></span></dt><dd><dl><dt><span class="chapter"><a href="why.html">24. Why Erlang.mk</a></span></dt><dd><dl><dt><span class="section"><a href="why.html#_erlang_mk_is_fast">24.1. Erlang.mk is fast</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_gives_you_the_full_power_of_unix">24.2. Erlang.mk gives you the full power of Unix</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_is_a_text_file">24.3. Erlang.mk is a text file</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_can_manage_erlang_itself">24.4. Erlang.mk can manage Erlang itself</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_can_do_more_than_erlang">24.5. Erlang.mk can do more than Erlang</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_integrates_nicely_in_make_and_automake_projects">24.6. Erlang.mk integrates nicely in Make and Automake projects</a></span></dt></dl></dd><dt><span class="chapter"><a href="history.html">25. Short history</a></span></dt><dd><dl><dt><span class="section"><a href="history.html#_before_erlang_mk">25.1. Before Erlang.mk</a></span></dt><dt><span class="section"><a href="history.html#_lifetime_of_the_project">25.2. Lifetime of the project</a></span></dt></dl></dd><dt><span class="chapter"><a href="contributing.html">26. Contributing</a></span></dt><dd><dl><dt><span class="section"><a href="contributing.html#_priorities">26.1. Priorities</a></span></dt><dt><span class="section"><a href="contributing.html#_bugs">26.2. Bugs</a></span></dt><dt><span class="section"><a href="contributing.html#_code">26.3. Code</a></span></dt><dt><span class="section"><a href="contributing.html#_packages">26.4. Packages</a></span></dt><dt><span class="section"><a href="contributing.html#_documentation">26.5. Documentation</a></span></dt><dt><span class="section"><a href="contributing.html#_feature_requests">26.6. Feature requests</a></span></dt></dl></dd></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="installation.html">Next</a></td></tr></table></div>
+<div class="navheader"><table width="100%" summary="Navigation header"><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="installation.html">Next</a></td></tr></table><hr /></div><div xml:lang="en" class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="idm139715606631616"></a>Erlang.mk User Guide</h1></div><div><div class="author"><h3 class="author"><span class="firstname">Loïc</span> <span class="surname">Hoguin</span></h3><code class="email">&lt;<a class="email" href="mailto:[email protected]">[email protected]</a>&gt;</code></div></div></div><hr /></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="chapter"><a href="installation.html">1. Installation</a></span></dt><dd><dl><dt><span class="section"><a href="installation.html#_on_unix">1.1. On Unix</a></span></dt><dt><span class="section"><a href="installation.html#_on_windows">1.2. On Windows</a></span></dt></dl></dd><dt><span class="chapter"><a href="getting_started.html">2. Getting started</a></span></dt><dd><dl><dt><span class="section"><a href="getting_started.html#_creating_a_folder_for_your_project">2.1. Creating a folder for your project</a></span></dt><dt><span class="section"><a href="getting_started.html#_downloading_erlang_mk">2.2. Downloading Erlang.mk</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_started_with_otp_applications">2.3. Getting started with OTP applications</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_started_with_otp_libraries">2.4. Getting started with OTP libraries</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_started_with_otp_releases">2.5. Getting started with OTP releases</a></span></dt><dt><span class="section"><a href="getting_started.html#_using_spaces_instead_of_tabs">2.6. Using spaces instead of tabs</a></span></dt><dt><span class="section"><a href="getting_started.html#_using_templates">2.7. Using templates</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_help">2.8. Getting help</a></span></dt></dl></dd><dt><span class="chapter"><a href="overview.html">3. Overview</a></span></dt><dd><dl><dt><span class="section"><a href="overview.html#_building_your_project">3.1. Building your project</a></span></dt><dt><span class="section"><a href="overview.html#_exploring_the_package_index">3.2. Exploring the package index</a></span></dt><dt><span class="section"><a href="overview.html#_generating_documentation">3.3. Generating documentation</a></span></dt><dt><span class="section"><a href="overview.html#_running_tests">3.4. Running tests</a></span></dt><dt><span class="section"><a href="overview.html#_need_more">3.5. Need more?</a></span></dt></dl></dd><dt><span class="chapter"><a href="updating.html">4. Updating Erlang.mk</a></span></dt><dd><dl><dt><span class="section"><a href="updating.html#_initial_bootstrap">4.1. Initial bootstrap</a></span></dt><dt><span class="section"><a href="updating.html#_updating">4.2. Updating</a></span></dt><dt><span class="section"><a href="updating.html#_customizing_the_build">4.3. Customizing the build</a></span></dt></dl></dd><dt><span class="chapter"><a href="limitations.html">5. Limitations</a></span></dt><dd><dl><dt><span class="section"><a href="limitations.html#_erlang_must_be_available">5.1. Erlang must be available</a></span></dt><dt><span class="section"><a href="limitations.html#_spaces_in_path">5.2. Spaces in path</a></span></dt><dt><span class="section"><a href="limitations.html#_dependency_tracking_and_modification_times">5.3. Dependency tracking and modification times</a></span></dt></dl></dd><dt><span class="part"><a href="code.html">I. Code</a></span></dt><dd><dl><dt><span class="chapter"><a href="building.html">6. Building</a></span></dt><dd><dl><dt><span class="section"><a href="building.html#_how_to_build">6.1. How to build</a></span></dt><dt><span class="section"><a href="building.html#_what_to_build">6.2. What to build</a></span></dt><dt><span class="section"><a href="building.html#_application_resource_file">6.3. Application resource file</a></span></dt><dt><span class="section"><a href="building.html#_automatic_application_resource_file_values">6.4. Automatic application resource file values</a></span></dt><dt><span class="section"><a href="building.html#_file_formats">6.5. File formats</a></span></dt><dt><span class="section"><a href="building.html#_compilation_options">6.6. Compilation options</a></span></dt><dt><span class="section"><a href="building.html#_cold_and_hot_builds">6.7. Cold and hot builds</a></span></dt><dt><span class="section"><a href="building.html#_dependency_tracking">6.8. Dependency tracking</a></span></dt><dt><span class="section"><a href="building.html#_generating_erlang_source">6.9. Generating Erlang source</a></span></dt><dt><span class="section"><a href="building.html#_cleaning">6.10. Cleaning</a></span></dt></dl></dd><dt><span class="chapter"><a href="deps.html">7. Packages and dependencies</a></span></dt><dd><dl><dt><span class="section"><a href="deps.html#_searching_packages">7.1. Searching packages</a></span></dt><dt><span class="section"><a href="deps.html#_adding_dependencies_to_your_project">7.2. Adding dependencies to your project</a></span></dt><dt><span class="section"><a href="deps.html#_how_deps_are_fetched_and_built">7.3. How deps are fetched and built</a></span></dt><dt><span class="section"><a href="deps.html#_ignoring_unwanted_dependencies">7.4. Ignoring unwanted dependencies</a></span></dt><dt><span class="section"><a href="deps.html#_dependencies_directory">7.5. Dependencies directory</a></span></dt><dt><span class="section"><a href="deps.html#_dependencies_local_to_the_repository">7.6. Dependencies local to the repository</a></span></dt><dt><span class="section"><a href="deps.html#_repositories_with_no_application_at_the_root_level">7.7. Repositories with no application at the root level</a></span></dt><dt><span class="section"><a href="deps.html#_autopatch">7.8. Autopatch</a></span></dt><dt><span class="section"><a href="deps.html#_skipping_deps">7.9. Skipping deps</a></span></dt></dl></dd><dt><span class="chapter"><a href="ports.html">8. NIFs and port drivers</a></span></dt><dd><dl><dt><span class="section"><a href="ports.html#_c_source_code_location_and_erlang_environment">8.1. C source code location and Erlang environment</a></span></dt><dt><span class="section"><a href="ports.html#_using_a_custom_makefile">8.2. Using a custom Makefile</a></span></dt><dt><span class="section"><a href="ports.html#_using_erlang_mk_directly">8.3. Using Erlang.mk directly</a></span></dt></dl></dd><dt><span class="chapter"><a href="relx.html">9. Releases</a></span></dt><dd><dl><dt><span class="section"><a href="relx.html#_setup">9.1. Setup</a></span></dt><dt><span class="section"><a href="relx.html#_configuration">9.2. Configuration</a></span></dt><dt><span class="section"><a href="relx.html#_generating_the_release">9.3. Generating the release</a></span></dt><dt><span class="section"><a href="relx.html#_running_the_release">9.4. Running the release</a></span></dt></dl></dd><dt><span class="chapter"><a href="escript.html">10. Escripts</a></span></dt><dt><span class="chapter"><a href="compat.html">11. Compatibility with other build tools</a></span></dt><dd><dl><dt><span class="section"><a href="compat.html#_rebar_projects_as_erlang_mk_dependencies">11.1. Rebar projects as Erlang.mk dependencies</a></span></dt><dt><span class="section"><a href="compat.html#_erlang_mk_projects_as_rebar_dependencies">11.2. Erlang.mk projects as Rebar dependencies</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="docs.html">II. Documentation</a></span></dt><dd><dl><dt><span class="chapter"><a href="asciidoc.html">12. AsciiDoc documentation</a></span></dt><dd><dl><dt><span class="section"><a href="asciidoc.html#_writing_asciidoc_documentation">12.1. Writing AsciiDoc documentation</a></span></dt><dt><span class="section"><a href="asciidoc.html#_configuration_2">12.2. Configuration</a></span></dt><dt><span class="section"><a href="asciidoc.html#_usage">12.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="edoc.html">13. EDoc comments</a></span></dt><dd><dl><dt><span class="section"><a href="edoc.html#_writing_edoc_comments">13.1. Writing EDoc comments</a></span></dt><dt><span class="section"><a href="edoc.html#_configuration_3">13.2. Configuration</a></span></dt><dt><span class="section"><a href="edoc.html#_usage_2">13.3. Usage</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="tests.html">III. Tests</a></span></dt><dd><dl><dt><span class="chapter"><a href="shell.html">14. Erlang shell</a></span></dt><dd><dl><dt><span class="section"><a href="shell.html#_configuration_4">14.1. Configuration</a></span></dt><dt><span class="section"><a href="shell.html#_usage_3">14.2. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="eunit.html">15. EUnit</a></span></dt><dd><dl><dt><span class="section"><a href="eunit.html#_writing_tests">15.1. Writing tests</a></span></dt><dt><span class="section"><a href="eunit.html#_configuration_5">15.2. Configuration</a></span></dt><dt><span class="section"><a href="eunit.html#_usage_4">15.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="ct.html">16. Common Test</a></span></dt><dd><dl><dt><span class="section"><a href="ct.html#_writing_tests_2">16.1. Writing tests</a></span></dt><dt><span class="section"><a href="ct.html#_configuration_6">16.2. Configuration</a></span></dt><dt><span class="section"><a href="ct.html#_usage_5">16.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="property_based_testing.html">17. Property based testing</a></span></dt><dt><span class="chapter"><a href="coverage.html">18. Code coverage</a></span></dt><dt><span class="chapter"><a href="ci.html">19. Continuous integration</a></span></dt><dt><span class="chapter"><a href="dialyzer.html">20. Dialyzer</a></span></dt><dd><dl><dt><span class="section"><a href="dialyzer.html#_how_it_works">20.1. How it works</a></span></dt><dt><span class="section"><a href="dialyzer.html#_configuration_7">20.2. Configuration</a></span></dt><dt><span class="section"><a href="dialyzer.html#_usage_6">20.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="xref.html">21. Xref</a></span></dt></dl></dd><dt><span class="part"><a href="plugins.html">IV. Third-party plugins</a></span></dt><dd><dl><dt><span class="chapter"><a href="plugins_usage.html">22. External plugins</a></span></dt><dd><dl><dt><span class="section"><a href="plugins_usage.html#_loading_all_plugins_from_a_dependency">22.1. Loading all plugins from a dependency</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_loading_one_plugin_from_a_dependency">22.2. Loading one plugin from a dependency</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_writing_external_plugins">22.3. Writing external plugins</a></span></dt></dl></dd><dt><span class="chapter"><a href="plugins_list.html">23. List of plugins</a></span></dt><dd><dl><dt><span class="section"><a href="plugins_list.html#_efene_mk">23.1. efene.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_elixir_mk">23.2. elixir.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_elvis_mk">23.3. elvis.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_geas">23.4. geas</a></span></dt><dt><span class="section"><a href="plugins_list.html#_hexer_mk">23.5. hexer.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_lfe_mk">23.6. lfe.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_reload_mk">23.7. reload.mk</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="about.html">V. About Erlang.mk</a></span></dt><dd><dl><dt><span class="chapter"><a href="why.html">24. Why Erlang.mk</a></span></dt><dd><dl><dt><span class="section"><a href="why.html#_erlang_mk_is_fast">24.1. Erlang.mk is fast</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_gives_you_the_full_power_of_unix">24.2. Erlang.mk gives you the full power of Unix</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_is_a_text_file">24.3. Erlang.mk is a text file</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_can_manage_erlang_itself">24.4. Erlang.mk can manage Erlang itself</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_can_do_more_than_erlang">24.5. Erlang.mk can do more than Erlang</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_integrates_nicely_in_make_and_automake_projects">24.6. Erlang.mk integrates nicely in Make and Automake projects</a></span></dt></dl></dd><dt><span class="chapter"><a href="history.html">25. Short history</a></span></dt><dd><dl><dt><span class="section"><a href="history.html#_before_erlang_mk">25.1. Before Erlang.mk</a></span></dt><dt><span class="section"><a href="history.html#_lifetime_of_the_project">25.2. Lifetime of the project</a></span></dt></dl></dd><dt><span class="chapter"><a href="contributing.html">26. Contributing</a></span></dt><dd><dl><dt><span class="section"><a href="contributing.html#_priorities">26.1. Priorities</a></span></dt><dt><span class="section"><a href="contributing.html#_bugs">26.2. Bugs</a></span></dt><dt><span class="section"><a href="contributing.html#_code">26.3. Code</a></span></dt><dt><span class="section"><a href="contributing.html#_packages">26.4. Packages</a></span></dt><dt><span class="section"><a href="contributing.html#_documentation">26.5. Documentation</a></span></dt><dt><span class="section"><a href="contributing.html#_feature_requests">26.6. Feature requests</a></span></dt></dl></dd></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="installation.html">Next</a></td></tr></table></div>
</main>
</body>
</html>
diff --git a/guide/overview.html b/guide/overview.html
index fb5ac33..120b33c 100644
--- a/guide/overview.html
+++ b/guide/overview.html
@@ -57,8 +57,8 @@ example to find all packages related to Cowboy:</p><pre class="programlisting">$
<a class="xref" href="edoc.html" title="Chapter 13. EDoc comments">Chapter 13, <em>EDoc comments</em></a> generates HTML documentation directly from
your source code.</p><p>While it is convenient, ask yourself: if all the documentation is
inside the source code, why not just open the source code directly?
-That’s where <span class="emphasis"><em>Asciidoc</em></span> comes in.</p><p>The <a class="link" href="asciidoc.html" title="Chapter 12. Asciidoc documentation">Asciidoc</a>
-<a class="xref" href="asciidoc.html" title="Chapter 12. Asciidoc documentation">Chapter 12, <em>Asciidoc documentation</em></a> plugin expects all documentation
+That’s where <span class="emphasis"><em>Asciidoc</em></span> comes in.</p><p>The <a class="link" href="asciidoc.html" title="Chapter 12. AsciiDoc documentation">Asciidoc</a>
+<a class="xref" href="asciidoc.html" title="Chapter 12. AsciiDoc documentation">Chapter 12, <em>AsciiDoc documentation</em></a> plugin expects all documentation
to be separate from source. It will generate HTML, PDF, man pages and
more from the documentation you write in the <span class="emphasis"><em>doc/src/</em></span> folder in
your repository.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_running_tests"></a>3.4. Running tests</h2></div></div></div><p>Erlang.mk supports a lot of different testing and static
diff --git a/guide/shell.html b/guide/shell.html
index ca0a70e..89e1d0c 100644
--- a/guide/shell.html
+++ b/guide/shell.html
@@ -34,14 +34,14 @@ div.navfooter{margin-bottom:1em}
<main>
<div class="navheader"><table width="100%" summary="Navigation header"><tr><td width="20%" align="left"><a accesskey="p" href="tests.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="eunit.html">Next</a></td></tr></table><hr /></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="shell"></a>Chapter 14. Erlang shell</h2></div></div></div><p>Erlang.mk provides a convenient target for starting a shell
-with all the paths set properly to experiment with your code.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_3"></a>14.1. Configuration</h2></div></div></div><p>The <code class="literal">SHELL_DEPS</code> variable can be used to define dependencies
+with all the paths set properly to experiment with your code.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_configuration_4"></a>14.1. Configuration</h2></div></div></div><p>The <code class="literal">SHELL_DEPS</code> variable can be used to define dependencies
that are only to be used when the <code class="literal">make shell</code> command is called.
For example, if you want to use <span class="emphasis"><em>kjell</em></span> as your shell:</p><pre class="programlisting">SHELL_DEPS = kjell</pre><p>Dependencies are downloaded and compiled the first time you
run the <code class="literal">make shell</code> command.</p><p>You can customize the executable used to start the Erlang shell.
To continue with our example, if you want to use <span class="emphasis"><em>kjell</em></span> as your
shell, you also need to change <code class="literal">SHELL_ERL</code> and point it to the
<code class="literal">kjell</code> executable:</p><pre class="programlisting">SHELL_ERL = $(DEPS_DIR)/kjell/bin/kjell</pre><p>You can specify additional options to be used when starting the
-shell using the <code class="literal">SHELL_OPTS</code> variable:</p><pre class="programlisting">SHELL_OPTS = -setcookie chocolate</pre><p>Any of the usual <code class="literal">erl</code> options can be used, including <code class="literal">-eval</code>:</p><pre class="programlisting">SHELL_OPTS = -eval 'my_app:run()'</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage_2"></a>14.2. Usage</h2></div></div></div><p>To start the shell, all you need is the following command:</p><pre class="programlisting">$ make shell</pre><p>The shell can be stopped as usual with a double Ctrl+C or the
+shell using the <code class="literal">SHELL_OPTS</code> variable:</p><pre class="programlisting">SHELL_OPTS = -setcookie chocolate</pre><p>Any of the usual <code class="literal">erl</code> options can be used, including <code class="literal">-eval</code>:</p><pre class="programlisting">SHELL_OPTS = -eval 'my_app:run()'</pre></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_usage_3"></a>14.2. Usage</h2></div></div></div><p>To start the shell, all you need is the following command:</p><pre class="programlisting">$ make shell</pre><p>The shell can be stopped as usual with a double Ctrl+C or the
command <code class="literal">q().</code>.</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tests.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="tests.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="eunit.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>