3 ms·
wow, that's a lot of useful information. Thank you. I haven't seen relx before. Very good find, thank you.
by skazka16 12y ago
wow, that's a lot of useful information. Thank you. I haven't seen relx before. Very good find, thank you.
- qohen 12y agoAnother tool you might want to check out is erlang.mk, by the author of the Cowboy webserver, Loïc Hoguin -- from the announcement[1]: erlang.mk is a rebar replacement. It was initially created for allowing a faster development process than rebar and for better compatibility with Linux build tools. It should work on Linux and OSX with GNU Make installed. Here's how erlang.mk and relx can be used together to build releases (this is from a post by Loïc)[2]: There is two steps to building a release. First you need to build the various OTP applications you want to include in the release. Once done, you need to create the release itself, by including the Erlang runtime system alongside the applications, a boot script to start the node and all its applications, and some configuration files. erlang.mk solves the first step. It is an include file for GNU Make. Just including it in a Makefile is enough to allow building your project, fetching and building dependencies, building documentation, performing static analysis and more. relx solves the second step. It is a release creation tool, wrapped into a single executable file. It doesn't require a configuration file. And if you do need one, it will be a pretty small one. And here's a quick excerpt from a user-testimonial for erlang.mk, by Jesper L. Andersen[3]: When compiling from warm, it takes rebar 9 seconds to figure out that there is nothing to do in the project. erlang.mk does the same thing in 0.2 seconds. [1] http://erlang.org/pipermail/erlang-questions/2013-August/075097.html http://erlang.org/pipermail/erlang-questions/2013-August/075... [2] http://ninenines.eu/articles/erlang.mk-and-relx/ http://ninenines.eu/articles/erlang.mk-and-relx/ [3] https://medium.com/p/708597c0dd08 https://medium.com/p/708597c0dd08
- mononcqc 12y agoI personally still prefer to use rebar. If you want to make building a release with relx part of rebar, use a compile hook: {post_hooks,[{compile, "./relx"}]}. in your rebar.config.