Skip to content

Commit

Permalink
Update master with mainline rebar (v2)
Browse files Browse the repository at this point in the history
This PR uses the latest software provided by the upstream Rebar (v2) repo.

The most significant change allows this version of Rebar to work with
compilers which do not support the -m64 flag, as reported in #892
amongst others.

The latest code base also contains @davisp's Properly skip apps with a
.app.src.script file patch which CouchDB has been carrying for a while
now.
  • Loading branch information
wohali committed Nov 7, 2018
2 parents 5dea85d + b6d3094 commit 0c435f3
Show file tree
Hide file tree
Showing 156 changed files with 3,617 additions and 486 deletions.
23 changes: 22 additions & 1 deletion .travis.yml
Expand Up @@ -9,8 +9,29 @@ otp_release:
- R14B04
- R14B03
- 17.0
- 18.0
- 19.1
- 20.0.5
- 20.1.5
env: MAKE_TARGET=ci
before_script:
- hostname -f
- cc -v
- ld -v
script: "make travis"
- find .rebar
after_script:
- find .rebar
matrix:
include:
- otp_release: 20.1.5
env: MAKE_TARGET=ci-dialyze
allow_failures:
- otp_release: 20.1.5
env: MAKE_TARGET=ci-dialyze
script: make $MAKE_TARGET
cache:
directories:
- .rebar
before_cache:
- rm -fv .rebar/erlcinfo
- rm -fv $HOME/.cache/.rebar/erlcinfo
12 changes: 7 additions & 5 deletions Makefile
Expand Up @@ -22,11 +22,11 @@ check: debug xref dialyzer deps test
xref:
@./rebar xref

build_plt:
@./rebar build-plt
maybe_build_plt:
@./rebar -vv check-plt || ./rebar -vv build-plt

dialyzer:
@./rebar dialyze
dialyze: maybe_build_plt
@./rebar -vv dialyze

binary: VSN = $(shell ./rebar -V)
binary: clean all
Expand All @@ -45,4 +45,6 @@ test_eunit: all
test_inttest: all deps
@$(RETEST) -l $(LOG_LEVEL) $(RT_TARGETS)

travis: clean debug xref clean all deps test
ci: clean debug xref clean all deps test

ci-dialyze: clean debug dialyze
5 changes: 5 additions & 0 deletions README.md
@@ -1,10 +1,15 @@
**rebar is deprecated and will receive only bug fixes. We encourage you to move to [rebar3](https://github.com/erlang/rebar3).**

----

rebar
=====

rebar is an Erlang build tool that makes it easy to compile and test Erlang
applications, port drivers and releases.

[![Build Status](https://secure.travis-ci.org/rebar/rebar.png?branch=master)](http://travis-ci.org/rebar/rebar)
[![Build status](https://ci.appveyor.com/api/projects/status/4c48dw0cbu265cvt?svg=true)](https://ci.appveyor.com/project/rebar-win-ci/rebar-t0g71)

rebar is a self-contained Erlang script, so it's easy to distribute or even
embed directly in a project. Where possible, rebar uses standard Erlang/OTP
Expand Down
61 changes: 61 additions & 0 deletions RELEASE-NOTES.md
@@ -1,3 +1,64 @@
# 2.6.4

* rebar/619: [Fix cdb processing when a file is skipped](https://github.com/rebar/rebar/pull/619)

# 2.6.3

* rebar/610: [qc: lift experimental notice](https://github.com/rebar/rebar/pull/610)
* rebar/611: [port_compiler: consistently format default_env/0](https://github.com/rebar/rebar/pull/611)
* rebar/612: [Introduce and use compat random number module](https://github.com/rebar/rebar/pull/612)
* rebar/614: [Add an additional check for the existence of a 'rebar.beam' file](https://github.com/rebar/rebar/pull/614)
* rebar/615: [port_compiler: generate clang compilation db](https://github.com/rebar/rebar/pull/615)
* rebar/616: [port_compiler: clean up compile_each()](https://github.com/rebar/rebar/pull/616)
* rebar/617: [port_compiler: auto-select C++ specific link template](https://github.com/rebar/rebar/pull/617)

# 2.6.2

* rebar/532: [Automatically clean neotoma-generated erl files, regression test](https://github.com/rebar/rebar/pull/532)
* rebar/549: [Add Windows continuous integration through AppVeyor](https://github.com/rebar/rebar/pull/549)
* rebar/551: [fprof: document Cachegrind support](https://github.com/rebar/rebar/pull/551)
* rebar/556: [fprof: further document Cachegrind support](https://github.com/rebar/rebar/pull/556)
* rebar/557: [Fix windows eunit tests](https://github.com/rebar/rebar/pull/557)
* rebar/558: [Add qualified name tests docs (see pr #119)](https://github.com/rebar/rebar/pull/558)
* rebar/560: [Lock retest dependency](https://github.com/rebar/rebar/pull/560)
* rebar/562: [Add support for Windows integration testing](https://github.com/rebar/rebar/pull/562)
* rebar/567: [Allow windows release to use etc conf dir](https://github.com/rebar/rebar/pull/567)
* rebar/570: [xref: fix dialyzer warning introduced in 69802f63120](https://github.com/rebar/rebar/pull/570)
* rebar/573: [Provide additional debug logging on relup generation](https://github.com/rebar/rebar/pull/573)
* rebar/578: [Add the latest OTP 18 version to the Travis build](https://github.com/rebar/rebar/pull/578)
* rebar/580: [Additional Common Test regression tests](https://github.com/rebar/rebar/pull/580)
* rebar/581: [Update retest dependency url](https://github.com/rebar/rebar/pull/581)
* rebar/586: [Ensure ebin created for dia compiler](https://github.com/rebar/rebar/pull/586)
* rebar/587: [rebar_require_vsn: Update regexp to account for newer OTP versions](https://github.com/rebar/rebar/pull/587)
* rebar/588: [Look for ct .spec files in the ct_dir that was specified](https://github.com/rebar/rebar/pull/588)
* rebar/589: [Introduce REBAR_DEPS_PREFER_LIBS env variable to alter search behaviour](https://github.com/rebar/rebar/pull/589)
* rebar/590: [Treat port env vars as expandable only if they self reference](https://github.com/rebar/rebar/pull/590)
* rebar/591: [Fix/eunit tests surefire crash](https://github.com/rebar/rebar/pull/591)
* rebar/594: [Introduce REBAR_VSN_CACHE_FILE env variable to load/save vsn cache](https://github.com/rebar/rebar/pull/594)
* rebar/599: [Fix bug when running gcc in cross_sizeof](https://github.com/rebar/rebar/pull/599)
* rebar/602: [Support full-source rebar3-style deps (deps without Version Regexes)](https://github.com/rebar/rebar/pull/602)
* rebar/603: [add deprecated message](https://github.com/rebar/rebar/pull/603)
* rebar/605: [Add necessary OSX flags for port driver linking](https://github.com/rebar/rebar/pull/605)
* rebar/606: [Revert 'Treat port env vars as expandable only if they self reference'](https://github.com/rebar/rebar/pull/606)

# 2.6.1

* rebar/514: [Add license to relnotes tool per reviewer request](https://github.com/rebar/rebar/pull/514)
* rebar/518: [Generate reserved file for erlc regression test](https://github.com/rebar/rebar/pull/518)
* rebar/520: [Fixed version of #451](https://github.com/rebar/rebar/pull/520)
* rebar/521: [rebar_utils: fix comment](https://github.com/rebar/rebar/pull/521)
* rebar/522: [Fixed version of #395](https://github.com/rebar/rebar/pull/522)
* rebar/524: [completion: add libid= to bash and zsh scripts](https://github.com/rebar/rebar/pull/524)
* rebar/530: [Allow behaviors defined inside xref_extra_path](https://github.com/rebar/rebar/pull/530)
* rebar/535: [Add regression test for covered common test](https://github.com/rebar/rebar/pull/535)
* rebar/537: [Fix eunit test on OTP18](https://github.com/rebar/rebar/pull/537)
* rebar/538: [Fix #536](https://github.com/rebar/rebar/pull/538)
* rebar/539: [Add erl_first_files in eunit_first_files and qc_first_files](https://github.com/rebar/rebar/pull/539)
* rebar/540: [Complete port compiler help string](https://github.com/rebar/rebar/pull/540)
* rebar/543: [rmemo: use a better R13 check (Reported-by: Stavros Aronis)](https://github.com/rebar/rebar/pull/543)
* rebar/545: [Fix #544](https://github.com/rebar/rebar/pull/545)
* rebar/546: [Added report and verbose options for LFE compile.](https://github.com/rebar/rebar/pull/546)

# 2.6.0

* rebar/203: [Pluggable proto compilers gpb](https://github.com/rebar/rebar/pull/203)
Expand Down
9 changes: 9 additions & 0 deletions THANKS
Expand Up @@ -142,3 +142,12 @@ Derek Brown
Danil Onishchenko
Stavros Aronis
James Fish
Tony Rogvall
Andrey Teplyashin
Duncan McGreggor
Sebastien Serre
John Daily
Yury Gargay
Frank Hunleth
Matwey Kornilov
Julius Andrikonis
24 changes: 24 additions & 0 deletions appveyor.yml
@@ -0,0 +1,24 @@
version: 2.6.1.{build}
clone_depth: 1
build_script:
- cmd: >-
bootstrap.bat
set REBAR_EXTRA_DEPS=1
.\rebar get-deps
copy rebar deps\retest
copy rebar.cmd deps\retest
cd deps\retest & .\rebar compile escriptize
test_script:
- cmd: >-
rebar eunit
"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64
cd deps\retest & retest -l debug -t 120000 ..\..\inttest
artifacts:
- path: rebar
5 changes: 4 additions & 1 deletion bootstrap
Expand Up @@ -24,7 +24,10 @@ main(Args) ->
true ->
rm("ebin/*.beam");
false ->
rm("ebin/rebar.beam")
case filelib:is_file("ebin/rebar.beam") of
true -> rm("ebin/rebar.beam");
false -> io:fwrite("No beam files found.~n")
end
end,

%% Add check for debug flag
Expand Down
8 changes: 6 additions & 2 deletions ebin/rebar.app
Expand Up @@ -3,7 +3,7 @@

{application, rebar,
[{description, "Rebar: Erlang Build Tool"},
{vsn, "2.6.0"},
{vsn, "2.6.4"},
{modules, [ rebar,
rebar_abnfc_compiler,
rebar_app_utils,
Expand Down Expand Up @@ -46,7 +46,8 @@
rebar_metacmds,
rebar_getopt,
rebar_mustache,
rmemo ]},
rmemo,
rebar_rand_compat ]},
{registered, []},
{applications,
[
Expand All @@ -68,6 +69,9 @@
%% Default log level
{log_level, warn},

%% Log colored
{log_colored, uncolored},

%% any_dir processing modules
{any_dir_modules, [
rebar_require_vsn,
Expand Down
2 changes: 1 addition & 1 deletion inttest/app_src/app_src.erl
@@ -1,6 +1,6 @@
-module(app_src).

-compile(export_all).
-export([test/0]).

test() ->
ok.
11 changes: 8 additions & 3 deletions inttest/app_src/app_src_rt.erl
Expand Up @@ -26,13 +26,18 @@
%% -------------------------------------------------------------------
-module(app_src_rt).

-compile(export_all).
-export([setup/1, files/0, run/1]).

-include_lib("eunit/include/eunit.hrl").

setup([Target]) ->
retest_utils:load_module(filename:join(Target, "inttest_utils.erl")),
ok.

files() ->
[{copy, "../../rebar", "rebar"},
{create, "src/app_src.app.src", app(app_src)}].
[
{create, "src/app_src.app.src", app(app_src)}
] ++ inttest_utils:rebar_setup().

run(Dir) ->
retest_log:log(debug, "Running in Dir: ~s~n", [Dir]),
Expand Down
2 changes: 1 addition & 1 deletion inttest/app_src_script/app_src_script.erl
@@ -1,6 +1,6 @@
-module(app_src_script).

-compile(export_all).
-export([test/0]).

test() ->
ok.
11 changes: 8 additions & 3 deletions inttest/app_src_script/app_src_script_rt.erl
Expand Up @@ -26,13 +26,18 @@
%% -------------------------------------------------------------------
-module(app_src_script_rt).

-compile(export_all).
-export([setup/1, files/0, run/1]).

-include_lib("eunit/include/eunit.hrl").

setup([Target]) ->
retest_utils:load_module(filename:join(Target, "inttest_utils.erl")),
ok.

files() ->
[{copy, "../../rebar", "rebar"},
{create, "src/app_src_script.app.src.script", app_script(app_src_script)}].
[
{create, "src/app_src_script.app.src.script", app_script(app_src_script)}
] ++ inttest_utils:rebar_setup().

run(Dir) ->
retest_log:log(debug, "Running in Dir: ~s~n", [Dir]),
Expand Down
2 changes: 1 addition & 1 deletion inttest/app_src_script_2/app_src_script_2.erl
@@ -1,6 +1,6 @@
-module(app_src_script_2).

-compile(export_all).
-export([test/0]).

test() ->
ok.
11 changes: 8 additions & 3 deletions inttest/app_src_script_2/app_src_script_2_rt.erl
Expand Up @@ -26,14 +26,19 @@
%% -------------------------------------------------------------------
-module(app_src_script_2_rt).

-compile(export_all).
-export([setup/1, files/0, run/1]).

-include_lib("eunit/include/eunit.hrl").

setup([Target]) ->
retest_utils:load_module(filename:join(Target, "inttest_utils.erl")),
ok.

files() ->
[{copy, "../../rebar", "rebar"},
[
{create, "src/app_src_script_2.app.src.script", app_script(app_src_script_2)},
{create, "src/app_src_script_2.app.src", app(app_src_script_2)}].
{create, "src/app_src_script_2.app.src", app(app_src_script_2)}
] ++ inttest_utils:rebar_setup().

run(Dir) ->
retest_log:log(debug, "Running in Dir: ~s~n", [Dir]),
Expand Down
11 changes: 8 additions & 3 deletions inttest/appup_src/appup_src_rt.erl
Expand Up @@ -26,13 +26,18 @@
%% -------------------------------------------------------------------
-module(appup_src_rt).

-compile(export_all).
-export([setup/1, files/0, run/1]).

-include_lib("eunit/include/eunit.hrl").

setup([Target]) ->
retest_utils:load_module(filename:join(Target, "inttest_utils.erl")),
ok.

files() ->
[{copy, "../../rebar", "rebar"},
{copy, "src", "src"}].
[
{copy, "src", "src"}
] ++ inttest_utils:rebar_setup().

run(Dir) ->
retest_log:log(debug, "Running in Dir: ~s~n", [Dir]),
Expand Down
2 changes: 1 addition & 1 deletion inttest/appup_src/src/appup_src.erl
@@ -1,6 +1,6 @@
-module(appup_src).

-compile(export_all).
-export([test/0]).

test() ->
ok.
11 changes: 8 additions & 3 deletions inttest/appup_src_2/appup_src_2_rt.erl
Expand Up @@ -26,13 +26,18 @@
%% -------------------------------------------------------------------
-module(appup_src_2_rt).

-compile(export_all).
-export([setup/1, files/0, run/1]).

-include_lib("eunit/include/eunit.hrl").

setup([Target]) ->
retest_utils:load_module(filename:join(Target, "inttest_utils.erl")),
ok.

files() ->
[{copy, "../../rebar", "rebar"},
{copy, "src", "src"}].
[
{copy, "src", "src"}
] ++ inttest_utils:rebar_setup().

run(Dir) ->
retest_log:log(debug, "Running in Dir: ~s~n", [Dir]),
Expand Down
10 changes: 7 additions & 3 deletions inttest/appup_src_2/appup_src_rt_2.erl
Expand Up @@ -26,13 +26,17 @@
%% -------------------------------------------------------------------
-module(appup_src_rt_2).

-compile(export_all).
-export([setup/1, files/0, run/1]).

-include_lib("eunit/include/eunit.hrl").

setup([Target]) ->
retest_utils:load_module(filename:join(Target, "inttest_utils.erl")),
ok.

files() ->
[{copy, "../../rebar", "rebar"},
{copy, "src", "src"}].
[{copy, "src", "src"}
] ++ inttest_utils:rebar_setup().

run(Dir) ->
retest_log:log(debug, "Running in Dir: ~s~n", [Dir]),
Expand Down
2 changes: 1 addition & 1 deletion inttest/appup_src_2/src/appup_src.erl
@@ -1,6 +1,6 @@
-module(appup_src).

-compile(export_all).
-export([test/0]).

test() ->
ok.

0 comments on commit 0c435f3

Please sign in to comment.