summaryrefslogtreecommitdiff
path: root/src/rebar_prv_compile.erl
Commit message (Collapse)AuthorAgeFilesLines
* Include hook for app compilationZachary Hueras2016-02-091-4/+7
|
* Add secondary hook for rebar_prv_compileZachary Hueras2016-02-021-7/+11
| | | | | erlc_compile, for before/after compiling .erls to .beams, but before .app.src to .app
* warn if the directories `eunit' or `ct' show up in `src_dirs'alisdair sullivan2016-01-051-2/+17
| | | | | | | | if these directories actually exist they'll be added to the path ahead of the release/standard distribution directories and they'll break eunit and/or ct execution fixes #950
* allow ct suites to be specified at the root of a project (or root of app)alisdair sullivan2015-12-201-0/+4
| | | | | | | | previously rebar3 dropped suites declared at the root of the project (via `--suite=whatever_SUITE' probably) and warned. this was because the compiler would recursively copy and compile everything in the directory indicated by the test suite. this changes the copy mechanism to only copy erl source files and directories that end with `_SUITE_data' into the `extras' dir in `_build'
* refactor `rebar_erlc_compiler`alisdair sullivan2015-10-261-12/+107
| | | | | | | | | | | | | | | | | | | * 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
* add bare compile provider, for starters for use by mixTristan Sloughter2015-09-141-1/+5
|
* support updating of per app info by hooksTristan Sloughter2015-09-061-8/+8
|
* more cleanupTristan Sloughter2015-08-311-9/+0
|
* update use of hooks and plugins with state in app_infoTristan Sloughter2015-08-311-13/+17
|
* remove state record from app_info recordTristan Sloughter2015-08-311-2/+2
|
* wip: move state into app_infoTristan Sloughter2015-08-311-8/+8
|
* Merge pull request #613 from tsloughter/plugins_fix_pathFred Hebert2015-07-161-1/+2
|\ | | | | keep plugins in path after compile provider run
| * keep plugins in path after compileprovider runTristan Sloughter2015-07-151-1/+2
| |
* | Revert "don't add `{extra_src_dirs, ["test"]}` to `test` profile"alisdair sullivan2015-07-121-1/+1
|/ | | | This reverts commit b06a6ecaddfc6fea16f3c24881fd41ac731ffa9e.
* ensure necessary directories exist to compile mibs filesTristan Sloughter2015-07-061-0/+13
|
* add config option artifactsTristan Sloughter2015-06-021-0/+13
|
* keep all_deps list in state created for building depsTristan Sloughter2015-05-301-4/+7
|
* Merge pull request #487 from ferd/fix-provider-barenessTristan Sloughter2015-05-301-1/+1
|\ | | | | fix bareness issues
| * fix bareness issuesFred Hebert2015-05-311-1/+1
| | | | | | | | | | | | - Crashes in providers lib when no providers in a namespace are bare - Making sure bareness matches semantics; i.e. a bare provider is visible, a non-bare provider is hidden.
* | store plugin providers in app_info's state for depsTristan Sloughter2015-05-281-1/+0
| |
* | fix for plugin installation and code pathsTristan Sloughter2015-05-271-0/+3
| |
* | move handling of undefined app state to functionTristan Sloughter2015-05-221-9/+1
|/
* run hooks when building pluginsTristan Sloughter2015-05-211-8/+7
|
* Merge pull request #443 from kovyl2404/singleapp-project-duplicated-hookFred Hebert2015-05-211-1/+1
|\ | | | | Run hooks for single application only once.
| * Properly reset hooks for single-app projectViacheslav V. Kovalev2015-05-211-1/+1
| |
* | don't add `{extra_src_dirs, ["test"]}` to `test` profilealisdair sullivan2015-05-201-1/+1
| | | | | | | | | | | | adding it results in ct test suites being compiled before they're properly copied so changes made to suites between runs are not reflected if a run fails before test dirs are copied
* | methods for retrieving `src_dirs` and `extra_src_dirs`alisdair sullivan2015-05-191-3/+1
|/ | | | | | note that now ALL `src_dirs` across included profiles are compiled. previously only the last included profile's `src_dirs` were used
* generalize the "test" special dir into an {extra_src_dirs, [...]} optionalisdair sullivan2015-05-161-2/+3
| | | | | | 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
* real bootstrappingTristan Sloughter2015-04-221-2/+1
|
* track and cleanup code paths for different contextsTristan Sloughter2015-04-211-2/+9
|
* run project wide pre-compile hooks after deps have compiledTristan Sloughter2015-04-201-2/+3
|
* don't duplicate hooks for top level appTristan Sloughter2015-04-191-7/+4
|
* update project_apps and state before running post hooksTristan Sloughter2015-04-171-2/+4
|
* include applications list in compile sortTristan Sloughter2015-04-151-2/+3
|
* Merge pull request #320 from tsloughter/dep_pluginsFred Hebert2015-04-051-9/+13
|\ | | | | install dep plugins & run provider hooks the same as shell hooks (Rereopen 316)
| * swich clean and compile to use macro provider in hook runTristan Sloughter2015-04-041-4/+4
| |
| * install dep plugins & run provider hooks the same as shell hooksTristan Sloughter2015-04-041-9/+13
| |
* | Provide descriptions for all tasksFred Hebert2015-04-041-1/+1
|/
* get rid of compile workersTristan Sloughter2015-03-121-34/+15
|
* set jobs for all compile jobsTristan Sloughter2015-03-121-9/+12
|
* compile source from the symlinked directories under `_build` toalisdair sullivan2015-03-081-5/+7
| | | | get correct compile paths included in module info
* update all examples in providers to use rebar3Tristan Sloughter2015-03-071-1/+1
|
* include test dir in symlinksTristan Sloughter2015-03-011-1/+1
|
* copy all files from ebin to build output ebin if existsTristan Sloughter2015-02-281-7/+8
|
* use relative path on non-windows and copy if link failsTristan Sloughter2015-02-281-2/+6
|
* include link to src in outdir for R15 cover/xrefTristan Sloughter2015-02-281-1/+2
|
* copy project apps to deps output dir for compilationTristan Sloughter2015-02-281-3/+27
|
* update project app list with new appinfo records after buildTristan Sloughter2015-02-191-21/+23
|
* clean up and better error messages when validating appsTristan Sloughter2015-01-241-2/+7
|
* overrides working except for transitive dep inheritance with lock fileTristan Sloughter2014-12-301-2/+7
|