summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Newson <rnewson@apache.org>2019-02-28 14:01:53 +0000
committerRobert Newson <rnewson@apache.org>2019-02-28 17:55:09 +0000
commit93399d966c27fa985f135b3b09efd6b31df78dcc (patch)
tree3aaa4e6c3243f39eacfc9264107e8a1b0101af54
parentc39852e18606a2234b4c6a57ce94bc87810c4870 (diff)
downloadcouchdb-optional-proper.tar.gz
Make PropEr an optional (test) dependencyoptional-proper
-rwxr-xr-xconfigure8
-rw-r--r--rebar.config.script22
2 files changed, 27 insertions, 3 deletions
diff --git a/configure b/configure
index b9a021d53..bcd761903 100755
--- a/configure
+++ b/configure
@@ -23,6 +23,7 @@ PACKAGE_AUTHOR_NAME="The Apache Software Foundation"
# TEST=0
WITH_CURL="false"
+WITH_PROPER="true"
WITH_FAUXTON=1
WITH_DOCS=1
ERLANG_MD5="false"
@@ -68,6 +69,12 @@ parse_opts() {
continue
;;
+ --without-proper)
+ WITH_PROPER="false"
+ shift
+ continue
+ ;;
+
--disable-fauxton)
WITH_FAUXTON=0
shift
@@ -203,6 +210,7 @@ EOF
cat > $rootdir/config.erl << EOF
{with_curl, $WITH_CURL}.
+{with_proper, $WITH_PROPER}.
{erlang_md5, $ERLANG_MD5}.
EOF
diff --git a/rebar.config.script b/rebar.config.script
index 5de05e06f..6968b06ac 100644
--- a/rebar.config.script
+++ b/rebar.config.script
@@ -56,6 +56,14 @@ os:putenv("COUCHDB_ROOT", COUCHDB_ROOT).
ConfigureEnv = filename:join(COUCHDB_ROOT, "config.erl").
os:putenv("COUCHDB_CONFIG", ConfigureEnv).
+CouchConfig = case filelib:is_file(ConfigureEnv) of
+ true ->
+ {ok, Result} = file:consult(ConfigureEnv),
+ Result;
+ false ->
+ []
+end.
+
os:putenv("COUCHDB_APPS_CONFIG_DIR", filename:join([COUCHDB_ROOT, "rel/apps"])).
SubDirs = [
@@ -90,8 +98,8 @@ DepDescs = [
{ets_lru, "ets-lru", {tag, "1.0.0"}},
{khash, "khash", {tag, "1.0.1"}},
{snappy, "snappy", {tag, "CouchDB-1.0.2"}},
-{ioq, "ioq", {tag, "2.0.0"}},
-{hqueue, "hqueue", {tag, "1.0.0"}},
+{ioq, "ioq", {branch, "optional-proper"}},
+{hqueue, "hqueue", {branch, "optional-proper"}},
{smoosh, "smoosh", {tag, "1.0.1"}},
{ken, "ken", {tag, "1.0.3"}},
@@ -109,6 +117,14 @@ DepDescs = [
{meck, "meck", {tag, "0.8.8"}}
],
+WithProper = lists:keyfind(with_proper, 1, CouchConfig) == {with_proper, true},
+
+OptionalDeps = case WithProper of
+ true ->
+ [{proper, {url, "https://github.com/proper-testing/proper"}, {tag, "v1.3"}}];
+ false ->
+ []
+end,
BaseUrl = "https://github.com/apache/",
@@ -133,7 +149,7 @@ end,
AddConfig = [
{require_otp_vsn, "19|20|21"},
{deps_dir, "src"},
- {deps, lists:map(MakeDep, DepDescs)},
+ {deps, lists:map(MakeDep, DepDescs ++ OptionalDeps)},
{sub_dirs, SubDirs},
{lib_dirs, ["src"]},
{erl_opts, [{i, "../"} | ErlOpts]},