Age | Commit message (Collapse) | Author |
|
Thanks Ilya Khaprov for the fix.
|
|
On FreeBSD, libsodium's `sodium.h` header is installed in
`/usr/local/local`. The Makefile already adds
`/usr/local/include/sodium` to the compiler's `-I` search path, but it
doesn't cover the FreeBSD case.
This patch adds `-I /usr/local/include` to the CFLAGS on the make(1)
command line to let libsalty2's Makefile pick it up. This fixes the
build on FreeBSD.
|
|
Its Makefile called sed(1) in a way that was only compatible with GNU
sed. As a consequence, the build failed with BSD sed.
Now, the test case fetches dependencies and patches `reloader`'s
Makefile to use a sed(1) script compatible with both implementations of
sed(1).
|
|
This is the standard name and is available everywhere, unlike "netcat".
|
|
If `V=...` is set on the command line to increase verbosity while
debugging, the first grep(1) command will also catch the debug output of
make(1) which contains the executed command line and thus mentions
"hello".
The fixed grep(1) command line explicitly grep for a line starting with
"hello".
|
|
|
|
... instead of https://github.com/hypernumbers/hypernumbers which is no
longer available apparently.
|
|
parse_transform output
At least for me with Erlang/OTP 28, parse_transform messages end up on
stderr.
Let's always redirect stderr to stdout. It will work for anyone with any
versions of Erlang.
|
|
|
|
If the user running the tests has set `init.defaultBranch` to something
else in their `.gitconfig`, the tests won't have the expected branch
name.
This patch explicitly sets the branch name to make sure the tests are
not affected by a user setting.
|
|
By default Erlang projects should not have Elixir enabled.
|
|
|
|
This commit also includes a way to completely disable Eunit
as that is generally desirable for Elixir-only projects.
|
|
This allows overriding the default which is to use the same
explicit version as the dep_* line, and instead specify
ranges of versions.
|
|
|
|
While using "-mode minimal" removes too much that we need
(such as inet_db), we can safely disable the distribution
by default and limit the number of processes and sockets
to a maximum of 1024.
|
|
|
|
The scrape file was updated to only seek "rebar3"
tagged packages. There are too many Elixir-only
packages tagged as "make".
|
|
|
|
Templates now no longer use Make variables for substitution
but instead replace strings with their equivalent:
template_name: Corresponds to n=template_name
project_name: Corresponds to $(PROJECT) or in=project_name
This allows defining templates outside of Makefiles. For
example an external plugin could define their templates
in templates/my_template.erl and then have the following
in the included Makefile:
tpl_my_template = $(file < $(THIS)/templates/my_template.erl)
By default the created file will be in src/template_name.erl.
This can be overriden with the tplp_* variable:
tplp_my_template = src/model/my_template.erl
Substitution is applied both to the template contents and
to its path.
In addition, attempting to overwrite an existing file when
creating a template will result in failure.
|
|
This method dates back from the beginnings of Erlang.mk
and should not have been used for around a decade by now.
Adding "git" to the offending dep lines is enough to upgrade.
|
|
This should both be more solid and more secure.
|
|
|
|
|
|
|
|
Erlang.mk will no longer feature packages out of the box,
except for the applications that we implement plugins for
(such as erlydtl, proper or relx) and the projects I work
on that are also used to test Erlang.mk (cowboy and friends).
This is a breaking change. In most cases the fix is to add
a full dep_* line for the dependencies that were used as
packages before.
|
|
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
|
|
We now provide the version as a tagged tuple indicating
whether this is a branch, tag or ref. This should help
rebar automatically upgrade dependencies, and remove
an annoying warning when rebar is used.
In order to detect the type of version the dependencies
must be available, therefore the rebar.config target now
depends on the deps target.
To test this the Cowboy package version had to be changed
from 1.0.4 to master. This is a breaking change, but I do
not expect too many people to still use 1.0.4.
|
|
Instead of calling `find` we use $(wildcard ...) and some
logic on top to find all the files we are looking for.
This is more efficient and greatly helps reduce re-build
times when there's little to be done, particularly when
many dependencies are involved.
|
|
It's become hard to find a host that provides Subversion.
|
|
This way we can just configure it to a local folder
without having to use $(CURDIR).
|
|
|
|
Was broken in the move to Relx v4.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Also remove usage of grep for ignoring files since find
can do this directly.
|
|
It was removed accidentally when switching to Relx v4.
|
|
|
|
Loïc: Added more info to guide.
|
|
|
|
|
|
This is still a bit hackish but it appears that some projects
have wrong erl_first_files entries (module exists but not at
the location configured) and so we have to do a bit of
manipulation before we can find the module. We also need
to be cautious about .yrl/.xrl because their corresponding
.erl files may not exist in the repository before compilation
yet can be listed in erl_first_files.
|
|
|
|
This is not a proper OTP application.
|