Age | Commit message (Collapse) | Author |
|
One case was added, where a -compile attribute specified a list
that included a parse_transform. This affected alog, for example.
The COMPILE_FIRST variable is now filled from a digraph. This
allows us to keep track of the dependency tree properly, rather
than rely on luck. This affected erlando.
With both of these changes in, a large chunk of the rebar
autopatch code can be removed, the part that concerned the
auto detection of file dependencies.
On the other hand, we still need to honor the erl_first_files
configuration value, otherwise the parse_trans project fails
to build. While it would be possible to detect these dependencies
automatically too, it's probably too complex to bother, at least
for now.
|
|
This allows us to avoid autopatching when the Makefile of an
Erlang.mk project contains the word "rebar".
Had to update elvis and xref_runner to master for now because
of incompatibilities. The problem went unnoticed for a while
because they were autopatched.
|
|
We use the GNU Parallel program to create a mutex around
the Dialyzer calls.
|
|
This way if for some unknown reason $(APP_TO_CLEAN) isn't
defined, we don't delete the entire world.
|
|
Issues were introduced by f58af72831338efba4d5e20898cf92c0ed9f1c0f.
In addition some rework has been done:
* We don't care about src/, only about templates/
* Fix a misplaced closing paren (why was it working before?)
* Move most of the rules and defines inside the ifdef
|
|
|
|
Thanks to two users of the ninenines/esdl2 project,
a correct way to build NIFs on Windows has been found.
At the moment we require a specific compiler (MingW's
gcc). Maybe we can change this in the future and allow
Visual Studio and others.
Some small changes have been made to the documentation,
and the meaning of one configuration variable has changed
to not include the extension (which is decided automatically
by Erlang.mk; and configurable separately).
Enjoy!
|
|
|
|
Because running Dialyzer in parallel makes everything fail.
|
|
Now that we have Dialyzer tests, we run out of memory if we run
too many at the same time.
|
|
|
|
|
|
The restc project has dependencies that require to be logged in
to fetch them, and this breaks the packages test suite. The oauth2c
project depends on restc.
I sent a pull request at https://github.com/kivra/restclient/pull/8
The packages can be added back just fine after this pull request
get merged.
In the future it might be worth having a value marking packages
as broken so they are skipped by the test suite.
|
|
The URIs don't work for non-logged in users.
Choosing to remove for now because the project also changed
(there's a dhtcrawler2) so it might be worth adding this one
instead (although it probably won't be compatible with Erlang.mk
right now and seems to be more of a standalone repository).
|
|
This fixes issues when including ErlyDTL in a release.
|
|
|
|
|
|
|
|
|
|
|
|
lol
|
|
|
|
|
|
One bug was fixed: now Erlang.mk will properly pass relevant
ERLC_OPTS values to Dialyzer.
One bug still exists when using multi-application repositories:
dependencies are not detected automatically. We need list-deps
before this can work.
|
|
|
|
|
|
Broken upstream (a dependency doesn't exist) and still
waiting for a fix after more than a month.
|
|
|
|
They're not needed on master anymore.
|
|
|
|
... not the first.
dep_autopatch can be an expensive macro, in particular because it
executes Erlang. So if NO_AUTOPATCH is set, it's best to avoid calling
dep_autopatch as the result will be unused anyway.
While here, add a test for autopatched rebar-based dependencies.
|
|
|
|
People who prefer spaces instead of tabs are now covered.
|
|
|
|
We can write the file using the Makefile variables without going
through environment variables.
|
|
We can now use 'make -j 32' again. All tests pass. There might
be some issues left with the areas that are not fully tested
yet (some plugins).
A few changes in behavior:
* 'make app' will also do 'make deps' unless SKIP_DEPS is set.
You can use 'make app-build' instead to just build the application.
* 'make rel' will also do 'make app' (and therefore deps). There
are no alternative target to keep the old behavior at this time.
|
|
https://github.com/rabbitmq/erlang.mk
|
|
If the local build.config has changes compared to upstream's
master branch, and $(ERLANG_MK_COMMIT) also brings changes to this
file, copying the local file to the checkout before switching to
$(ERLANG_MK_COMMIT) caused git-checkout(1) to abort with:
error: Your local changes to the following files would be overwritten by checkout:
build.config
Please, commit your changes or stash them before you can switch branches.
Aborting
While here, fix `core-upgrade-custom-repo` test case: without switching
back the alternate erlang.mk repository to its master branch, the clone
always got the test-copyright branch by default, making the
ERLANG_MK_COMMIT check ineffective.
|
|
|
|
|
|
The `-n` flag is not standard and not portable. It is supported by many
Bourne shell to suppress the trailing newline character. But some old
shells do not support this and "-n" is printed.
This is the case for instance on some old versions of Mac OS X where
`/bin/sh` is Bash 3.2.
|
|
|
|
|
|
Main test Makefile expects "c_src" but for convenience I also
allow "c-src" and use that one as the prefix for the tests.
|
|
Pushing this now so I can figure out Windows.
|
|
|
|
|
|
Not tested yet, figured it could still help people.
|
|
Therefore, if neither $(dep_something) nor $(pkg_something_name) is
defined, $(dep_name) will return the name specified in the various
dependencies lists.
This fixes `core-app-pt-erlc-opts` and `core-deps-fetch-fail-unknown`
because now, the dependency is not "forgotten" anymore. Before,
the dependency directory was missing from $(ALL_DEPS_DIRS) because
$(dep_name) returned nothing.
|
|
Initially submitted by Daniel White.
|