aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2015-09-09Merge branch 'fix-no-erlang-app-support' of ↵Loïc Hoguin
https://github.com/rabbitmq/erlang.mk
2015-09-09Fix CI againLoïc Hoguin
2015-09-09Use the remote erlang.mk repository in testsLoïc Hoguin
Otherwise CI won't work.
2015-09-09erlc.mk: Fix "no Erlang application" supportJean-Sébastien Pédron
2015-09-09Merge branch 'no-hardcoded-make-in-testsuite' of ↵Loïc Hoguin
https://github.com/rabbitmq/erlang.mk
2015-09-09core.mk: Allow to take erlang.mk from an alternate Git repositoryJean-Sébastien Pédron
2015-09-09test/Makefile: Use $(MAKE) instead of hardcoding `make`Jean-Sébastien Pédron
2015-09-08Add a test for 'make help'Loïc Hoguin
2015-09-08Merge branch 'support-DragonFly-platform' of ↵Loïc Hoguin
https://github.com/rabbitmq/erlang.mk
2015-09-08Merge branch 'support-non-GNU-sed-in-tests' of ↵Loïc Hoguin
https://github.com/rabbitmq/erlang.mk
2015-09-08core.mk: Support DragonFlyBSD as a new platformJean-Sébastien Pédron
2015-09-08Quick README update cleaning and fixing thingsLoïc Hoguin
Incorrect things are corrected. Things covered in the guide are removed.
2015-09-08Add a chapter Why Erlang.mk?Loïc Hoguin
2015-09-07Add a Limitations chapter to the docsLoïc Hoguin
2015-09-07test/Makefile: Support non-GNU sedJean-Sébastien Pédron
This required two changes: 1. Modifying a file inplace using -i is not portable. GNU sed does not require an argument; the absence of it meaning it should change the file inplace. sed found on FreeBSD and probably other BSDs' require an argument, so inplace modification should be specified as: sed -i ''. Obviously, both -i are incompatible... The "solution" is to specify a backup suffix and ignore this backup file. 2. The [1addr]i command takes its argument on the next line according to the standard (though, it's not explicitely stated, the syntax example suggests that). GNU sed accepts to have its argument on the same line as the command, but not FreeBSD's sed.
2015-09-07Add an unrelated .hrl file in asn1 and mib testsLoïc Hoguin
Useful to confirm only the relevant header files get deleted on clean.
2015-09-07Add a test ensuring compilation errors are detectedLoïc Hoguin
Since all the legacy 'app' tests can be found in the new format, the 'app' target has been removed.
2015-09-06Add NO_MAKEDEP: don't rebuild .d file if it already existsLoïc Hoguin
This is useful only for projects that are stable and rarely need to rebuild it. Check the guide additions for more info.
2015-09-06Use epp:parse_file/3 for compat with older OTP versionsLoïc Hoguin
R16B03 in particular is missing epp:parse_file/2.
2015-09-06Use a different method to build the generate ruleLoïc Hoguin
This one seems to work both here and on CI.
2015-09-06Fix escaping of backslashLoïc Hoguin
Was working fine for me, not on CI.
2015-09-06Add tests for user generated Erlang source filesLoïc Hoguin
2015-09-05Add a test for .yrl files that include headersLoïc Hoguin
2015-09-05Add tests for yrl filesLoïc Hoguin
2015-09-05Add tests for a .xrl file that includes .hrl filesLoïc Hoguin
This also has a case for a file included from another header file, which is pretty cool! Thanks Gordon Guthrie for pointing me out to the file. :-)
2015-09-04Add test for xrl filesLoïc Hoguin
2015-09-04Simplify one check in mibs testLoïc Hoguin
2015-09-04Don't recompile everything when one mib file changesLoïc Hoguin
Fixes a bug detected with the test introduced in the previous commit.
2015-09-04Add tests for mibsLoïc Hoguin
2015-09-04Add test for recursive header dependency trackingLoïc Hoguin
2015-09-04Add test for header dependency trackingLoïc Hoguin
2015-09-03test: Add missing clean target dependencyLoïc Hoguin
2015-09-03Fix bug where intermediate files from .asn1 wouldn't get cleanedLoïc Hoguin
Dirty, dirty files!
2015-09-03Add a test for building .asn1 filesLoïc Hoguin
2015-09-03Add a test for ERLANG_MK_BUILD_DIRLoïc Hoguin
2015-09-03Improve upgrade testLoïc Hoguin
2015-09-03Add tests for upgrading Erlang.mkLoïc Hoguin
2015-09-03Add tests for the bootstrap pluginLoïc Hoguin
Adding tests in the order they are documented in the guide.
2015-09-03Add missing link to app.asciidoc in guide indexLoïc Hoguin
2015-09-03Generate `$(PROJECT).d` before calling `make app-build`Jean-Sébastien Pédron
This ensures all generated dependencies are prepared and the .d file is ready before the actual build is started.
2015-09-03Fix list of modules in the .app fileLoïc Hoguin
2015-09-03Improve the dependency trackingLoïc Hoguin
* Move the .app generation to the .app rule (don't remake it for no reasons when nothing needs to be done) * Rever the previous double colon commit; add touch $@ in depend * Move the creation of ebin/ directory in its own rule * Temporarily remove the ignore on missing depend file
2015-09-02Merge branch 'double-colon-for-source-files' of ↵Loïc Hoguin
https://github.com/rabbitmq/erlang.mk
2015-09-02Merge branch 'alt_build_config_name' of https://github.com/zerotao/erlang.mkLoïc Hoguin
2015-09-02Merge branch 'jacorro.update_elvis_0.2.5' of https://github.com/inaka/erlang.mkLoïc Hoguin
2015-09-02app.asciidoc: Document how to handle generated source filesJean-Sébastien Pédron
2015-09-02erlc.mk: Remove the target touching source filesJean-Sébastien Pédron
The touch(1) happens after `$(PROJECT).d` is generated. Therefore, with the next run of make, `$(PROJECT).d` is considered obsolete and recreated. Source files are touched again, and so on. This makes the whole project to be rebuilt with every run of make.
2015-09-02erlc.mk: Use double-colon targets for source files targetsJean-Sébastien Pédron
When files are generated, this avoids a warning because the target would be redefined.
2015-09-02Add dependency tracking (makedep)Loïc Hoguin
This is a very large change of a central part of Erlang.mk. I will admit that I am not quite confident on that one. If you do have issues following this change, please open a ticket and I will look at it immediately. At this point, it works for me, but I wouldn't be surprised to hear about a few minor issues. This commit introduces a dependency file $(PROJECT).d which contains Makefile rules between Erlang source files and headers, behaviors and parse_transforms. This allows us to rebuild only the files that are needed. The $(PROJECT).d is generated automatically when missing, and when any of the files change. It is possible to hook before and after this generation, by defining a $(PROJECT).d:: rule. This allows users to generate Erlang files which are then compiled by Erlang.mk automatically (and to track their dependencies, of course). Here goes nothing...
2015-09-02Replace core_find with native findLoïc Hoguin
Native find is much faster. As for future Windows work, this is no problem, as the retained solution involves using find.exe from GnuWin.