-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmix.exs
55 lines (48 loc) · 1.34 KB
/
mix.exs
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
defmodule Piper.Mixfile do
use Mix.Project
def project do
[app: :piper,
version: "1.1.1",
elixir: "~> 1.3.1",
erlc_options: [:debug_info] ++ warnings_as_errors(:erl),
leex_options: warnings_as_errors(:erl),
elixirc_options: warnings_as_errors(:ex),
elixirc_paths: elixirc_paths(Mix.env),
start_permanent: Mix.env == :prod,
test_coverage: [tool: ExCoveralls],
preferred_cli_env: ["coveralls": :test,
"coveralls.html": :test,
"coveralls.travis": :test],
deps: deps] ++ compile_protocols(Mix.env)
end
def application do
[applications: [:logger]]
end
defp elixirc_paths(:test), do: ["lib", "test/support"]
defp elixirc_paths(_), do: ["lib"]
defp deps do
[{:poison, "~> 2.0"},
{:uuid, "~> 1.1.5"},
{:excoveralls, "~> 0.6", only: :test}]
end
defp compile_protocols(:prod), do: [build_embedded: true]
defp compile_protocols(_), do: []
defp warnings_as_errors(type) do
case System.get_env("ALLOW_WARNINGS") do
nil ->
case type do
:ex ->
[{:warnings_as_errors, true}]
:erl ->
[:warnings_as_errors]
end
_ ->
case type do
:ex ->
[{:warnings_as_errors, false}]
:erl ->
[]
end
end
end
end