From 41c769ab5c19da92ecba35d9accc4bc123029e8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Tue, 23 May 2017 20:47:46 +0200 Subject: Remove the use of bootstrap-carousel The custom.js file was converted to not use jquery also. Once bootstrap is gone, we can remove jquery entirely. --- docs/en/erlang.mk/1/guide/app/index.html | 1 - docs/en/erlang.mk/1/guide/asciidoc/index.html | 1 - docs/en/erlang.mk/1/guide/ci/index.html | 1 - docs/en/erlang.mk/1/guide/common_test/index.html | 1 - docs/en/erlang.mk/1/guide/compat/index.html | 1 - docs/en/erlang.mk/1/guide/contributing/index.html | 1 - docs/en/erlang.mk/1/guide/coverage/index.html | 1 - docs/en/erlang.mk/1/guide/deps.asciidoc | 27 ++++++++--- docs/en/erlang.mk/1/guide/deps/index.html | 31 +++++++++---- docs/en/erlang.mk/1/guide/dialyzer/index.html | 1 - docs/en/erlang.mk/1/guide/edoc/index.html | 1 - docs/en/erlang.mk/1/guide/escripts/index.html | 1 - docs/en/erlang.mk/1/guide/eunit/index.html | 1 - .../en/erlang.mk/1/guide/external_plugins.asciidoc | 54 ++++++++++++++++++++++ .../erlang.mk/1/guide/external_plugins/index.html | 42 ++++++++++++++++- .../1/guide/external_plugins_list/index.html | 1 - .../erlang.mk/1/guide/getting_started/index.html | 1 - docs/en/erlang.mk/1/guide/history/index.html | 1 - docs/en/erlang.mk/1/guide/index.html | 1 - docs/en/erlang.mk/1/guide/installation.asciidoc | 4 ++ docs/en/erlang.mk/1/guide/installation/index.html | 11 ++++- docs/en/erlang.mk/1/guide/limitations/index.html | 1 - docs/en/erlang.mk/1/guide/overview/index.html | 1 - docs/en/erlang.mk/1/guide/ports/index.html | 1 - docs/en/erlang.mk/1/guide/releases/index.html | 1 - docs/en/erlang.mk/1/guide/sfx/index.html | 1 - docs/en/erlang.mk/1/guide/shell/index.html | 1 - docs/en/erlang.mk/1/guide/updating.asciidoc | 26 +++++++++-- docs/en/erlang.mk/1/guide/updating/index.html | 30 ++++++++++-- docs/en/erlang.mk/1/guide/why/index.html | 1 - docs/en/erlang.mk/1/guide/xref/index.html | 1 - 31 files changed, 199 insertions(+), 49 deletions(-) (limited to 'docs/en/erlang.mk/1/guide') diff --git a/docs/en/erlang.mk/1/guide/app/index.html b/docs/en/erlang.mk/1/guide/app/index.html index b05e48c4..0d6e67a7 100644 --- a/docs/en/erlang.mk/1/guide/app/index.html +++ b/docs/en/erlang.mk/1/guide/app/index.html @@ -691,7 +691,6 @@ you don’t explicitly use it.

- diff --git a/docs/en/erlang.mk/1/guide/asciidoc/index.html b/docs/en/erlang.mk/1/guide/asciidoc/index.html index 9cb17dba..6dece835 100644 --- a/docs/en/erlang.mk/1/guide/asciidoc/index.html +++ b/docs/en/erlang.mk/1/guide/asciidoc/index.html @@ -242,7 +242,6 @@ your user.

- diff --git a/docs/en/erlang.mk/1/guide/ci/index.html b/docs/en/erlang.mk/1/guide/ci/index.html index a7050ae7..3c74f3b1 100644 --- a/docs/en/erlang.mk/1/guide/ci/index.html +++ b/docs/en/erlang.mk/1/guide/ci/index.html @@ -149,7 +149,6 @@ - diff --git a/docs/en/erlang.mk/1/guide/common_test/index.html b/docs/en/erlang.mk/1/guide/common_test/index.html index a1b12f81..4c96abca 100644 --- a/docs/en/erlang.mk/1/guide/common_test/index.html +++ b/docs/en/erlang.mk/1/guide/common_test/index.html @@ -257,7 +257,6 @@ but covered in its own chapter.

- diff --git a/docs/en/erlang.mk/1/guide/compat/index.html b/docs/en/erlang.mk/1/guide/compat/index.html index a84bd3cc..bb12384a 100644 --- a/docs/en/erlang.mk/1/guide/compat/index.html +++ b/docs/en/erlang.mk/1/guide/compat/index.html @@ -228,7 +228,6 @@ configuration, add or remove modules.

- diff --git a/docs/en/erlang.mk/1/guide/contributing/index.html b/docs/en/erlang.mk/1/guide/contributing/index.html index 3175a7c9..eaddf8ee 100644 --- a/docs/en/erlang.mk/1/guide/contributing/index.html +++ b/docs/en/erlang.mk/1/guide/contributing/index.html @@ -269,7 +269,6 @@ the related documentation.

- diff --git a/docs/en/erlang.mk/1/guide/coverage/index.html b/docs/en/erlang.mk/1/guide/coverage/index.html index 8e07138b..8404d89a 100644 --- a/docs/en/erlang.mk/1/guide/coverage/index.html +++ b/docs/en/erlang.mk/1/guide/coverage/index.html @@ -149,7 +149,6 @@ - diff --git a/docs/en/erlang.mk/1/guide/deps.asciidoc b/docs/en/erlang.mk/1/guide/deps.asciidoc index 723deb0a..84a53de1 100644 --- a/docs/en/erlang.mk/1/guide/deps.asciidoc +++ b/docs/en/erlang.mk/1/guide/deps.asciidoc @@ -167,6 +167,7 @@ The following table lists all existing methods: | hg | hg repo commit | Clone the Mercurial repository and update to the given version | svn | svn repo | Checkout the given SVN repository | cp | cp path/to/repo | Recursively copy a local directory +| ln | ln path/to/repo | Symbolically link a local directory | hex | hex version | Download the given project version from hex.pm | fail | N/A | Always fail, reserved for internal use | legacy | N/A | Legacy Erlang.mk fetcher, reserved for internal use @@ -397,9 +398,20 @@ They work exactly the same as remote dependencies, except: * They are not deleted on `make distclean` * They are not automatically added to the application resource file -To properly fill the application resource file, you will -need to define the `LOCAL_DEPS` variable for each relevant -application, the same as for OTP applications. +To properly fill the application resource file and compile apps in +the right order, you will need to define the `LOCAL_DEPS` variable +for each relevant application, the same as for OTP applications. Apps +can depend on each other in this way, and their compilation order +will follow the same rules as regular dependencies in `DEPS`. + +The top-level `LOCAL_DEPS` variable, if defined, will determine which +apps (along with their dependencies) to build, and also which apps +should be added to the top-level application resource file, if there +is one. This may be useful, for example, for specifying a different +set of apps to build for different releases. If `LOCAL_DEPS` is not +defined, then all apps in the '$(APPS_DIR)' will be built, but none +will be automatically added to the top-level application resource +file. If there is a conflict between a local dependency and a remote dependency, then the local dependency always wins; @@ -476,10 +488,11 @@ on the kind of project it finds the dependency to be. as their build tool. This essentially patches Rebar out, and fixes and converts the project to be compatible with Erlang.mk. -* Erlang.mk projects have their 'erlang.mk' file redirect to -the top-level project's Erlang.mk. This is to ensure that -functionality works across all dependencies, even if the -dependency's Erlang.mk is outdated. +* Erlang.mk projects have their 'Makefile' patched, if necessary, +to include the top-level project's Erlang.mk. This is to ensure +that functionality works across all dependencies, even if the +dependency's Erlang.mk is outdated. The patched Makefile +can be safely committed if necessary. * Other Erlang projects get a small Erlang.mk Makefile generated automatically. diff --git a/docs/en/erlang.mk/1/guide/deps/index.html b/docs/en/erlang.mk/1/guide/deps/index.html index e551a607..a0650b83 100644 --- a/docs/en/erlang.mk/1/guide/deps/index.html +++ b/docs/en/erlang.mk/1/guide/deps/index.html @@ -234,6 +234,11 @@ cellspacing="0" cellpadding="4">

Recursively copy a local directory

+

ln

+

ln path/to/repo

+

Symbolically link a local directory

+ +

hex

hex version

Download the given project version from hex.pm

@@ -483,9 +488,19 @@ They are not automatically added to the application resource file

-

To properly fill the application resource file, you will -need to define the LOCAL_DEPS variable for each relevant -application, the same as for OTP applications.

+

To properly fill the application resource file and compile apps in +the right order, you will need to define the LOCAL_DEPS variable +for each relevant application, the same as for OTP applications. Apps +can depend on each other in this way, and their compilation order +will follow the same rules as regular dependencies in DEPS.

+

The top-level LOCAL_DEPS variable, if defined, will determine which +apps (along with their dependencies) to build, and also which apps +should be added to the top-level application resource file, if there +is one. This may be useful, for example, for specifying a different +set of apps to build for different releases. If LOCAL_DEPS is not +defined, then all apps in the $(APPS_DIR) will be built, but none +will be automatically added to the top-level application resource +file.

If there is a conflict between a local dependency and a remote dependency, then the local dependency always wins; an error will be triggered when trying to fetch the @@ -587,10 +602,11 @@ fixes and converts the project to be compatible with Erlang.mk.

  • -Erlang.mk projects have their erlang.mk file redirect to -the top-level project’s Erlang.mk. This is to ensure that -functionality works across all dependencies, even if the -dependency’s Erlang.mk is outdated. +Erlang.mk projects have their Makefile patched, if necessary, +to include the top-level project’s Erlang.mk. This is to ensure +that functionality works across all dependencies, even if the +dependency’s Erlang.mk is outdated. The patched Makefile +can be safely committed if necessary.

  • @@ -730,7 +746,6 @@ The dependency directory $(DEPS_DIR) will not be removed on make - diff --git a/docs/en/erlang.mk/1/guide/dialyzer/index.html b/docs/en/erlang.mk/1/guide/dialyzer/index.html index 3fb9d47d..519d25e4 100644 --- a/docs/en/erlang.mk/1/guide/dialyzer/index.html +++ b/docs/en/erlang.mk/1/guide/dialyzer/index.html @@ -219,7 +219,6 @@ Dialyzer creates it automatically.

  • - diff --git a/docs/en/erlang.mk/1/guide/edoc/index.html b/docs/en/erlang.mk/1/guide/edoc/index.html index 52eb84ef..6bb292d4 100644 --- a/docs/en/erlang.mk/1/guide/edoc/index.html +++ b/docs/en/erlang.mk/1/guide/edoc/index.html @@ -196,7 +196,6 @@ the following to your Makefile:

    - diff --git a/docs/en/erlang.mk/1/guide/escripts/index.html b/docs/en/erlang.mk/1/guide/escripts/index.html index 88e0320e..2caa838b 100644 --- a/docs/en/erlang.mk/1/guide/escripts/index.html +++ b/docs/en/erlang.mk/1/guide/escripts/index.html @@ -233,7 +233,6 @@ does not include +debug_info.

    - diff --git a/docs/en/erlang.mk/1/guide/eunit/index.html b/docs/en/erlang.mk/1/guide/eunit/index.html index f53290fe..3e18c25f 100644 --- a/docs/en/erlang.mk/1/guide/eunit/index.html +++ b/docs/en/erlang.mk/1/guide/eunit/index.html @@ -283,7 +283,6 @@ but covered in its own chapter.

    - diff --git a/docs/en/erlang.mk/1/guide/external_plugins.asciidoc b/docs/en/erlang.mk/1/guide/external_plugins.asciidoc index d3dafaac..68deb825 100644 --- a/docs/en/erlang.mk/1/guide/external_plugins.asciidoc +++ b/docs/en/erlang.mk/1/guide/external_plugins.asciidoc @@ -75,3 +75,57 @@ The `THIS` variable is required to relatively include files. This allows users to not only be able to select individual plugins, but also select all plugins from the dependency in one go if they wish to do so. + +=== Early-stage plugins + +Plugins declared in `DEP_PLUGINS` are loaded near the end of Erlang.mk. +That's why you have access to all previously initialized variables. +However, if you want your plugin to add common dependencies to +your applications, a regular is loaded too late in the process. +You need to use "Early-stage plugins". They are declared using the +`DEP_EARLY_PLUGINS` variable instead. Plugins listed in this variable +are loaded near the beginning of Erlang.mk Otherwise, they work exactly +the same. + +If you only give the name of a dependency, the default file loaded is +'early-plugins.mk'. You can specify a filename exactly like you would +have done it with regular plugins. + +[source,make] +# In your application's Makefile +BUILD_DEPS = common_deps +DEP_EARLY_PLUGINS = common_deps + +[source,make] +# In the plugin's early-plugins.mk +DEPS += cowboy +TEST_DEPS = ct_helper +dep_ct_helper = git https://github.com/ninenines/ct_helper master + +=== Loading plugins local to the application + +If the Erlang.mk plugin lives in the same directory or repository as your +application or library, then you can load it exactly like an external +plugin: the dependency name is simply the name of your application or +library. + +For example, the following Makefile loads a plugin in the 'mk' +subdirectory: + +[source,make] +DEP_PLUGINS = $(PROJECT)/mk/dist.mk + +This also works with early-stage plugins: + +[source,make] +DEP_EARLY_PLUGINS = $(PROJECT)/mk/variables.mk + +Like external plugins, if you do not specify the path to the plugin, it +defaults to 'plugins.mk' or 'early-plugins.mk', located at the root of +your application: + +[source,make] +# Loads ./early-plugins.mk +DEP_EARLY_PLUGINS = $(PROJECT) +# Loads ./plugins.mk +DEP_PLUGINS = $(PROJECT) diff --git a/docs/en/erlang.mk/1/guide/external_plugins/index.html b/docs/en/erlang.mk/1/guide/external_plugins/index.html index c91f5198..e83b6a76 100644 --- a/docs/en/erlang.mk/1/guide/external_plugins/index.html +++ b/docs/en/erlang.mk/1/guide/external_plugins/index.html @@ -132,6 +132,47 @@ plugins, but also select all plugins from the dependency in one go if they wish to do so.

    +
    +

    Early-stage plugins

    +
    +

    Plugins declared in DEP_PLUGINS are loaded near the end of Erlang.mk. +That’s why you have access to all previously initialized variables. +However, if you want your plugin to add common dependencies to +your applications, a regular is loaded too late in the process. +You need to use "Early-stage plugins". They are declared using the +DEP_EARLY_PLUGINS variable instead. Plugins listed in this variable +are loaded near the beginning of Erlang.mk Otherwise, they work exactly +the same.

    +

    If you only give the name of a dependency, the default file loaded is +early-plugins.mk. You can specify a filename exactly like you would +have done it with regular plugins.

    +
    +
    +
    +
    +
    +
    +
    +

    Loading plugins local to the application

    +
    +

    If the Erlang.mk plugin lives in the same directory or repository as your +application or library, then you can load it exactly like an external +plugin: the dependency name is simply the name of your application or +library.

    +

    For example, the following Makefile loads a plugin in the mk +subdirectory:

    +
    +
    +

    This also works with early-stage plugins:

    +
    +
    +

    Like external plugins, if you do not specify the path to the plugin, it +defaults to plugins.mk or early-plugins.mk, located at the root of +your application:

    +
    +
    +
    +
    @@ -211,7 +252,6 @@ in one go if they wish to do so.

    - diff --git a/docs/en/erlang.mk/1/guide/external_plugins_list/index.html b/docs/en/erlang.mk/1/guide/external_plugins_list/index.html index 0aa40b1e..7b08f0e6 100644 --- a/docs/en/erlang.mk/1/guide/external_plugins_list/index.html +++ b/docs/en/erlang.mk/1/guide/external_plugins_list/index.html @@ -229,7 +229,6 @@ to generate a compatible configuration file for - diff --git a/docs/en/erlang.mk/1/guide/getting_started/index.html b/docs/en/erlang.mk/1/guide/getting_started/index.html index fc30a227..efe429e0 100644 --- a/docs/en/erlang.mk/1/guide/getting_started/index.html +++ b/docs/en/erlang.mk/1/guide/getting_started/index.html @@ -500,7 +500,6 @@ Loïc Hoguin by sending an email to contac - diff --git a/docs/en/erlang.mk/1/guide/history/index.html b/docs/en/erlang.mk/1/guide/history/index.html index 54c3e9da..66636cf4 100644 --- a/docs/en/erlang.mk/1/guide/history/index.html +++ b/docs/en/erlang.mk/1/guide/history/index.html @@ -203,7 +203,6 @@ from the 3.6.0 release onward.

    - diff --git a/docs/en/erlang.mk/1/guide/index.html b/docs/en/erlang.mk/1/guide/index.html index 59ada5e4..468794e5 100644 --- a/docs/en/erlang.mk/1/guide/index.html +++ b/docs/en/erlang.mk/1/guide/index.html @@ -296,7 +296,6 @@ - diff --git a/docs/en/erlang.mk/1/guide/installation.asciidoc b/docs/en/erlang.mk/1/guide/installation.asciidoc index a1e5fd33..fcf6491e 100644 --- a/docs/en/erlang.mk/1/guide/installation.asciidoc +++ b/docs/en/erlang.mk/1/guide/installation.asciidoc @@ -58,6 +58,10 @@ Erlang.mk can be used on Windows inside an MSYS2 environment. Cygwin, MSYS (the original) and native Windows (both Batch and PowerShell) are currently not supported. +NOTE: Erlang.mk expects Unix line breaks in most of the files +(LF instead of CRLF). Make sure to configure your text editor +adequately. + The rest of this section details how to setup Erlang/OTP and MSYS2 in order to use Erlang.mk. diff --git a/docs/en/erlang.mk/1/guide/installation/index.html b/docs/en/erlang.mk/1/guide/installation/index.html index c5d017cb..fa73b71c 100644 --- a/docs/en/erlang.mk/1/guide/installation/index.html +++ b/docs/en/erlang.mk/1/guide/installation/index.html @@ -135,6 +135,16 @@ http://www.gnu.org/software/src-highlite -->

    Erlang.mk can be used on Windows inside an MSYS2 environment. Cygwin, MSYS (the original) and native Windows (both Batch and PowerShell) are currently not supported.

    +
    + + + +
    +
    Note
    +
    Erlang.mk expects Unix line breaks in most of the files +(LF instead of CRLF). Make sure to configure your text editor +adequately.
    +

    The rest of this section details how to setup Erlang/OTP and MSYS2 in order to use Erlang.mk.

    @@ -308,7 +318,6 @@ so expect bugs to be fixed as more tests are added.

    - diff --git a/docs/en/erlang.mk/1/guide/limitations/index.html b/docs/en/erlang.mk/1/guide/limitations/index.html index 27f69b3b..76ef25a3 100644 --- a/docs/en/erlang.mk/1/guide/limitations/index.html +++ b/docs/en/erlang.mk/1/guide/limitations/index.html @@ -191,7 +191,6 @@ fix this behavior.

    - diff --git a/docs/en/erlang.mk/1/guide/overview/index.html b/docs/en/erlang.mk/1/guide/overview/index.html index 95bcb794..3ea5bf97 100644 --- a/docs/en/erlang.mk/1/guide/overview/index.html +++ b/docs/en/erlang.mk/1/guide/overview/index.html @@ -236,7 +236,6 @@ everyone agreed on everything all the time.

    - diff --git a/docs/en/erlang.mk/1/guide/ports/index.html b/docs/en/erlang.mk/1/guide/ports/index.html index f6e71a7a..7fc9dbbf 100644 --- a/docs/en/erlang.mk/1/guide/ports/index.html +++ b/docs/en/erlang.mk/1/guide/ports/index.html @@ -284,7 +284,6 @@ list the files to compile.

    - diff --git a/docs/en/erlang.mk/1/guide/releases/index.html b/docs/en/erlang.mk/1/guide/releases/index.html index 923a0d4e..81fec43a 100644 --- a/docs/en/erlang.mk/1/guide/releases/index.html +++ b/docs/en/erlang.mk/1/guide/releases/index.html @@ -276,7 +276,6 @@ http://www.gnu.org/software/src-highlite --> - diff --git a/docs/en/erlang.mk/1/guide/sfx/index.html b/docs/en/erlang.mk/1/guide/sfx/index.html index d90cc8bf..faf40223 100644 --- a/docs/en/erlang.mk/1/guide/sfx/index.html +++ b/docs/en/erlang.mk/1/guide/sfx/index.html @@ -197,7 +197,6 @@ the release in console mode.

    - diff --git a/docs/en/erlang.mk/1/guide/shell/index.html b/docs/en/erlang.mk/1/guide/shell/index.html index 295caf48..e7a49274 100644 --- a/docs/en/erlang.mk/1/guide/shell/index.html +++ b/docs/en/erlang.mk/1/guide/shell/index.html @@ -189,7 +189,6 @@ command q()..

    - diff --git a/docs/en/erlang.mk/1/guide/updating.asciidoc b/docs/en/erlang.mk/1/guide/updating.asciidoc index 61d913db..8eeb0bf0 100644 --- a/docs/en/erlang.mk/1/guide/updating.asciidoc +++ b/docs/en/erlang.mk/1/guide/updating.asciidoc @@ -47,10 +47,28 @@ Yep, it's that easy. === Customizing the build -Erlang.mk allows you to customize which plugins are to be included -in the 'erlang.mk' file. You can do so by maintaining your own -'build.config' file in your repository. Erlang.mk will automatically -use it the next time you run `make erlang-mk`. +Erlang.mk allows you to customize which components are to be included +in the 'erlang.mk' file. The `WITHOUT` variable allows you to +remove components from the default Erlang.mk build. The 'build.config' +file lets you define exactly what goes in (including your own code!), +and in what order. + +The `WITHOUT` file contains the list of components to exclude from +the build. For example, to exclude the package index and the EDoc +plugin when bootstrapping your application: + +[source,bash] +$ make -f erlang.mk bootstrap WITHOUT="index plugins/edoc" + +The generated Erlang.mk will never include those components when +you update it, until you change your mind and use the `WITHOUT` +variable again when you upgrade: + +[source,bash] +$ make erlang-mk WITHOUT=index + +The 'build.config' file is automatically used when you bootstrap +Erlang.mk or when you update it with `make erlang-mk`. The 'build.config' file contains the list of all files that will be built into the resulting 'erlang.mk' file. You can start from diff --git a/docs/en/erlang.mk/1/guide/updating/index.html b/docs/en/erlang.mk/1/guide/updating/index.html index fbb3fffc..72956156 100644 --- a/docs/en/erlang.mk/1/guide/updating/index.html +++ b/docs/en/erlang.mk/1/guide/updating/index.html @@ -117,10 +117,31 @@ rm -rf .erlang.

    Customizing the build

    -

    Erlang.mk allows you to customize which plugins are to be included -in the erlang.mk file. You can do so by maintaining your own -build.config file in your repository. Erlang.mk will automatically -use it the next time you run make erlang-mk.

    +

    Erlang.mk allows you to customize which components are to be included +in the erlang.mk file. The WITHOUT variable allows you to +remove components from the default Erlang.mk build. The build.config +file lets you define exactly what goes in (including your own code!), +and in what order.

    +

    The WITHOUT file contains the list of components to exclude from +the build. For example, to exclude the package index and the EDoc +plugin when bootstrapping your application:

    +
    +
    +
    $ make -f erlang.mk bootstrap WITHOUT="index plugins/edoc"
    +

    The generated Erlang.mk will never include those components when +you update it, until you change your mind and use the WITHOUT +variable again when you upgrade:

    +
    +
    +
    $ make erlang-mk WITHOUT=index
    +

    The build.config file is automatically used when you bootstrap +Erlang.mk or when you update it with make erlang-mk.

    - diff --git a/docs/en/erlang.mk/1/guide/why/index.html b/docs/en/erlang.mk/1/guide/why/index.html index 02c57035..09bcb78b 100644 --- a/docs/en/erlang.mk/1/guide/why/index.html +++ b/docs/en/erlang.mk/1/guide/why/index.html @@ -228,7 +228,6 @@ as you expect it to.

    - diff --git a/docs/en/erlang.mk/1/guide/xref/index.html b/docs/en/erlang.mk/1/guide/xref/index.html index 45e89ff7..40f3f289 100644 --- a/docs/en/erlang.mk/1/guide/xref/index.html +++ b/docs/en/erlang.mk/1/guide/xref/index.html @@ -149,7 +149,6 @@ - -- cgit v1.2.3