Chris Bernard
25538e071f
Fixed 3 bugs in rebar_eunit. Added EUnit tests to capture them.
...
1. When running the eunit command with the convention of putting
tests in "*_tests" modules, eunit would run those tests twice. This
is because: 1) eunit:test/1 will naturally look for foo's tests both
in foo, and in foo_tests, and 2) eunit:test/1 was being folded over
all project modules. The fix is to filter "*_tests" modules from the
list passed to eunit:test/1.
2. When running the eunit command with cover enabled and tests in a
'test' directory, cover would error because it couldn't find the
source code for those tests. This is because cover:analyze/3 will
only find module source in "." and "../src". This is hard-coded in
cover :-(. Since cover shouldn't be calculating code coverage on test
code anyway, the fix is to not fold cover:analyze/3 over
non-production code.
3. When running the eunit command with cover enabled and a test suite
defined, cover would only attempt to calculate coverage on the the
test suite itself. This was because only the suite was passed to
cover:analyze/3. The fix is to fold cover:analyze/3 over all the
production code, filtering out the suite module if it is defined.
2010-03-04 20:53:12 -05:00
Vagabond
50832a1a14
Don't detect the source file as an include of itself
2010-03-02 18:04:08 -05:00
Vagabond
a3f8489340
Move the .erl sorting to the right place
2010-03-02 17:58:05 -05:00
Vagabond
c4d3f0ea65
Fix dependancy checking for headers by ensuring "include" is always in the eep IncludePath
2010-03-02 17:34:12 -05:00
Vagabond
4ce01860e9
Compile parse transform and custom behaviours first
2010-03-02 17:13:58 -05:00
Tuncer Ayaz
23781ae460
Fix unused var warning
2010-02-25 19:57:02 +01:00
theiw
8a3ad89f7c
Refactor eunit and cover
2010-02-19 22:37:48 +00:00
Dave Smith
872076be3f
Adding cleaner module to permit users to specify their own set of files to delete
2010-02-21 05:39:12 -07:00
Dave Smith
28d3b75641
Fix bug in templater where escript was not found in subdirs were specified in rebar.config; minor formatting cleanups
2010-02-20 20:15:07 -07:00
Dave Smith
496851cefd
Add support for installing to a target directory as alternative to Erlang base dir
2010-02-20 13:42:44 -07:00
Tuncer Ayaz
00c855d030
Update comment for filelib:ensure_dir/1 wrapper.
...
The wrapper can now be removed as I've fixed the problem in R13B04.
2010-02-17 23:38:06 +01:00
Dave Smith
b0dfd233ae
Make sure to add ebin/ to current path when compiling doterl files; found by @sj_mackenzie
2010-02-16 15:16:19 -07:00
Dave Smith
6714d47efb
Deal properly with env vars that have multiple = in the value
2010-02-16 11:00:14 -07:00
Dave Smith
1f6d861aba
Overhaul env expansion so that rebar fully expands env refs prior to invoking the shell script. Also now using DRV_* env vars for compilation/linking of files found in c_src; this frees up "normal" CFLAGS/LDFLAGS for usage in sub build scripts.
2010-02-16 07:05:29 -07:00
Dave Smith
7bfa2405db
Merging w/ http://bitbucket.org/bryan/rebar
2010-02-14 09:24:47 -07:00
Bryan Fink
f6feac493d
provide separate 'file' and 'template' directives, instead of one 'file' directive with a boolean Render flag
2010-02-13 14:14:29 -05:00
Dave Smith
0f7b47ce7b
Merging w/ mainline
2010-02-13 10:18:18 -07:00
Dave Smith
d486dff6e8
Merging with OJ's branch
2010-02-13 10:17:44 -07:00
Dave Smith
96c1ceba60
Break out arch string function; update ERLANG_TARGET to include bitness of the Erlang target
2010-02-12 15:05:32 -07:00
Dave Smith
a0732e9e78
Make sure to cover all edge cases when parsing module names
2010-02-12 11:57:50 -07:00
Dave Smith
1def586e39
Merging w/ mainline
2010-02-12 11:33:32 -07:00
Dave Smith
22d21f63d0
Append wordsize to the architecture string
2010-02-10 14:05:52 -07:00
Ryan Tilder
f502bb09dd
I'm a moron. Make it a string.
2010-02-10 11:23:53 -08:00
Dave Smith
268405d0dc
Adding new vars for scripts to determine architecture (32/64 bit) and target platform of Erlang VM; courtesy of rtilder
2010-02-10 11:15:55 -07:00
theiw
788bd3df72
Provide package support for eunit; build_plt now includes listed applications; begin including -spec annotations
2010-02-05 17:34:38 +00:00
Bryan Fink
60629e8516
add chmod template directive for changing file file permission
...
usage: {chmod, Mode, File}
where: Mode is an integer, as specified by the 'mode' field of the file_info record
(see docs for file:write_file_info/2)
2010-02-04 17:45:05 -05:00
Bryan Fink
4c2dade0f4
add Render flag to 'file' template directive
...
{file,In,Out,true} = render with mustache
{file,In,Out,false} = do not render with mustache (leave as-is)
old-form {file,In,Out} is equivalent to {file,In,Out,true}
2010-02-04 15:52:44 -05:00
Bryan Fink
4e01b32d5d
look for templates in local directory as well
2010-02-04 14:30:10 -05:00
OJ Reeves
71c974e341
Added support for the speficiation of test suite names
...
eg. rebar eunit -- runs all tests in all modules
rebar eunit suite=foo -- only runs tests in foo.erl/foo_tests.erl
Added an entry to .hgignore to avoid .swp files (created by VIM).
2010-02-03 22:27:09 +10:00
Tuncer Ayaz
2734f2bcc2
Do not print dynamic escript name in usage info
2010-02-02 12:56:16 +01:00
Dave Smith
bd510dea20
Tweaking order of defaults so that -shared is default across platforms unless explicitly overridden
2010-02-01 10:56:47 -07:00
Dave Smith
f333bc2a92
Removing useless debug message and extraneous newline
2010-02-01 09:29:13 -07:00
Dave Smith
b9e78d6722
Add support for passing addt'l list of sources to erlc_compiler
2010-02-01 08:37:52 -07:00
Dave Smith
47e70f308a
Add support for forcibly overwriting output files; courtesy of OJ Reeves
2010-01-30 09:56:06 -07:00
Dave Smith
12420ee43c
Fix typo; courtesy of OJ Reeves
2010-01-30 09:48:28 -07:00
Dave Smith
7bcbe026d4
Merging support from asonge for custom_tags_dir
2010-01-29 22:02:47 -07:00
Dave Smith
1582f2e243
Tweak support for controlling so_name
2010-01-26 13:50:17 -07:00
Alex Songe
73ee6e442b
Added support for custom_tags_dir compile option to rebar_erlydtl_compiler
2010-01-16 13:58:34 -06:00
Dave Smith
96e9a2a521
Look for dirs named erts-vsn when setting up spec for copying files
2010-01-14 07:46:00 -05:00
Dave Smith
66fa90ce6c
Try previous commit again; make sure include/ directory exists
2010-01-14 07:08:12 -05:00
Dave Smith
dce1673fdb
Make sure include/ directory exists
2010-01-14 07:02:14 -05:00
Dave Smith
407486bc62
Merging mainline
2010-01-09 05:35:04 -07:00
OJ Reeves
49aef70f9b
[mq]: eunit-fix
2010-01-09 22:19:55 +10:00
Tuncer Ayaz
e9ddd08e2a
Simplified usage info printing with getopt v0.2
2010-01-09 00:36:29 +01:00
Tuncer Ayaz
4ac1f3efe9
Fixed issue 1 "priv/mibs/ is not automatically created"
2010-01-08 23:06:29 +01:00
Dave Smith
ec4e805898
Adding sketch of functionality for creating a reltool node from template
2010-01-08 12:16:57 -07:00
Dave Smith
8c4f35a294
Basic implementation of templater is complete
2010-01-08 10:54:43 -07:00
Dave Smith
2d9af6cf48
Sketching out templating system
2010-01-07 22:18:55 -07:00
Dave Smith
3ed1b99438
Adding mustache.erl from http://github.com/mojombo/mustache.erl
2010-01-07 21:22:19 -07:00
iw
39907904e8
Include support for dialyzer
2010-01-07 15:10:20 +00:00
Dave Smith
47a430c3b8
A bit of consolidation of version checking for scm clients; adding support for git
2010-01-07 07:46:06 -07:00
iw
864d4b74d6
Ensure we have the correct hg version
2010-01-06 22:22:05 +00:00
Tuncer Ayaz
fb0cee2afb
Implemented option to specify number of concurrent workers a command may use
2010-01-06 17:31:14 +01:00
Kevin Smith
c9d175a30d
Merging
2010-01-05 10:41:15 -05:00
Kevin Smith
bfcb54cbc9
Added so_name entry to rebar.config so linked-in drivers can specify custom .so names
2010-01-05 10:39:08 -05:00
Dave Smith
93111bfcf7
Merging w/ bitbucket
2010-01-04 09:53:50 -07:00
iw
73d2073ed8
Preserve non-empty folders when performing clean
2010-01-04 16:39:52 +00:00
Bryan Fink
abd535d081
rework elrydtl_compiler to do dependency checking correctly in refactored rebar
2010-01-04 11:24:28 -05:00
Dave Smith
21f60bff74
Take 323 on cleaning package dirs from ebin
2010-01-04 06:17:35 -07:00
Dave Smith
51f6906da9
Make sure to create dir structure for output bams
2010-01-04 05:47:45 -07:00
Dave Smith
42647f4c22
Tweak regex to properly match extension and not just .erl anywhere in filename
2010-01-04 05:40:39 -07:00
Dave Smith
fa2a58261a
Another round of refactoring to yield better flexiblity in the base_compiler system
2010-01-03 22:53:04 -07:00
Dave Smith
9c15d63191
Refactor of compilation logic to enable support for package modules and provide better modularity/reusability for other systems
2010-01-02 14:17:59 -07:00
Dave Smith
18e1b37e6f
Break out command line argument parsing to a dedicated routine
2010-01-01 06:22:25 -07:00
Dave Smith
48c2c169ab
Merging w/ bitbucket
2009-12-31 19:31:00 -07:00
Dave Smith
9f83329a3c
Adding basic distclean functionality to deps
2009-12-31 19:29:48 -07:00
Dave Smith
02fa5f6f42
Make sure to reset CWD after processing subdirs; also filter out missing dirs when restoring code path
2009-12-31 19:29:33 -07:00
Dave Smith
a46be8cec1
Use new rebar_config API to avoid having to actually delete/change the config any
2009-12-31 19:28:53 -07:00
Dave Smith
bd090f0db2
Refactor of rebar_config to facilitate identification of "local" config settings
2009-12-31 19:28:20 -07:00
Tuncer Ayaz
0817dec7ca
Rolled back getopt to restore custom variables
2010-01-01 00:08:00 +01:00
Tuncer Ayaz
9a8015f2d7
Added vi modeline/emacs local variables to file headers
2009-12-31 19:42:53 +01:00
Tuncer Ayaz
940f9c232b
Enhanced option parsing with new getopt and made rebar more user friendly
2009-12-31 18:00:02 +01:00
Tuncer Ayaz
8c85021c1e
Deleted trailing whitespace
2009-12-30 13:13:39 +01:00
Dave Smith
5cd5870f32
Got basic retrieval of deps from hg sorta working; minor refactoring of rebar_utils:sh interface
2009-12-30 20:03:27 -07:00
Dave Smith
1fe4d13e25
First basic pass at deps
2009-12-29 22:05:32 -07:00
Tuncer Ayaz
b1b29e0858
Implemented getopt option support
2009-12-29 20:09:28 +01:00
Dave Smith
fe03778678
Silence warnings, courtesy of Tuncer Ayaz
2009-12-28 07:24:15 -07:00
Dave Smith
c99e6da250
Adding placeholder for dep mgmt
2009-12-25 23:19:47 -07:00
Dave Smith
2f64f0e6b2
Refactoring core logic in preparation for dependency mgmt; breaking out sub_dir determination into dedicated module
2009-12-25 23:19:09 -07:00
Bryan Fink
299f45623f
rebar can now compile ErlyDTL files (if erlydtl is installed)
...
defaults to compiling from templates/*.dtl to ebin/*_dtl.beam
see top of rebar_erlydtl_compiler for configuration options
2009-12-22 09:57:42 -05:00
Dave Smith
b14eaa0dc6
Adding rudimentary escript generator
2009-12-22 06:45:01 -07:00
Bryan Fink
badcc228bd
add hrl-triggered recompiling to 'eunit' build as well
2009-12-21 12:48:36 -05:00
Bryan Fink
1fa659b5b3
recompile files if their "includes" have changed
...
added parameter to do_compile for passing a function that can extra the list of includes from a file
2009-12-21 12:15:21 -05:00
Dave Smith
a0b665360a
Adding some addt'l logging to make it easier to diagnose probs
2009-12-20 20:43:45 -07:00
Dave Smith
d051534b97
Minor formatting fix
2009-12-20 06:20:05 -07:00
Tim Dysinger
5fe24a8c97
Added optional LFE compilation abilities to rebar
2009-12-18 19:00:15 -10:00
Dave Smith
2f1d415a70
Revert change to linking order arguments
2009-12-18 15:08:36 -07:00
Dave Smith
f02c48a909
Adding simple checks for necessary version of ERTS + Reltool
2009-12-17 07:26:54 -07:00
Dave Smith
ee0c6ad086
Reorder arguments to CC for linking and fix needs_link to function properly
2009-12-16 10:27:14 -05:00
Dave Smith
4d3c7e60d6
Make sure to append overlay files to end of spec; otherwise might be overwritten by canonical install
2009-12-16 10:26:50 -05:00
Dave Smith
c3f0f2565b
Adding support for overlays
2009-12-14 19:30:51 -05:00
Dave Smith
be754bb6ef
Make sure to fail if run_modules generates ANY error. Thanks, Rusty. :)
2009-12-14 17:11:25 -05:00
Dave Smith
537eaa3bba
Run eunit in .eunit dir to ensure any created/temporary files are created there
2009-12-14 09:59:00 -05:00
Dave Smith
e86f82f10d
Fixing warning
2009-12-14 09:29:24 -05:00
Dave Smith
417ff3ad76
Adding fail_on_warning support
2009-12-14 09:27:47 -05:00
Dave Smith
d6600ab506
Fixing number of warnings and buglets
2009-12-14 08:58:22 -05:00
Dave Smith
2b7971cc6b
Merging from bitbucket
2009-12-12 07:45:24 -07:00
Dave Smith
5618198eeb
Merging mainline
2009-12-12 07:43:12 -07:00
Dave Smith
3990f0a076
Refactor of core logic to provide better control over recursion and code path mgmt
2009-12-12 07:34:29 -07:00
Dave Smith
3685c4fd4e
Adding rudimentary support for creating empty dirs in reltool target
2009-12-11 07:20:59 -07:00