diff options
Diffstat (limited to 'mix.exs')
-rw-r--r-- | mix.exs | 20 |
1 files changed, 16 insertions, 4 deletions
@@ -35,7 +35,12 @@ defmodule Ejabberd.Mixfile do defp erlc_options do # Use our own includes + includes from all dependencies includes = ["include"] ++ deps_include(["fast_xml", "xmpp", "p1_utils"]) - [:debug_info, {:d, :ELIXIR_ENABLED}] ++ Enum.map(includes, fn(path) -> {:i, path} end) + [:debug_info, {:d, :ELIXIR_ENABLED}] ++ cond_options() ++ Enum.map(includes, fn(path) -> {:i, path} end) + end + + defp cond_options do + for {:true, option} <- [{config(:graphics), {:d, :GRAPHICS}}], do: + option end defp deps do @@ -75,7 +80,8 @@ defmodule Ejabberd.Mixfile do {config(:pam), {:epam, "~> 1.0"}}, {config(:tools), {:luerl, github: "rvirding/luerl", tag: "v0.2"}}, {config(:tools), {:meck, "~> 0.8.4"}}, - {config(:tools), {:moka, github: "processone/moka", tag: "1.0.5c"}}], do: + {config(:tools), {:moka, github: "processone/moka", tag: "1.0.5c"}}, + {config(:graphics), {:eimp, github: "processone/eimp", tag: "1.0.1"}}], do: dep end @@ -85,7 +91,8 @@ defmodule Ejabberd.Mixfile do {config(:pgsql), :p1_pgsql}, {config(:sqlite), :sqlite3}, {config(:zlib), :ezlib}, - {config(:iconv), :iconv}], do: + {config(:iconv), :iconv}, + {config(:graphics), :eimp}], do: app end @@ -132,7 +139,12 @@ defmodule Mix.Tasks.Compile.Asn1 do mappings = Enum.zip(source_paths, dest_paths) options = project[:asn1_options] || [] - Erlang.compile(manifest(), mappings, :asn1, :erl, opts[:force], fn + force = case opts[:force] do + :true -> [force: true] + _ -> [force: false] + end + + Erlang.compile(manifest(), mappings, :asn1, :erl, force, fn input, output -> options = options ++ [:noobj, outdir: Erlang.to_erl_file(Path.dirname(output))] case :asn1ct.compile(Erlang.to_erl_file(input), options) do |