Skip to content

elixir-lang/elixir_make

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a9ad7eb · Jan 28, 2025
Feb 8, 2023
Jan 28, 2025
Jan 27, 2025
Feb 15, 2018
May 14, 2016
Nov 12, 2024
Jan 28, 2025
Aug 17, 2022
Nov 12, 2024
Nov 12, 2024

Repository files navigation

A Make compiler for Mix

Build Status Hex version

This project provides a Mix compiler that makes it straight-forward to use makefiles in your Mix projects.

Documentation

API documentation is available at https://hexdocs.pm/elixir_make

Usage

The package can be installed by adding elixir_make to your list of dependencies in mix.exs:

def deps do
  [{:elixir_make, "~> 0.4", runtime: false}]
end

Still in your mix.exs file, you will need to add :elixir_make to your list of compilers in project/0:

compilers: [:elixir_make] ++ Mix.compilers,

And that's it. The command above will invoke make for Unix, nmake for Windows and gmake for FreeBSD and OpenBSD. A "Makefile" file is expected at your project root for Unix systems and "Makefile.win" for Windows systems. Run mix help compile.elixir_make for more information and options.

Publishing a package to Hex.pm

When publishing a package to Hex.pm using elixir_make requires you to add any file (such as the Makefile and any source files) to the files option. See the hex docs

  defp package do
    [
      # ...
      files: [
        "lib", "LICENSE", "mix.exs", "README.md", # These are the default files
        "src/*.[ch]", "Makefile"], # You will need to add something like this.
      # ...
    ]
  end

License

Same as Elixir.