Age | Commit message (Collapse) | Author |
|
|
|
This should both be more solid and more secure.
|
|
The tests were waiting for the test group to finish before
they could continue with the next test group. Now "core"
and "all" targets directly depend on individual test cases,
allowing parallel Make to get to the next tests quicker and
removing 1/3rd of the total run time.
make check -j8 -k 5790,16s user 1207,08s system 627% cpu 18:35,49 total
make check -j8 -k 6250,13s user 1326,77s system 972% cpu 12:59,16 total
|
|
|
|
|
|
|
|
|
|
This is not a proper OTP application.
|
|
Hut has both a Makefile and erlang.mk but the default target
does not build the project. To fix a few packages we have a
special patch HUT_PATCH that will call the appropriate target.
|
|
|
|
|
|
We expect users to fetch these projects from hex.pm now
and the packages no longer worked.
|
|
source file is modified. Without a sleep the source file and the
target may get the same modification time, on some machines.
|
|
|
|
|
|
|
|
Using new wait_for_success/wait_for_failure functions that will
loop the ping commands up to 10 times then give up. This allows
us to remove the "sleep 1" and lets us handle intermittent
slowness at the same time.
|
|
And use this in the tests to fetch Rebar only once and then
clone from the local repository. This should speed up tests
a little.
|
|
Unless it's a symbolic link, it's built directly, FULL=1 is set
or the file ebin/dep_built in the dependency is removed.
See the documentation changes for more details.
This provides immense build speed gains, for example on a
RabbitMQ project it went from 10s to 1s for the 2nd+ builds.
|
|
Currently experimental. It'll enable lfe.mk when it encounters
the rebar3 plugin lfe-compile. Tested against some small library.
Note that it adds lfe as a build dependency with no version given
so the latest master will be fetched right now. This can be
overriden in the parent project.
|
|
|
|
[ci skip]
|
|
|
|
There are no more legacy tests. Enjoy!
|
|
|
|
This is a first step toward semi-automated version management.
Cowboy, Cowlib and Ranch still use tags for the time being.
We can make a better update to those when there's a lock
feature added.
|
|
|
|
Also fixes issues with multi application repositories,
and add support for running a specific group/case in a
given test suite.
|
|
Not only simpler but also faster, especially on Windows.
|
|
Also includes a fix for multi-application repositories.
|
|
This isn't an Erlang application.
|
|
After careful checking, these values are not set because of
an issue in Erlang.mk's autopatch feature. There's no point
in cheating in the test suite. We need to know about it.
|
|
|
|
This way if for some unknown reason $(APP_TO_CLEAN) isn't
defined, we don't delete the entire world.
|
|
They're not needed on master anymore.
|
|
|
|
|
|
|
|
Per request: https://github.com/ninenines/erlang.mk/issues/300
This commit also fixes issues with packages which have a different
name than the application name.
|
|
Better error reporting and can now build everything in parallel.
Failed builds are kept; others are deleted.
The following command builds everything and then gives a diff
of what got fixed/broken since last time ("> " is newly broken,
"< " is newly fixed).
make packages -j 32 -k; make summary
|
|
|
|
Fixes a small warning printed on OSX, and don't run a specific
test on FreeBSD (compiles a C library not compatible with FreeBSD).
|
|
Some systems do not have subsecond file modification detection
capabilities. This is the case in OSX because the HFS+ file
system has 1 second resolution. This is also the case in other
OSes with particular file systems or even shells. For example,
the "test" command in Bash does not support subsecond file times,
while the ZSH one and the /usr/bin/test on my machine does. On
those systems, with Bash, find -newer will work, but not test -nt.
Tests were updated to reflect this. The test Makefile runs a
series of commands to determine if subsecond resolution is available.
When it is not, a sleep command will be executed before relevant
operations in the tests.
Because the Bash shell is often the default shell for Make, and
because users of ZSH may want to avoid sleeping for no reasons,
a new variable was introduced: ZSH=1. When provided when running
tests, the shell will be switched to ZSH, and subsecond resolution
will work as expected. Tests have been fixed to work with ZSH as
well.
All this only applies to tests, Erlang.mk itself is so far not
affected by this issue.
|
|
|
|
|
|
Removes $(ERLANG_MK_TMP) directory on distclean.
* add distclean-tmp target
* add core-clean-tmp test
|
|
|
|
|
|
Sigh. That's what I get for rushing before food.
|
|
|