This repository has been archived by the owner on Jun 6, 2021. It is now read-only.
ExMake 0.1.0
Pre-release
Pre-release
This is another alpha-quality release, adding various bug fixes, enhancements, and optimizations.
Fixes:
- Error out if a phony rule depends on a file that doesn't exist and cannot be built.
- Provide better stack traces in debug mode when an exception is caught in a job runner.
- Fix a pattern match failure that could happen in the Erlang library if a rule had header dependencies.
- Fix the "recipe changed directory" error to actually say what it means.
- Ensure library paths are expanded into absolute paths before adding them.
- Correctly invalidate the environment table cache if a script file changes.
Enhancements:
- Wrap the DAG creation process in a timing pass.
- Add a module for compiling Elixir source code.
- Allow specifying output directory in Erlang rules.
- Add a
manifest
macro to specify files to be considered sources of the build cache. - Lift the arbitrary restriction that
recurse
paths could not contain path separators. - Change into the directory the file given to
--file
is located in, and lift a similar separator restriction.
Optimizations:
- Add module caching by using a manifest file in the cache directory.
- If
--clear
is passed, immediately assume that the cache is stale.
Built with Elixir 0.10.1.