Age | Commit message (Collapse) | Author |
|
By default templates use tabs. Unfortunately there are misguided
heretics who prefer spaces. Bummer.
Two variables are introduced:
* SP=<number> can be set to use <number> spaces per indentation level.
* WS=<string> can be set to use <string> for each indentation level.
Most users will just want to use SP, for example:
make new t=gen_server n=my_server SP=4
Note that people who want tabs don't have to do anything; tabs
are still the default.
WS is reserved for advanced users. Normal Make rules apply: all
whitespaces are trimmed. To specify 4 spaces using WS, you can
do the following:
make new t=gen_server n=my_server WS='$(empty) $(empty)'
Ugly, right? So just use SP.
Finally, SP and WS can be put in your Makefile directly.
In fact, erlang.mk will automatically add SP to a newly
created project if it was used during creation. For example:
make -f erlang.mk bootstrap SP=2
So in time we should only need to make a note in the docs
at project creation time, as there is very little value
after that point.
|
|
|
|
This commit implements a core_find and core_ls function that
can be used to list files recursively or not.
A few other minute changes are included and a couple hacks
removed.
|
|
|
|
|
|
|
|
This removes the need for a .app.src file entirely.
The PROJECT_* variables and the OTP_DEPS variable
allow us to specify everything we need.
REL_DEPS and BUILD_DEPS will be added later on to
allow users to cleanly specify those without adding
them to the .app file.
|
|
|
|
Previously we only did shared libraries, now we allow executables.
Also improve greatly the handling of autopatched rebar projects
by relying once again on the rebar_utils module.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* This patch ensures building the NIF code under`c_src`
even on running `make tests`
* When `c_src/Makefile` exists:
* Split the Makefile invocation dependency into `app-c_src`
* Invoke `app-c_src` also in `test-build` as well as `app`
* When `c_src/Makefile` does not exist:
* Add `$(C_SRC_ENV) $(C_SRC_OUTPUT)` dependencies to `test-build`
|
|
Adds neo4j and shotgun back to the package index.
|
|
|
|
|
|
|
|
|
|
|
|
Should only be used during development. Stolen idea from
Tristan Sloughter who stole it from Ahmad Sherif.
This commit also introduces the 'erlang' function for
executing Erlang code written directly in the Makefile.
The rest of the project will eventually move to using it
as it's much cleaner than the previous solution.
|
|
Changed the method to echo multiline variables into something
that should work for everyone.
|
|
Rebased and moved ct.cover.spec into the test/ directory.
|
|
|
|
|
|
The ci plugin allows testing your Erlang project across
any number of Erlang versions.
|
|
Avoids some annoying warnings when Common Test runs.
I believe this is a regression.
|
|
Compiles, runs tests and runs all sorts of analysis like Dialyzer.
|
|
|
|
|
|
|
|
|
|
There is no value in a verbose mode for eunit by default because
eunit will print errors of failing tests regardless of what mode
is used. Verbose mode only seem to output what modules are tested
and what tests pass in those modules, in addition to errors.
Disabling verbose will make errors much easier to notice.
|
|
|
|
|
|
|
|
|
|
|
|
Also added a copyright line in the eunit plugin due to the
extensive work I have done there a few days ago.
|
|
|
|
Given that 'make all' is the default build, it seems surprising to
delete this without an explicit request for a 'distclean'.
|
|
|
|
|
|
The general idea is that erlang.mk now keeps track of what kind
of build it generated. A test build is valid for all subsequent
test target invocations. A normal build is only valid for itself
and releases.
This rework adds the ability to specify deps to eunit.
The EUNIT_DIR variable is gone in favor of a more global TEST_DIR.
The tests-ct target got renamed to ct and documented.
Many more minor changes were done during the course of testing
these changes.
|
|
|
|
|
|
|
|
Use "+A0 -noinput -boot start_clean" as start argument.
Use halt/{1,2} to shutdown the VM faster.
|