summaryrefslogtreecommitdiff
path: root/rebar.config.script
blob: d7c620a83bb80bfa53e37c5204ce495a3c2898a5 (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
% 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 = [
    {couch_log, "couchdb-couch-log", {branch, "master"}, []},
    {config, "couchdb-config", {branch, "master"}, []},
    {chttpd, "couchdb-chttpd", {branch, "master"}, []},
    {couch, "couchdb-couch", {branch, "master"}, []},
    {couch_index, "couchdb-couch-index", {branch, "master"}, []},
    {couch_mrview, "couchdb-couch-mrview", {branch, "master"}, []},
    {couch_replicator, "couchdb-couch-replicator", {branch,  "master"}, []},
    {ddoc_cache, "couchdb-ddoc-cache", {branch, "master"}, []},
    {ets_lru, "couchdb-ets-lru", {branch, "master"}, []},
    {fabric, "couchdb-fabric", {branch,  "master"}, []},
    {ibrowse, "couchdb-ibrowse", {tag,  "master"}, []},
    {jiffy, "couchdb-jiffy", {branch, "master"}, []},
    {mem3, "couchdb-mem3", {branch, "master"}, []},
    {mochiweb, "couchdb-mochiweb", {branch, "master"}, []},
    {oauth, "couchdb-oauth", {branch, "master"}, []},
    {rexi, "couchdb-rexi", {branch, "master"}, []},
    {snappy, "couchdb-snappy", {branch, "1994-merge-rcouch"}, []},
    {fauxton, "couchdb-fauxton", {branch, "master"}, [raw]},
    {docs, "couchdb-documentation", {branch, "master"}, [raw]}
],

MakeDep = fun({AppName, RepoName, Version, Options}) ->
    Url = "https://git-wip-us.apache.org/repos/asf/" ++ 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]},
    {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).