aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2017-09-17 18:36:53 +0200
committerLoïc Hoguin <[email protected]>2017-09-17 18:36:53 +0200
commitded13c27c6e9b88eb088677e031c5d86dff289ac (patch)
tree06547d2c0fcd02ac49b1b327140f0861e2dbea82
parent36a10ef698bd9ea1109e540cd45077a2d8430cae (diff)
downloaderlang.mk-ded13c27c6e9b88eb088677e031c5d86dff289ac.tar.gz
erlang.mk-ded13c27c6e9b88eb088677e031c5d86dff289ac.tar.bz2
erlang.mk-ded13c27c6e9b88eb088677e031c5d86dff289ac.zip
Update user guide
-rw-r--r--guide/index.html2
-rw-r--r--guide/ports.html16
2 files changed, 16 insertions, 2 deletions
diff --git a/guide/index.html b/guide/index.html
index f4f719c..b6ade74 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="idm140575821101472"></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#_getting_started_from_scratch">2.6. Getting started from scratch</a></span></dt><dt><span class="section"><a href="getting_started.html#_using_spaces_instead_of_tabs">2.7. Using spaces instead of tabs</a></span></dt><dt><span class="section"><a href="getting_started.html#_using_templates">2.8. Using templates</a></span></dt><dt><span class="section"><a href="getting_started.html#_hiding_erlang_mk_from_git">2.9. Hiding Erlang.mk from git</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_help">2.10. 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#_fetching_and_listing_dependencies_only">7.4. Fetching and listing dependencies only</a></span></dt><dt><span class="section"><a href="deps.html#_ignoring_unwanted_dependencies">7.5. Ignoring unwanted dependencies</a></span></dt><dt><span class="section"><a href="deps.html#_dependencies_directory">7.6. Dependencies directory</a></span></dt><dt><span class="section"><a href="deps.html#_many_applications_in_one_repository">7.7. Many applications in one repository</a></span></dt><dt><span class="section"><a href="deps.html#_repositories_with_no_application_at_the_root_level">7.8. Repositories with no application at the root level</a></span></dt><dt><span class="section"><a href="deps.html#_autopatch">7.9. Autopatch</a></span></dt><dt><span class="section"><a href="deps.html#_skipping_deps">7.10. 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><dt><span class="section"><a href="relx.html#_upgrading_a_release">9.5. Upgrading a release</a></span></dt><dt><span class="section"><a href="relx.html#_getting_relx_semver_value">9.6. Getting Relx semver value</a></span></dt></dl></dd><dt><span class="chapter"><a href="sfx.html">10. Self-extracting releases</a></span></dt><dd><dl><dt><span class="section"><a href="sfx.html#_generating_the_self_extracting_archive">10.1. Generating the self-extracting archive</a></span></dt><dt><span class="section"><a href="sfx.html#_running_the_release_2">10.2. Running the release</a></span></dt></dl></dd><dt><span class="chapter"><a href="escript.html">11. Escripts</a></span></dt><dd><dl><dt><span class="section"><a href="escript.html#_requirements">11.1. Requirements</a></span></dt><dt><span class="section"><a href="escript.html#_generating_an_escript">11.2. Generating an escript</a></span></dt><dt><span class="section"><a href="escript.html#_configuration_2">11.3. Configuration</a></span></dt><dt><span class="section"><a href="escript.html#_extra_files">11.4. Extra files</a></span></dt><dt><span class="section"><a href="escript.html#_optimizing_for_size">11.5. Optimizing for size</a></span></dt></dl></dd><dt><span class="chapter"><a href="kerl.html">12. OTP version management</a></span></dt><dd><dl><dt><span class="section"><a href="kerl.html#_erlang_versions">12.1. Erlang versions</a></span></dt><dt><span class="section"><a href="kerl.html#otp_version_pinning">12.2. OTP version pinning</a></span></dt><dt><span class="section"><a href="kerl.html#_continuous_integration">12.3. Continuous integration</a></span></dt><dt><span class="section"><a href="kerl.html#_configuring_kerl">12.4. Configuring Kerl</a></span></dt></dl></dd><dt><span class="chapter"><a href="compat.html">13. Compatibility with other build tools</a></span></dt><dd><dl><dt><span class="section"><a href="compat.html#_rebar_projects_as_erlang_mk_dependencies">13.1. Rebar projects as Erlang.mk dependencies</a></span></dt><dt><span class="section"><a href="compat.html#_erlang_mk_projects_as_rebar_dependencies">13.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">14. AsciiDoc documentation</a></span></dt><dd><dl><dt><span class="section"><a href="asciidoc.html#_requirements_2">14.1. Requirements</a></span></dt><dt><span class="section"><a href="asciidoc.html#_writing_asciidoc_documentation">14.2. Writing AsciiDoc documentation</a></span></dt><dt><span class="section"><a href="asciidoc.html#_configuration_3">14.3. Configuration</a></span></dt><dt><span class="section"><a href="asciidoc.html#_usage">14.4. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="edoc.html">15. EDoc comments</a></span></dt><dd><dl><dt><span class="section"><a href="edoc.html#_writing_edoc_comments">15.1. Writing EDoc comments</a></span></dt><dt><span class="section"><a href="edoc.html#_configuration_4">15.2. Configuration</a></span></dt><dt><span class="section"><a href="edoc.html#_usage_2">15.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">16. Erlang shell</a></span></dt><dd><dl><dt><span class="section"><a href="shell.html#_configuration_5">16.1. Configuration</a></span></dt><dt><span class="section"><a href="shell.html#_usage_3">16.2. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="eunit.html">17. EUnit</a></span></dt><dd><dl><dt><span class="section"><a href="eunit.html#_writing_tests">17.1. Writing tests</a></span></dt><dt><span class="section"><a href="eunit.html#_configuration_6">17.2. Configuration</a></span></dt><dt><span class="section"><a href="eunit.html#_usage_4">17.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="ct.html">18. Common Test</a></span></dt><dd><dl><dt><span class="section"><a href="ct.html#_writing_tests_2">18.1. Writing tests</a></span></dt><dt><span class="section"><a href="ct.html#_configuration_7">18.2. Configuration</a></span></dt><dt><span class="section"><a href="ct.html#_usage_5">18.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="coverage.html">19. Code coverage</a></span></dt><dt><span class="chapter"><a href="ci.html">20. Continuous integration</a></span></dt><dd><dl><dt><span class="section"><a href="ci.html#_configuring_erlang_otp_versions_to_test">20.1. Configuring Erlang/OTP versions to test</a></span></dt><dt><span class="section"><a href="ci.html#_running_tests_across_all_configured_versions">20.2. Running tests across all configured versions</a></span></dt><dt><span class="section"><a href="ci.html#_extending_the_ci_targets">20.3. Extending the CI targets</a></span></dt></dl></dd><dt><span class="chapter"><a href="dialyzer.html">21. Dialyzer</a></span></dt><dd><dl><dt><span class="section"><a href="dialyzer.html#_how_it_works">21.1. How it works</a></span></dt><dt><span class="section"><a href="dialyzer.html#_configuration_8">21.2. Configuration</a></span></dt><dt><span class="section"><a href="dialyzer.html#_usage_6">21.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="xref.html">22. 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">23. External plugins</a></span></dt><dd><dl><dt><span class="section"><a href="plugins_usage.html#_loading_all_plugins_from_a_dependency">23.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">23.2. Loading one plugin from a dependency</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_writing_external_plugins">23.3. Writing external plugins</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_early_stage_plugins">23.4. Early-stage plugins</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_loading_plugins_local_to_the_application">23.5. Loading plugins local to the application</a></span></dt></dl></dd><dt><span class="chapter"><a href="plugins_list.html">24. List of plugins</a></span></dt><dd><dl><dt><span class="section"><a href="plugins_list.html#_efene_mk">24.1. efene.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_elixir_mk">24.2. elixir.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_elvis_mk">24.3. elvis.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_geas">24.4. geas</a></span></dt><dt><span class="section"><a href="plugins_list.html#_hexer_mk">24.5. hexer.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_hexpm_mk">24.6. hexpm.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_jorel">24.7. jorel</a></span></dt><dt><span class="section"><a href="plugins_list.html#_lfe_mk">24.8. lfe.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_mix_mk">24.9. mix.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_reload_mk">24.10. reload.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_rust_mk">24.11. rust.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">25. Why Erlang.mk</a></span></dt><dd><dl><dt><span class="section"><a href="why.html#_erlang_mk_is_fast">25.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">25.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">25.3. Erlang.mk is a text file</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_can_manage_erlang_itself">25.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">25.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">25.6. Erlang.mk integrates nicely in Make and Automake projects</a></span></dt></dl></dd><dt><span class="chapter"><a href="history.html">26. Short history</a></span></dt><dd><dl><dt><span class="section"><a href="history.html#_before_erlang_mk">26.1. Before Erlang.mk</a></span></dt><dt><span class="section"><a href="history.html#_lifetime_of_the_project">26.2. Lifetime of the project</a></span></dt></dl></dd><dt><span class="chapter"><a href="contributing.html">27. Contributing</a></span></dt><dd><dl><dt><span class="section"><a href="contributing.html#_priorities">27.1. Priorities</a></span></dt><dt><span class="section"><a href="contributing.html#_bugs">27.2. Bugs</a></span></dt><dt><span class="section"><a href="contributing.html#_code">27.3. Code</a></span></dt><dt><span class="section"><a href="contributing.html#_packages">27.4. Packages</a></span></dt><dt><span class="section"><a href="contributing.html#_documentation">27.5. Documentation</a></span></dt><dt><span class="section"><a href="contributing.html#_feature_requests">27.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="idm140266978823712"></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#_getting_started_from_scratch">2.6. Getting started from scratch</a></span></dt><dt><span class="section"><a href="getting_started.html#_using_spaces_instead_of_tabs">2.7. Using spaces instead of tabs</a></span></dt><dt><span class="section"><a href="getting_started.html#_using_templates">2.8. Using templates</a></span></dt><dt><span class="section"><a href="getting_started.html#_hiding_erlang_mk_from_git">2.9. Hiding Erlang.mk from git</a></span></dt><dt><span class="section"><a href="getting_started.html#_getting_help">2.10. 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#_fetching_and_listing_dependencies_only">7.4. Fetching and listing dependencies only</a></span></dt><dt><span class="section"><a href="deps.html#_ignoring_unwanted_dependencies">7.5. Ignoring unwanted dependencies</a></span></dt><dt><span class="section"><a href="deps.html#_dependencies_directory">7.6. Dependencies directory</a></span></dt><dt><span class="section"><a href="deps.html#_many_applications_in_one_repository">7.7. Many applications in one repository</a></span></dt><dt><span class="section"><a href="deps.html#_repositories_with_no_application_at_the_root_level">7.8. Repositories with no application at the root level</a></span></dt><dt><span class="section"><a href="deps.html#_autopatch">7.9. Autopatch</a></span></dt><dt><span class="section"><a href="deps.html#_skipping_deps">7.10. 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><dt><span class="section"><a href="ports.html#_propagating_compile_and_linker_flags_to_sub_makefiles">8.4. Propagating compile and linker flags to sub-Makefiles</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><dt><span class="section"><a href="relx.html#_upgrading_a_release">9.5. Upgrading a release</a></span></dt><dt><span class="section"><a href="relx.html#_getting_relx_semver_value">9.6. Getting Relx semver value</a></span></dt></dl></dd><dt><span class="chapter"><a href="sfx.html">10. Self-extracting releases</a></span></dt><dd><dl><dt><span class="section"><a href="sfx.html#_generating_the_self_extracting_archive">10.1. Generating the self-extracting archive</a></span></dt><dt><span class="section"><a href="sfx.html#_running_the_release_2">10.2. Running the release</a></span></dt></dl></dd><dt><span class="chapter"><a href="escript.html">11. Escripts</a></span></dt><dd><dl><dt><span class="section"><a href="escript.html#_requirements">11.1. Requirements</a></span></dt><dt><span class="section"><a href="escript.html#_generating_an_escript">11.2. Generating an escript</a></span></dt><dt><span class="section"><a href="escript.html#_configuration_2">11.3. Configuration</a></span></dt><dt><span class="section"><a href="escript.html#_extra_files">11.4. Extra files</a></span></dt><dt><span class="section"><a href="escript.html#_optimizing_for_size">11.5. Optimizing for size</a></span></dt></dl></dd><dt><span class="chapter"><a href="kerl.html">12. OTP version management</a></span></dt><dd><dl><dt><span class="section"><a href="kerl.html#_erlang_versions">12.1. Erlang versions</a></span></dt><dt><span class="section"><a href="kerl.html#otp_version_pinning">12.2. OTP version pinning</a></span></dt><dt><span class="section"><a href="kerl.html#_continuous_integration">12.3. Continuous integration</a></span></dt><dt><span class="section"><a href="kerl.html#_configuring_kerl">12.4. Configuring Kerl</a></span></dt></dl></dd><dt><span class="chapter"><a href="compat.html">13. Compatibility with other build tools</a></span></dt><dd><dl><dt><span class="section"><a href="compat.html#_rebar_projects_as_erlang_mk_dependencies">13.1. Rebar projects as Erlang.mk dependencies</a></span></dt><dt><span class="section"><a href="compat.html#_erlang_mk_projects_as_rebar_dependencies">13.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">14. AsciiDoc documentation</a></span></dt><dd><dl><dt><span class="section"><a href="asciidoc.html#_requirements_2">14.1. Requirements</a></span></dt><dt><span class="section"><a href="asciidoc.html#_writing_asciidoc_documentation">14.2. Writing AsciiDoc documentation</a></span></dt><dt><span class="section"><a href="asciidoc.html#_configuration_3">14.3. Configuration</a></span></dt><dt><span class="section"><a href="asciidoc.html#_usage">14.4. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="edoc.html">15. EDoc comments</a></span></dt><dd><dl><dt><span class="section"><a href="edoc.html#_writing_edoc_comments">15.1. Writing EDoc comments</a></span></dt><dt><span class="section"><a href="edoc.html#_configuration_4">15.2. Configuration</a></span></dt><dt><span class="section"><a href="edoc.html#_usage_2">15.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">16. Erlang shell</a></span></dt><dd><dl><dt><span class="section"><a href="shell.html#_configuration_5">16.1. Configuration</a></span></dt><dt><span class="section"><a href="shell.html#_usage_3">16.2. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="eunit.html">17. EUnit</a></span></dt><dd><dl><dt><span class="section"><a href="eunit.html#_writing_tests">17.1. Writing tests</a></span></dt><dt><span class="section"><a href="eunit.html#_configuration_6">17.2. Configuration</a></span></dt><dt><span class="section"><a href="eunit.html#_usage_4">17.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="ct.html">18. Common Test</a></span></dt><dd><dl><dt><span class="section"><a href="ct.html#_writing_tests_2">18.1. Writing tests</a></span></dt><dt><span class="section"><a href="ct.html#_configuration_7">18.2. Configuration</a></span></dt><dt><span class="section"><a href="ct.html#_usage_5">18.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="coverage.html">19. Code coverage</a></span></dt><dt><span class="chapter"><a href="ci.html">20. Continuous integration</a></span></dt><dd><dl><dt><span class="section"><a href="ci.html#_configuring_erlang_otp_versions_to_test">20.1. Configuring Erlang/OTP versions to test</a></span></dt><dt><span class="section"><a href="ci.html#_running_tests_across_all_configured_versions">20.2. Running tests across all configured versions</a></span></dt><dt><span class="section"><a href="ci.html#_extending_the_ci_targets">20.3. Extending the CI targets</a></span></dt></dl></dd><dt><span class="chapter"><a href="dialyzer.html">21. Dialyzer</a></span></dt><dd><dl><dt><span class="section"><a href="dialyzer.html#_how_it_works">21.1. How it works</a></span></dt><dt><span class="section"><a href="dialyzer.html#_configuration_8">21.2. Configuration</a></span></dt><dt><span class="section"><a href="dialyzer.html#_usage_6">21.3. Usage</a></span></dt></dl></dd><dt><span class="chapter"><a href="xref.html">22. 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">23. External plugins</a></span></dt><dd><dl><dt><span class="section"><a href="plugins_usage.html#_loading_all_plugins_from_a_dependency">23.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">23.2. Loading one plugin from a dependency</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_writing_external_plugins">23.3. Writing external plugins</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_early_stage_plugins">23.4. Early-stage plugins</a></span></dt><dt><span class="section"><a href="plugins_usage.html#_loading_plugins_local_to_the_application">23.5. Loading plugins local to the application</a></span></dt></dl></dd><dt><span class="chapter"><a href="plugins_list.html">24. List of plugins</a></span></dt><dd><dl><dt><span class="section"><a href="plugins_list.html#_efene_mk">24.1. efene.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_elixir_mk">24.2. elixir.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_elvis_mk">24.3. elvis.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_geas">24.4. geas</a></span></dt><dt><span class="section"><a href="plugins_list.html#_hexer_mk">24.5. hexer.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_hexpm_mk">24.6. hexpm.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_jorel">24.7. jorel</a></span></dt><dt><span class="section"><a href="plugins_list.html#_lfe_mk">24.8. lfe.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_mix_mk">24.9. mix.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_reload_mk">24.10. reload.mk</a></span></dt><dt><span class="section"><a href="plugins_list.html#_rust_mk">24.11. rust.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">25. Why Erlang.mk</a></span></dt><dd><dl><dt><span class="section"><a href="why.html#_erlang_mk_is_fast">25.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">25.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">25.3. Erlang.mk is a text file</a></span></dt><dt><span class="section"><a href="why.html#_erlang_mk_can_manage_erlang_itself">25.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">25.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">25.6. Erlang.mk integrates nicely in Make and Automake projects</a></span></dt></dl></dd><dt><span class="chapter"><a href="history.html">26. Short history</a></span></dt><dd><dl><dt><span class="section"><a href="history.html#_before_erlang_mk">26.1. Before Erlang.mk</a></span></dt><dt><span class="section"><a href="history.html#_lifetime_of_the_project">26.2. Lifetime of the project</a></span></dt></dl></dd><dt><span class="chapter"><a href="contributing.html">27. Contributing</a></span></dt><dd><dl><dt><span class="section"><a href="contributing.html#_priorities">27.1. Priorities</a></span></dt><dt><span class="section"><a href="contributing.html#_bugs">27.2. Bugs</a></span></dt><dt><span class="section"><a href="contributing.html#_code">27.3. Code</a></span></dt><dt><span class="section"><a href="contributing.html#_packages">27.4. Packages</a></span></dt><dt><span class="section"><a href="contributing.html#_documentation">27.5. Documentation</a></span></dt><dt><span class="section"><a href="contributing.html#_feature_requests">27.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/ports.html b/guide/ports.html
index 718b833..a741cba 100644
--- a/guide/ports.html
+++ b/guide/ports.html
@@ -95,7 +95,21 @@ be overriden.</p><div class="variablelist"><dl class="variablelist"><dt><span cl
</dd></dl></div><p>The source files are automatically gathered from the contents
of <span class="emphasis"><em>$(C_SRC_DIR)</em></span>. Erlang.mk looks for <span class="emphasis"><em>.c</em></span>, <span class="emphasis"><em>.C</em></span>, <span class="emphasis"><em>.cc</em></span> and <span class="emphasis"><em>.cpp</em></span>
source files. You can define the variable <code class="literal">SOURCES</code> to manually
-list the files to compile.</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="deps.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="code.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="relx.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>
+list the files to compile.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_propagating_compile_and_linker_flags_to_sub_makefiles"></a>8.4. Propagating compile and linker flags to sub-Makefiles</h2></div></div></div><p>In some cases it might be necessary to propagate the flags
+you just defined to the sub-Makefiles of your local project.
+You generally can’t just export those as this could impact
+the building of dependencies.</p><p>Makefiles allow you to export variables for specific targets.
+When doing this, the variables will be exported only when
+this target runs, and not for other targets. It is therefore
+possible to export them when building the C code without
+impacting other build steps.</p><p>By adding this to your Makefile all five variables will be
+made available to sub-Makefiles when building C code:</p><pre class="programlisting">app-c_src: export CC +=
+app-c_src: export CFLAGS +=
+app-c_src: export CPPFLAGS +=
+app-c_src: export LDFLAGS +=
+app-c_src: export LDLIBS +=</pre><p>Appending an empty string to the existing value is necessary
+because Makefiles expect an assignment for target-specific
+exports. Alternatively you can set a new value:</p><pre class="programlisting">app-c_src: export CFLAGS = -O3</pre></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="deps.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="code.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="relx.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>