Current section

Files

Jump to
turn mix.exs
Raw

mix.exs

if :os.type() == {:unix, :darwin} do
brew_prefix = fn pkg, default ->
case System.cmd("brew", ["--prefix", pkg], stderr_to_stdout: true) do
{path, 0} -> String.trim(path)
_ -> default
end
end
openssl = brew_prefix.("openssl@3", brew_prefix.("openssl", "/opt/homebrew/opt/openssl@3"))
libyaml = brew_prefix.("libyaml", "/opt/homebrew/opt/libyaml")
add_env = fn var, val ->
old = System.get_env(var) || ""
if not String.contains?(old, val) do
new_val = if old == "", do: val, else: val <> " " <> old
System.put_env(var, new_val)
end
end
add_path = fn var, val ->
old = System.get_env(var) || ""
if not String.contains?(old, val) do
new_val = if old == "", do: val, else: val <> ":" <> old
System.put_env(var, new_val)
end
end
add_env.("CFLAGS", "-I#{openssl}/include -I#{libyaml}/include")
add_env.("CPPFLAGS", "-I#{openssl}/include -I#{libyaml}/include")
add_env.("LDFLAGS", "-L#{openssl}/lib -L#{libyaml}/lib")
add_path.("PKG_CONFIG_PATH", "#{openssl}/lib/pkgconfig")
add_path.("PKG_CONFIG_PATH", "#{libyaml}/lib/pkgconfig")
end
defmodule TURN.Mixfile do
use Mix.Project
def project() do
[
app: :turn,
version: "0.7.23",
description: "ERP/1 STUN/TURN Server",
package: package(),
deps: deps()
]
end
def package do
[
files: ~w(config include src mix.exs rebar.config LICENSE NOTICE README.md),
licenses: ["Apache-2.0"],
maintainers: ["Namdak Tonpa"],
name: :turn,
links: %{"GitHub" => "https://github.com/erpuno/turn"}
]
end
def application() do
[ mod: {:eturnal_app, []},
extra_applications: [:public_key, :conf, :stun, :influx_udp]
]
end
def deps() do
[ {:ex_doc, "~> 0.11", only: :dev},
{:conf, "~> 0.2.6"},
{:influx_udp, "~> 1.1.1"},
{:stun, "~> 1.2.10"}
]
end
end