Packages

Ceylan-WOOPER, a Wrapper for Object-Oriented Programming in Erlang, as an OTP active application here (see http://wooper.esperide.org)

Current section

Files

Jump to
wooper rebar.config
Raw

rebar.config

% This is a (manually crafted) configuration file of rebar3 *in the context of
% an hex package* (ex: in this case only src/ is packaged, and none of the root
% GNUmake* files), so that Ceylan-WOOPER can better integrate in the current OTP
% ecosystem, despite its (more complex) build based on GNU make.
%
% This is also a template, so that version numbers can be updated from a
% centralized place (namely GNUmakevars.inc).
% Base layout was obtained thanks to: 'rebar3 new app wooper', as WOOPER is an
% active OTP application (not a mere library).
% To be run from the library root as 'rebar3 compile' or 'rebar3 release'.
% See also:
% - http://erlang.org/doc/design_principles/release_structure.html
% - https://www.rebar3.org/docs/releases
% - https://learnyousomeerlang.com/release-is-the-word
% Settings for the 'default' profile follow.
% Directly depends on the Ceylan-Myriad OTP library application (Erlang
% implied):
% As a GIT-based dependency:
%
% (not working properly, as the hex plugin expects a flat source tree
% apparently, so the build of the dependency fails)
%
%{deps, [ {myriad, "1.*.*", {git,
% "https://github.com/Olivier-Boudeville/Ceylan-Myriad",
% {branch, "master"} } } ] }.
% As an hex-package dependency:
%
% (works if the package uses a specific hook script, see
% hex-compile-hook-script.sh, to compensate for the GNUmake* root files that the
% package archive will not include at their location)
%
{deps, [ {myriad, "1.0.9"} ] }.
% We need to rely on our dedicated build procedure (ex: for the parse transforms
% involved):
%
% Could not set REBAR_PROFILE=$(REBAR_PROFILE):
%
{pre_hooks, [ {compile, "priv/hex-packaging/hex-compile-hook-script.sh"} ]}.
%{post_hooks, [
% {compile, "echo 'WOOPER hex post-compile hook!'"} ]}.
% No release section, only present in the base rebar.config.
% For packages:
%
% (use 'rebar3 update' to enable the hex plugin)
%
{plugins, [rebar3_hex]}.