aboutsummaryrefslogtreecommitdiffstats
path: root/core
AgeCommit message (Collapse)Author
2015-11-17V=2 causes `set -x` to be set on forked shellsJean-Sébastien Pédron
2015-10-22Return argument as a last resort in $(dep_name)Jean-Sébastien Pédron
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.
2015-10-22Add git-submodule fetch methodLoïc Hoguin
Initially submitted by Daniel White.
2015-10-22Use relative path to erlang.mk file in autopatched depsLoïc Hoguin
2015-10-20Rename couch package into opencouchLoïc Hoguin
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.
2015-10-19Force rebuilds on Makefile/.app.src changesLoïc Hoguin
Everything will be rebuilt when the Makefile or any included Makefile (like Erlang.mk or plugins) change. Only the .app will be rebuilt when the .app.src file changes.
2015-10-12ErlyDTL files generate to beam directlyLoïc Hoguin
2015-10-12Fix port compilation for rebar projectsLoïc Hoguin
2015-10-06Load rebar before autopatchingLoïc Hoguin
Some rebar.config.script files use the vsn key available only after rebar is loaded.
2015-09-29Add a test for SKIP_DEPSLoïc Hoguin
Also don't delete DEPS_DIR if SKIP_DEPS is set.
2015-09-29Add tests for and fix NO_AUTOPATCHLoïc Hoguin
2015-09-29Merge branch 'app_file_newlines' of https://github.com/ingwinlu/erlang.mkLoïc Hoguin
2015-09-29Improve a few comments and messagesLoïc Hoguin
2015-09-29Add support for APPS_DIRLoïc Hoguin
This changes adds Rebar-like "apps/" functionality. From this commit onward, Erlang.mk supports 4 types of repositories: - Repo with an Erlang app at root level + deps/ - Repo with an Erlang app at root level + apps/ deps/ - Repo with no app at root level + deps/ - Repo with no app at root level + apps/ deps/ Example usage: - make new-app in=webchat - make new t=gen_server n=my_chat in=webchat - make Replace new-app with new-lib to create an OTP library instead of an OTP application.
2015-09-27Fix core_find on stock OSXLoïc Hoguin
OSX find has this terrible behavior: $ find test/core_app_asn1/src/ -type f -name \* test/core_app_asn1/src//CAP.erl test/core_app_asn1/src//Def.erl test/core_app_asn1/src//use_cap.erl test/core_app_asn1/src//use_def.erl It's been long fixed everywhere else. Change the core_find function to remove the trailing / if any before calling find.
2015-09-26retain newlines in generated .app filederwinlu
Replacing $(newline) occurances with \n before passing it to printf instead of echo ensures valid output accross different platforms.
2015-09-26only newline for id if neededderwinlu
2015-09-25Fix error messages appearing when using parse transformsLoïc Hoguin
The errors were happening in the rebar.config generation code. In addition to the fix, three tests were added: a project that uses a pt from its own code with -compile directives, a project that uses a pt from a dep with the pt set as ERLC_OPTS, and the inclusion of parse transform options in the generated rebar.config when compatibility is desired.
2015-09-24Add tests for IGNORE_DEPSLoïc Hoguin
Fix IGNORE_DEPS not being propagated downward. Fix IGNORE_DEPS handling with autopatched Rebar projects, where the user defined value was overriden with the one from autopatching.
2015-09-24Add tests for custom, fail (bad and unknown) and legacy fetch methodsLoïc Hoguin
Also improves the handling of the legacy fetch method. It is now enabled only for dependencies, and not for the top-level application. This should force Erlang.mk users to update their definitions.
2015-09-24Fix hex fetch method on WindowsLoïc Hoguin
2015-09-23Fix bug introduced by previous commitLoïc Hoguin
2015-09-23Implement, add test for dep_$(DEP)_commit variablesLoïc Hoguin
2015-09-22Add REL_DEPS along with its testLoïc Hoguin
2015-09-22Make autopatch work on WindowsLoïc Hoguin
2015-09-21Fix autopatch of non-atom applications namesLoïc Hoguin
2015-09-21Add support for BUILD_DEPSLoïc Hoguin
2015-09-18Test "no .app.src" by default, test legacy with LEGACY=1Loïc Hoguin
Also fixes two bugs with the new "no .app.src" method. All tests now pass with both methods. We can now test specific cases with make check c=$CASE.
2015-09-17Only set id to git --describe when we are a dependencyLoïc Hoguin
This way we can commit the .app file once and it won't change until we actually change something. Much better for "no .app.src" file method. We are getting close to making this method the default!
2015-09-17Add initial 'make rebar.config'Loïc Hoguin
This is a preliminary work, good enough to be used in some, but not all, projects. Tests cover the current functionality. Documentation has been written but will be committed at a later stage, as it covers more than just this target (the target is documented as part of a "Compatibility with other build tools" chapter).
2015-09-14Make relx work on Windows/MSYS2Loïc Hoguin
2015-09-12Add msys2 platform detectionLoïc Hoguin
This makes a lot of Erlang.mk work on Windows under the msys2 environment. The msys2 environment is damn close to native, so it will most likely be good enough for a lot of folks.
2015-09-11Merge branch 'clean_erlang_mk_tmp' of https://github.com/ingwinlu/erlang.mkLoïc Hoguin
2015-09-11add distclean-tmpderwinlu
Removes $(ERLANG_MK_TMP) directory on distclean. * add distclean-tmp target * add core-clean-tmp test
2015-09-11Fix bug where ERLC_EXCLUDE'd modules were in .app fileLoïc Hoguin
2015-09-10Replace a @ with a $(verbose)Loïc Hoguin
We have nothing to hide.
2015-09-09erlc.mk: Fix "no Erlang application" supportJean-Sébastien Pédron
2015-09-09core.mk: Allow to take erlang.mk from an alternate Git repositoryJean-Sébastien Pédron
2015-09-08core.mk: Support DragonFlyBSD as a new platformJean-Sébastien Pédron
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-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-03Fix bug where intermediate files from .asn1 wouldn't get cleanedLoïc Hoguin
Dirty, dirty files!
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-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.