summaryrefslogtreecommitdiff
path: root/rebar.config.script
blob: c4c8eaf7d76616da742fd59b85f5fcef0bbd67ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
% Licensed under the Apache License, Version 2.0 (the "License"); you may not
% use this file except in compliance with the License. You may obtain a copy of
% the License at
%
%   http://www.apache.org/licenses/LICENSE-2.0
%
% Unless required by applicable law or agreed to in writing, software
% distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
% WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
% License for the specific language governing permissions and limitations under
% the License.

% Set the path to the configuration environment generated
% by `./configure`.
ConfigureEnv = filename:join(filename:dirname(SCRIPT), "config.erl"),
os:putenv("COUCHDB_CONFIG", ConfigureEnv).


DepDescs = [
    {b64url,            "b64url",           {branch, "master"}},
    {cassim,            "cassim",           {branch, "master"}},
    {couch_log,         "couch-log",        {branch, "master"}},
    {config,            "config",           {branch, "master"}},
    {chttpd,            "chttpd",           {branch, "setup"}},
    {couch,             "couch",            {branch, "master"}},
    {couch_index,       "couch-index",      {branch, "master"}},
    {couch_mrview,      "couch-mrview",     {branch, "master"}},
    {couch_replicator,  "couch-replicator", {branch, "master"}},
    {couch_dbupdates,   "couch-dbupdates",  {branch, "master"}},
    {couch_plugins,     "couch-plugins",    {branch, "master"}},
    {couch_event,       "couch-event",      {branch, "master"}},
    {couch_stats,       "couch-stats",      {branch, "master"}},
    {docs,              "documentation",    {branch, "master"}, [raw]},
    {ddoc_cache,        "ddoc-cache",       {branch, "master"}},
    {ets_lru,           "ets-lru",          {branch, "master"}},
    {fabric,            "fabric",           {branch, "master"}},
    {fauxton,           "fauxton",          {branch, "master"}, [raw]},
    {folsom,            "folsom",           {branch, "master"}},
    {global_changes,    "global-changes",   {branch, "master"}},
    {goldrush,          "goldrush",         {tag, "0.1.6"}},
    {ibrowse,           "ibrowse",          {branch, "master"}},
    {ioq,               "ioq",              {branch, "master"}},
    {jiffy,             "jiffy",            {branch, "master"}},
    {khash,             "khash",            {branch, "master"}},
    {mem3,              "mem3",             {branch, "master"}},
    {mochiweb,          "mochiweb",         {branch, "master"}},
    {oauth,             "oauth",            {branch, "master"}},
    {rexi,              "rexi",             {branch, "master"}},
    {setup,             "setup",            {branch, "master"}},
    {snappy,            "snappy",           {branch, "1994-merge-rcouch"}}
],

BaseUrl = "https://git-wip-us.apache.org/repos/asf/",

MakeDep = fun
    ({AppName, {url, Url}, Version}) ->
        {AppName, ".*", {git, Url, Version}};
    ({AppName, {url, Url}, Version, Options}) ->
        {AppName, ".*", {git, Url, Version}, Options};
    ({AppName, RepoName, Version}) ->
        Url = BaseUrl ++ "couchdb-" ++ RepoName ++ ".git",
        {AppName, ".*", {git, Url, Version}};
    ({AppName, RepoName, Version, Options}) ->
        Url = BaseUrl ++ "couchdb-" ++ RepoName ++ ".git",
        {AppName, ".*", {git, Url, Version}, Options}
end,

AddConfig = [
    {require_otp_vsn, "R14B01|R14B03|R14B04|R16B02|R16B03-1|17"},
    {deps_dir, "src"},
    {deps, lists:map(MakeDep, DepDescs)},
    {sub_dirs, ["rel"]},
    {lib_dirs, ["src/"]},
    {erl_opts, [debug_info]},
    {eunit_opts, [verbose]},
    {plugins, [eunit_plugin]},
    {post_hooks, [{compile, "escript support/build_js.escript"}]}
],

C = lists:foldl(fun({K, V}, CfgAcc) ->
    lists:keystore(K, 1, CfgAcc, {K, V})
end, CONFIG, AddConfig).