title: nmake fails when attempting to compile argon2_elixir
body: <p>I'm trying to add <code>argon2_elixir</code> to my phoenix project, but I get this error when compiling:</p>
  
  <pre><code>mix compile
  ==&gt; argon2_elixir
  
  Microsoft (R) Program Maintenance Utility Version 14.00.24210.0
  Copyright (C) Microsoft Corporation.  All rights reserved.
  
  makefile(34) : fatal error U1000: syntax error : ')' missing in macro invocation
  Stop.
  could not compile dependency :argon2_elixir, "mix compile" failed. You can recompile this dependency with "mix deps.compile argon2_elixir", update it with "mix deps.update argon2_elixir" or clean it with "mix deps.clean argon2_elixir"
  ==&gt; chatter
  ** (Mix) Could not compile with "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\nmake.exe" (exit status: 2).
  One option is to install a recent version of
  [Visual C++ Build Tools](http://landinghub.visualstudio.com/visual-cpp-build-tools)
  either manually or using [Chocolatey](https://chocolatey.org/) -
  `choco install VisualCppBuildTools`.
  
  After installing Visual C++ Build Tools, look in the "Program Files (x86)"
  directory and search for "Microsoft Visual Studio". Note down the full path
  of the folder with the highest version number. Open the "run" command and
  type in the following command (make sure that the path and version number
  are correct):
  
      cmd /K "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
  
  This should open up a command prompt with the necessary environment variables
  set, and from which you will be able to run the "mix compile", "mix deps.compile",
  and "mix test" commands.
  </code></pre>
  
  <p>Before this error, it previously mentioned how <code>nmake.exe</code> was not found and to set that as the <code>MAKE</code> system variable. So I went into environmental variables and set the path to <code>C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\nmake.exe</code>.</p>
  
  <p>If I open cmd/powershell with the following command <code>cmd /K "C:\..." amd64</code> I have to <code>cd</code> back into the phoenix project. After running <code>mix compile</code>/<code>mix deps.compile argon2_elixir</code>, it gives me the same error.</p>
  
  <p>I notice that there's a <a href="https://github.com/riverrun/argon2_elixir/issues/20" rel="nofollow noreferrer">closed github issue</a> but it doesn't have a solution.</p>
  
  <p>Here's my mix.ex file</p>
  
  <pre class="lang-elixir prettyprint-override"><code>defmodule Chatter.MixProject do
    use Mix.Project
  
    def project do
      [
        app: :chatter,
        version: "0.1.0",
        elixir: "~&gt; 1.5",
        elixirc_paths: elixirc_paths(Mix.env()),
        compilers: [:phoenix, :gettext] ++ Mix.compilers(),
        start_permanent: Mix.env() == :prod,
        aliases: aliases(),
        deps: deps()
      ]
    end
  
    # Configuration for the OTP application.
    #
    # Type `mix help compile.app` for more information.
    def application do
      [
        mod: {Chatter.Application, []},
        extra_applications: [:logger, :runtime_tools, :phoenix, :phoenix_pubsub, :phoenix_html, :cowboy, :logger, :gettext,
        :phoenix_ecto, :postgrex, :comeonin ]
      ]
    end
  
    # Specifies which paths to compile per environment.
    defp elixirc_paths(:test), do: ["lib", "test/support"]
    defp elixirc_paths(_), do: ["lib"]
  
    # Specifies your project dependencies.
    #
    # Type `mix help deps` for examples and options.
    defp deps do
      [
        {:phoenix, "~&gt; 1.4.1"},
        {:phoenix_pubsub, "~&gt; 1.1"},
        {:phoenix_ecto, "~&gt; 4.0"},
        {:ecto_sql, "~&gt; 3.0"},
        {:postgrex, "&gt;= 0.0.0"},
        {:phoenix_html, "~&gt; 2.11"},
        {:phoenix_live_reload, "~&gt; 1.2", only: :dev},
        {:gettext, "~&gt; 0.11"},
        {:jason, "~&gt; 1.0"},
        {:plug_cowboy, "~&gt; 2.0"},
        {:comeonin, "~&gt; 5.1.1"},
        {:argon2_elixir, "~&gt; 2.0"}
      ]
    end
  
    # Aliases are shortcuts or tasks specific to the current project.
    # For example, to create, migrate and run the seeds file at once:
    #
    #     $ mix ecto.setup
    #
    # See the documentation for `Mix` for more info on aliases.
    defp aliases do
      [
        "ecto.setup": ["ecto.create", "ecto.migrate", "run priv/repo/seeds.exs"],
        "ecto.reset": ["ecto.drop", "ecto.setup"],
        test: ["ecto.create --quiet", "ecto.migrate", "test"]
      ]
    end
  end
  </code></pre>