aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTristan Sloughter <[email protected]>2013-04-05 14:49:57 -0700
committerTristan Sloughter <[email protected]>2013-04-05 14:49:57 -0700
commit7a3d9ded855d6ccc4f8d56711bd0c0154bfa390c (patch)
treee6a47453fc6e99c3a6b0dc233383e74556db348b
parent467a0ffd5325753ee5c7f3f936f2dee76a9d6193 (diff)
parent34cee33d7d9e70b4056c7349e214151a7be41cc6 (diff)
downloadrelx-7a3d9ded855d6ccc4f8d56711bd0c0154bfa390c.tar.gz
relx-7a3d9ded855d6ccc4f8d56711bd0c0154bfa390c.tar.bz2
relx-7a3d9ded855d6ccc4f8d56711bd0c0154bfa390c.zip
Merge pull request #43 from erlware/next
Next
-rw-r--r--.travis.yml7
-rw-r--r--Makefile5
-rw-r--r--README.md2
-rw-r--r--rebar.config.script15
-rw-r--r--src/rcl_dscv_util.erl2
-rw-r--r--src/rcl_provider.erl18
6 files changed, 43 insertions, 6 deletions
diff --git a/.travis.yml b/.travis.yml
index 3832235..b105084 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,5 +1,7 @@
language: erlang
otp_release:
+ - R16B
+ - R15B03
- R15B02
- R15B01
- R15B
@@ -10,4 +12,7 @@ script: "make rebuild"
branches:
only:
- master
- - next \ No newline at end of file
+notifications:
+ email:
+ irc: "irc.freenode.org#erlware" \ No newline at end of file
diff --git a/Makefile b/Makefile
index 5bbe08f..55565b0 100644
--- a/Makefile
+++ b/Makefile
@@ -81,8 +81,7 @@ $(DEPS_PLT):
--apps erts kernel stdlib -r deps
dialyzer: $(DEPS_PLT)
- dialyzer --plt $(DEPS_PLT) --fullpath -Wrace_conditions \
- -I include -pa $(CURDIR)/ebin --src src
+ dialyzer --fullpath --plt $(DEPS_PLT) -I include -Wrace_conditions -r ./ebin
typer:
typer --plt $(DEPS_PLT) -r ./src
@@ -112,6 +111,6 @@ clean: clean-common-test-data
distclean: clean
- rm -rf $(DEPS_PLT)
- - rm -rvf $(CURDIR)/deps/*
+ - rm -rvf $(CURDIR)/deps
rebuild: distclean deps compile escript dialyzer test
diff --git a/README.md b/README.md
index 419bc50..3d11de2 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,5 @@
+[![Build Status](https://travis-ci.org/tsloughter/relcool.png)](https://travis-ci.org/tsloughter/relcool)
+
# NAME
relcool - A release assembler for erlang
diff --git a/rebar.config.script b/rebar.config.script
new file mode 100644
index 0000000..c19a751
--- /dev/null
+++ b/rebar.config.script
@@ -0,0 +1,15 @@
+{match, [ErtsNumber]} = re:run(erlang:system_info(otp_release), "R(\\d+).+", [{capture, [1], list}]),
+ErtsVsn = erlang:list_to_integer(ErtsNumber),
+Opts1 = case lists:keysearch(erl_opts, 1, CONFIG) of
+ {value, {erl_opts, Opts0}} ->
+ Opts0;
+ false ->
+ []
+ end,
+Opts2 = if
+ ErtsVsn >= 15 ->
+ [{d, have_callback_support} | Opts1];
+ true ->
+ Opts1
+ end,
+lists:keystore(erl_opts, 1, CONFIG, {erl_opts, Opts2}).
diff --git a/src/rcl_dscv_util.erl b/src/rcl_dscv_util.erl
index 4fb6126..68dcb68 100644
--- a/src/rcl_dscv_util.erl
+++ b/src/rcl_dscv_util.erl
@@ -92,8 +92,6 @@ discover_dir(ProcessDir, File, directory) ->
[Err]
end;
discover_dir(ProcessDir, File, file) ->
- Res = ProcessDir(File, file),
- io:format("Result -> ~p~n", [Res]),
case ProcessDir(File, file) of
{ok, Result} ->
[{ok, Result}];
diff --git a/src/rcl_provider.erl b/src/rcl_provider.erl
index 750b96e..4d8f044 100644
--- a/src/rcl_provider.erl
+++ b/src/rcl_provider.erl
@@ -41,10 +41,28 @@
-opaque t() :: {?MODULE, module()}.
+
+-ifdef(have_callback_support).
+
-callback init(rcl_state:t()) -> {ok, rcl_state:t()} | relcool:error().
-callback do(rcl_state:t()) -> {ok, rcl_state:t()} | relcool:error().
-callback format_error(Reason::term()) -> iolist().
+-else.
+
+%% In the case where R14 or lower is being used to compile the system
+%% we need to export a behaviour info
+-export([behaviour_info/1]).
+-spec behaviour_info(atom()) -> [{atom(), arity()}] | undefined.
+behaviour_info(callbacks) ->
+ [{init, 1},
+ {do, 1},
+ {format_error, 1}];
+behaviour_info(_) ->
+ undefined.
+
+-endif.
+
%%%===================================================================
%%% API
%%%===================================================================