Skip to content

Commit 1948b5e

Browse files
authored
Use precompiled dependency provider (#9)
* Use precompiled dependency provider * Fix order of mix compilers
1 parent 77b5690 commit 1948b5e

File tree

4 files changed

+19
-21
lines changed

4 files changed

+19
-21
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ The package exposes a server and a client module to interact with SRT streams.
1313
```elixir
1414
def deps do
1515
[
16-
{:ex_libsrt, "~> 0.1.2"}
16+
{:ex_libsrt, "~> 0.1.3"}
1717
]
1818
end
1919
```

bundlex.exs

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,32 +10,28 @@ defmodule ExLibSRTBundlexProject do
1010
defp natives() do
1111
[
1212
srt_nif: [
13-
sources: ["srt_nif.cpp", "server/server.cpp", "client/client.cpp", "common/srt_socket_stats.cpp"],
13+
sources: [
14+
"srt_nif.cpp",
15+
"server/server.cpp",
16+
"client/client.cpp",
17+
"common/srt_socket_stats.cpp"
18+
],
1419
deps: [unifex: :unifex],
15-
os_deps: [srt: [{:precompiled, get_srt_url()}, :pkg_config], openssl: :pkg_config],
20+
os_deps: [
21+
srt: [
22+
{:precompiled, Membrane.PrecompiledDependencyProvider.get_dependency_url(:srt, version: "1.5.4")},
23+
:pkg_config
24+
],
25+
openssl: :pkg_config
26+
],
1627
libs: ["pthread"],
1728
interface: :nif,
1829
preprocessor: Unifex,
1930
language: :cpp,
2031
compiler_flags: [
21-
"-std=c++17",
32+
"-std=c++17"
2233
]
2334
]
2435
]
2536
end
26-
27-
defp get_srt_url() do
28-
membrane_precompiled_url_prefix = "https://github.com/membraneframework-precompiled/precompiled_srt/releases/download/v1.5.4/srt"
29-
30-
case Bundlex.get_target() do
31-
%{os: "linux"} ->
32-
"#{membrane_precompiled_url_prefix}_linux.tar.gz"
33-
34-
%{architecture: "aarch64", os: "darwin" <> _rest_of_os_name} ->
35-
"#{membrane_precompiled_url_prefix}_macos_arm.tar.gz"
36-
37-
_other ->
38-
nil
39-
end
40-
end
4137
end

mix.exs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
defmodule ExLibSRT.MixProject do
22
use Mix.Project
33

4-
@version "0.1.2"
4+
@version "0.1.3"
55
@github_url "https://github.com/membraneframework/ex_libsrt"
66

77
def project do
@@ -11,7 +11,7 @@ defmodule ExLibSRT.MixProject do
1111
elixir: "~> 1.15",
1212
elixirc_paths: elixirc_paths(Mix.env()),
1313
start_permanent: Mix.env() == :prod,
14-
compilers: Mix.compilers() ++ [:unifex, :bundlex],
14+
compilers: [:unifex, :bundlex] ++ Mix.compilers(),
1515
deps: deps(),
1616
# hex
1717
description: "SRT bindings for Elixir",
@@ -59,6 +59,7 @@ defmodule ExLibSRT.MixProject do
5959
defp deps do
6060
[
6161
{:unifex, "~> 1.2.0"},
62+
{:membrane_precompiled_dependency_provider, "~> 0.2.0"},
6263
{:credo, "~> 1.4", only: :dev, runtime: false},
6364
{:dialyxir, "~> 1.1", only: :dev, runtime: false},
6465
{:ex_doc, "~> 0.31", only: :dev, runtime: false}

mix.lock

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
"makeup": {:hex, :makeup, "1.1.1", "fa0bc768698053b2b3869fa8a62616501ff9d11a562f3ce39580d60860c3a55e", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5dc62fbdd0de44de194898b6710692490be74baa02d9d108bc29f007783b0b48"},
1717
"makeup_elixir": {:hex, :makeup_elixir, "0.16.2", "627e84b8e8bf22e60a2579dad15067c755531fea049ae26ef1020cad58fe9578", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "41193978704763f6bbe6cc2758b84909e62984c7752b3784bd3c218bb341706b"},
1818
"makeup_erlang": {:hex, :makeup_erlang, "0.1.5", "e0ff5a7c708dda34311f7522a8758e23bfcd7d8d8068dc312b5eb41c6fd76eba", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "94d2e986428585a21516d7d7149781480013c56e30c6a233534bedf38867a59a"},
19+
"membrane_precompiled_dependency_provider": {:hex, :membrane_precompiled_dependency_provider, "0.2.0", "49437f70d677a3742548f00d42a8d880f6d88ff20c90963d1cde7f6f04d34fe1", [:mix], [{:bundlex, "~> 1.4", [hex: :bundlex, repo: "hexpm", optional: false]}], "hexpm", "bc96f4ed726a02f67cb0b33711020e11cc9ae90aa39a74168bdde82efb2ee76b"},
1920
"mime": {:hex, :mime, "2.0.7", "b8d739037be7cd402aee1ba0306edfdef982687ee7e9859bee6198c1e7e2f128", [:mix], [], "hexpm", "6171188e399ee16023ffc5b76ce445eb6d9672e2e241d2df6050f3c771e80ccd"},
2021
"mint": {:hex, :mint, "1.7.1", "113fdb2b2f3b59e47c7955971854641c61f378549d73e829e1768de90fc1abf1", [:mix], [{:castore, "~> 0.1.0 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}, {:hpax, "~> 0.1.1 or ~> 0.2.0 or ~> 1.0", [hex: :hpax, repo: "hexpm", optional: false]}], "hexpm", "fceba0a4d0f24301ddee3024ae116df1c3f4bb7a563a731f45fdfeb9d39a231b"},
2122
"nimble_options": {:hex, :nimble_options, "1.1.1", "e3a492d54d85fc3fd7c5baf411d9d2852922f66e69476317787a7b2bb000a61b", [:mix], [], "hexpm", "821b2470ca9442c4b6984882fe9bb0389371b8ddec4d45a9504f00a66f650b44"},

0 commit comments

Comments
 (0)