From 26411b60f7e8ec562d6648cadf7a7159fa04c99c Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Fri, 12 May 2023 20:53:27 -0400 Subject: [PATCH] WIP --- .gitignore | 3 +++ mix.exs | 5 +++++ mix.lock | 1 + 3 files changed, 9 insertions(+) diff --git a/.gitignore b/.gitignore index 2515ddc..30fd239 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,6 @@ circuits_i2c-*.tar # Ignore C object files and executables /priv *.o + +# Ignore generated checksums file +/checksum.exs diff --git a/mix.exs b/mix.exs index d455ab0..fc97215 100644 --- a/mix.exs +++ b/mix.exs @@ -17,6 +17,8 @@ defmodule Circuits.I2C.MixProject do elixirc_paths: elixirc_paths(Mix.env()), make_targets: ["all"], make_clean: ["clean"], + make_precompiler: {:nif, CCPrecompiler}, + make_precompiler_url: "#{@source_url}/releases/download/v#{@version}/@{artefact_filename}", docs: docs(), aliases: [compile: [&set_make_env/1, "compile"], format: [&format_c/1, "format"]], start_permanent: Mix.env() == :prod, @@ -45,6 +47,7 @@ defmodule Circuits.I2C.MixProject do %{ files: [ "CHANGELOG.md", + "checksum.exs", "c_src/*.[ch]", "c_src/linux/*.h", "c_src/compat/linux/*.h", @@ -63,6 +66,8 @@ defmodule Circuits.I2C.MixProject do defp deps() do [ + {:cc_precompiler, "~> 0.1.0", runtime: false}, + {:ex_doc, "~> 0.22", only: :docs, runtime: false}, {:credo, "~> 1.6", only: :dev, runtime: false}, {:credo_binary_patterns, "~> 0.2.2", only: :dev, runtime: false}, diff --git a/mix.lock b/mix.lock index 46f6340..8772a67 100644 --- a/mix.lock +++ b/mix.lock @@ -1,5 +1,6 @@ %{ "bunt": {:hex, :bunt, "1.0.0", "081c2c665f086849e6d57900292b3a161727ab40431219529f13c4ddcf3e7a44", [:mix], [], "hexpm", "dc5f86aa08a5f6fa6b8096f0735c4e76d54ae5c9fa2c143e5a1fc7c1cd9bb6b5"}, + "cc_precompiler": {:hex, :cc_precompiler, "0.1.10", "47c9c08d8869cf09b41da36538f62bc1abd3e19e41701c2cea2675b53c704258", [:mix], [{:elixir_make, "~> 0.7", [hex: :elixir_make, repo: "hexpm", optional: false]}], "hexpm", "f6e046254e53cd6b41c6bacd70ae728011aa82b2742a80d6e2214855c6e06b22"}, "credo": {:hex, :credo, "1.7.11", "d3e805f7ddf6c9c854fd36f089649d7cf6ba74c42bc3795d587814e3c9847102", [:mix], [{:bunt, "~> 0.2.1 or ~> 1.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2 or ~> 1.0", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "56826b4306843253a66e47ae45e98e7d284ee1f95d53d1612bb483f88a8cf219"}, "credo_binary_patterns": {:hex, :credo_binary_patterns, "0.2.6", "cfcaca0bc5c6447b96c5a03eff175c28f86c486be8e95d55b360fb90c2dd18bd", [:mix], [{:credo, "~> 1.6", [hex: :credo, repo: "hexpm", optional: false]}], "hexpm", "d36a2b56ad72bdf3183ccc81d7e7821e78c97de7c127bc8dd99a5f05ca702187"}, "dialyxir": {:hex, :dialyxir, "1.4.5", "ca1571ac18e0f88d4ab245f0b60fa31ff1b12cbae2b11bd25d207f865e8ae78a", [:mix], [{:erlex, ">= 0.2.7", [hex: :erlex, repo: "hexpm", optional: false]}], "hexpm", "b0fb08bb8107c750db5c0b324fa2df5ceaa0f9307690ee3c1f6ba5b9eb5d35c3"},