summaryrefslogtreecommitdiff
path: root/src/rebar_erlc_compiler.erl
Commit message (Collapse)AuthorAgeFilesLines
* restore debug calls to `rebar_erlc_compiler` and `rebar_prv_eunit`alisdair sullivan2015-10-261-7/+9
|
* refactor `rebar_erlc_compiler`alisdair sullivan2015-10-261-80/+178
| | | | | | | | | | | | | | | | | | | * modify compiler interface to work on either application objects or directories containing source files * compile all sources in `src_dirs` to the application `ebin` dir and all sources in `extra_src_dirs` to a directory mirroring it's position in the app's `_build` directory. for example, `apps/foo/more` would compile to `_build/default/lib/foo/more` for `extra_src_dirs` in the root of a project with multiple applications (so orphan directories that don't "belong" to an application) compile to `_build/default/extras/more` * copy directories specified in `extra_src_dirs` into the `_build` directory so tools like `ct` and `xref` that expect source to be in a particular location still work * clean compiled artifacts from all `extra_src_dirs` * alter `eunit`, `ct` and `cover` to work with the new directory structure * billions of new tests
* Revert "add an export to allow specifing arbitrary extra erl files to be ↵alisdair sullivan2015-10-261-7/+0
| | | | | | compiled" This reverts commit 9d82215296205d2d30c152c7d7c6fcb8e4a92443.
* Support proper paths in non-erl first filesFred Hebert2015-10-121-6/+6
| | | | | This passes the directory to the option to ensure it works with more than configs at the root of the project.
* add an export to allow specifing arbitrary extra erl files to be compiledalisdair sullivan2015-09-211-0/+7
| | | | to `rebar_erlc_compiler`
* fix dialyzer warningsTristan Sloughter2015-09-091-3/+3
|
* move opts functions to new module rebar_optsTristan Sloughter2015-09-011-8/+8
|
* update use of hooks and plugins with state in app_infoTristan Sloughter2015-08-311-8/+9
|
* build on already created AppInfo instead of having to do copyTristan Sloughter2015-08-311-52/+52
|
* wip: move state into app_infoTristan Sloughter2015-08-311-48/+49
|
* update erlcinfo on disk if source file removedTristan Sloughter2015-08-221-12/+26
|
* fix leaking ets tables when compilation failedpvmart2015-08-181-11/+14
|
* fix leaking ets tables caused by digraphspvmart2015-08-171-1/+4
|
* Fix some unknown functions/types dialyzer warningsJames Fish2015-08-091-1/+1
|
* ensure necessary directories exist to compile mibs filesTristan Sloughter2015-07-061-2/+5
|
* methods for retrieving `src_dirs` and `extra_src_dirs`alisdair sullivan2015-05-191-2/+1
| | | | | | note that now ALL `src_dirs` across included profiles are compiled. previously only the last included profile's `src_dirs` were used
* Merge pull request #439 from talentdeficit/extra_src_dirsTristan Sloughter2015-05-171-1/+2
|\ | | | | generalize the "test" special dir into an {extra_src_dirs, [...]} option
| * generalize the "test" special dir into an {extra_src_dirs, [...]} optionalisdair sullivan2015-05-161-1/+2
| | | | | | | | | | | | like `src_dirs`, `extra_src_dirs` are directories to be copied to the `_build` dir and compiled. unlike `src_dirs` they are not added to the .app specification
* | remove use of `code:load_abs/1` in favor of `beam_lib:chunks/2` toalisdair sullivan2015-05-161-8/+14
|/ | | | avoid repeated loading and unloading of modules
* enable parse transformations in rebar configTristan Sloughter2015-04-261-6/+27
|
* remove warning if header not found, could be in a macroTristan Sloughter2015-04-231-4/+0
|
* real bootstrappingTristan Sloughter2015-04-221-1/+2
|
* track and cleanup code paths for different contextsTristan Sloughter2015-04-211-2/+0
|
* fix erl_first_files to check entire path of fileTristan Sloughter2015-04-201-3/+4
|
* remove use of lists:droplast, it doesn't exist pre-17Tristan Sloughter2015-04-171-1/+1
|
* Warn on bad use of include_lib but try to find the header anywayTristan Sloughter2015-04-111-19/+33
|
* rm old beams, make erlcinfo graph per app isntad of global to projectTristan Sloughter2015-04-101-13/+33
|
* pass objectfile name to opts_changed instead of recalculatingTristan Sloughter2015-04-101-6/+4
|
* remove comment that doesn't apply to rebar3Tristan Sloughter2015-04-101-1/+0
|
* properly compare list of opts and not against undefinedTristan Sloughter2015-04-101-1/+1
|
* remove unneeded string:tokens for target_baseTristan Sloughter2015-04-091-2/+1
|
* fix process attr for include_lib that is just a filenameTristan Sloughter2015-04-081-22/+22
|
* breakout needs compile check from compile_xrl_yrlTristan Sloughter2015-04-081-1/+4
|
* merge rebar2's Refactor logic and optimizations in ↵Tristan Sloughter2015-04-071-274/+161
| | | | rebar_erlc_compiler:doterl_compile/4 #467
* compile source from the symlinked directories under `_build` toalisdair sullivan2015-03-081-3/+7
| | | | get correct compile paths included in module info
* switch from loading modules to read compile info to using `beam_lib`alisdair sullivan2015-03-051-16/+13
| | | | fixes #216 and #220
* change from post-purging modules after checking their module info toalisdair sullivan2015-03-031-4/+2
| | | | pre-purging before checking to facilitate long do chains
* copy project apps to deps output dir for compilationTristan Sloughter2015-02-281-14/+12
|
* don't unescessarily recompile yrl/xrl filesalisdair sullivan2015-02-221-4/+10
| | | | fixes #175
* consolidate app validation and exist checksTristan Sloughter2015-02-221-1/+1
|
* follow xdg standard. fixes #122Tristan Sloughter2015-02-191-3/+3
|
* purge mods loaded during check to see if they need to be recompiledalisdair sullivan2015-02-171-2/+4
| | | | during compile task before running subsequent tasks
* Merge pull request #157 from talentdeficit/real_needs_recompileTristan Sloughter2015-02-171-9/+26
|\ | | | | check already compiled modules compile arguments against current compile arguments
| * check already compiled modules compile arguments against current compilealisdair sullivan2015-02-161-9/+26
| | | | | | | | arguments to ensure compile results as as intended
* | replace package management with hex.pmTristan Sloughter2015-02-171-8/+2
|/
* Fix #140 and preserve erl_first_files orderMartin Karlsson2015-02-131-5/+20
| | | | | | Match erl_first_files properly against all files needing compilation and make sure the order of erl_first_files as specified in rebar.config is preserved (rebar/rebar#445)
* point compiler to the right config value for which files need to bealisdair sullivan2015-01-011-1/+1
| | | | compiled first
* remove no longer relevant test machinery in rebar_erlc_compileralisdair sullivan2014-12-241-153/+0
|
* move dir functions from utils to new module rebar_dirTristan Sloughter2014-12-011-5/+5
|
* replace rlx_depsolver use with new rebar_digraphTristan Sloughter2014-11-221-2/+69
|