aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-12-02Make asciideck a little more verbose2016.12.08Loïc Hoguin
2016-11-29Give ebin paths when creating the PLTLoïc Hoguin
Before we had Dialyzer look for BEAM files in every subfolders of every deps. This resulted in the PLT bundling extra files and/or Dialyzer failing because some of them are not built with +debug_info, or because there are duplicates (in test logs for example). Now Dialyzer will only look in ebin/.
2016-11-26Add CT_LOGS_DIRnevar
2016-11-25Makefile: Set LC_COLLATE=C when building erlang.mkJean-Sébastien Pédron
When the index files are concatenated, (`index/*` in `build.config`), their order is related to the collation locale used by the shell. By explicitely setting this to the C locale, we make sure that the order is consistent, no matter the user's locale. It is especially useful in teams where users and systems have different locales.
2016-11-20Only delete ebin when fetching Erlang.mk projectsLoïc Hoguin
Erlang.mk projects either have a .app.src, or just the Makefile with an optional .app file for compatibility.
2016-11-20Better .app autopatch handlingLoïc Hoguin
If we have a .app and a .app.src we delete the .app. If we have a Rebar project with a .app file, rename it to .app.src and continue with autopatch. If we have a non-Rebar project, leave the .app file, and then... For all cases, delete the ebin/ folder after autopatch completes.
2016-11-19Don't autopatch if rebar is mentioned in commentsLoïc Hoguin
2016-11-04Rename CI_HIPE_LLVM to CI_ERLLVMLoïc Hoguin
Official name after all.
2016-11-03Clarify gmake commands on FreeBSD/HomebrewLoïc Hoguin
[ci skip]
2016-11-03Fix missing commaLoïc Hoguin
Oops! [ci skip]
2016-11-03Add experimental ErLLVM support in CILoïc Hoguin
The VM used to test LLVM built code is the --enable-native-libs one.
2016-11-03Add experimental HiPE support in CI2016.11.03Loïc Hoguin
2016-11-01Test asciidoc with more than one man sectionLoïc Hoguin
2016-11-01We need Asciideck to generate docs nowLoïc Hoguin
[ci-skip]
2016-11-01Document ESCRIPT_ZIP=zip and Ubuntu's p7zip-fullLoïc Hoguin
[ci-skip]
2016-10-31Switch asciidoc-manual to using AsciideckLoïc Hoguin
This is a start for moving from Python's Asciidoc to the Erlang implementation. Please report any issue with this change, I will fix everything at lightning speed!
2016-10-31Add package asciideck to the indexLoïc Hoguin
2016-10-31Fix a missing file warningLoïc Hoguin
2016-10-30Fix running Dialyzer on apps/* when they have depsLoïc Hoguin
2016-10-30Greatly improve the escript supportLoïc Hoguin
The plugin can now easily generate escripts as complex as relx or rebar/rebar3. It generates a proper structure and allows embedding extra files by extending the escript-zip target. Documentation and tests have been added.
2016-10-30Use := instead of = for list of filesLoïc Hoguin
This will make sure we don't look twice. Also make a single call to find the common file formats rather than many calls.
2016-10-30Properly convert DTL files path on Windows/MSYS2Loïc Hoguin
2016-10-29Remove appveyor/circleci filesLoïc Hoguin
2016-10-29Small tweak to make it easier for me to notice test failuresLoïc Hoguin
2016-10-29Fix broken test on OSXLoïc Hoguin
2016-10-29Add chapter about self-extracting releasesLoïc Hoguin
[ci-skip]
2016-10-29Make the sfx plugin use the tarball from RelxLoïc Hoguin
Plus small tweaks.
2016-10-29Revert change to erlang.mk fileLoïc Hoguin
My bad. Removing the .gitattributes file which lead me to make this error.
2016-10-28Make the relx tests work on FreeBSD/OSXLoïc Hoguin
2016-10-28Add "make relup"Loïc Hoguin
The initial documentation is a bit rough. It's getting late and I'd like to have this in sooner rather than later. :-)
2016-10-28Tweak Relx testsLoïc Hoguin
2016-10-28Add sasl and runtime_tools to the default relx.configLoïc Hoguin
2016-10-28Set PROJECT_VERSION to 0.1.0 in templatesLoïc Hoguin
Makes more sense than 0.0.1.
2016-10-28add tests for relx pluginderwinlu
* relx-rel + check that relx gets downloaded when relx.config exists, + check structure of built release + check that _rel directory does not get delete by 'make clean' * relx-run + build a simple release, check if it starts and stops normally * relx-rel-tar + check if RELX_OPTS are respected via supplying the 'tar' target * relx-distclean-relx + check that relx executable gets deleted * relx-distclean-relx-rel + check that _rel directory gets deleted * relx-relup + check if relup generation is possible and generated relup is working add sleeps after calls to async actions of the relx boot script
2016-10-28Tweak this repo's "make clean"Loïc Hoguin
It'll now 'git checkout erlang.mk'.
2016-10-28Fix .gitattributesLoïc Hoguin
2016-10-28Use an intermediate timestamp file to know when to touch source filesJean-Sébastien Pédron
The previous approach spawned a shell for every single source files. As we disable parallel make jobs, this is very time consuming. The new approach uses an intermediate timestamp file in $(ERLANG_MK_TMP) to record the last modification of any of $(MAKEFILE_LIST) and touch all source files in one command. Then, the .app file depends on this timestamp file. We test the existence of this timestamp file: if if doesn't exist, don't touch source files, they will be built anyway. $(PROJECT).d now depends directly on $(MAKEFILE_LIST); before, this dependency was indirect through $(ERL_FILES). Also, once $(ERL_FILES) were touched, we do the same with $(PROJECT).d because there is no need to regen it because of this.
2016-10-27Fix Hex package downloads on FreeBSDLoïc Hoguin
Error has been detected during the nightly packages build.
2016-10-26Better FreeBSD fixLoïc Hoguin
2016-10-26FreeBSD doesn't use tar -c with -OLoïc Hoguin
2016-10-26Add self-extracting/running archives for releasesLoïc Hoguin
This is a proof of concept at the moment. It only runs the release in 'console' mode at the moment. I am expecting users to want a mix of both self extracting (without removing when done) and self running (with removal when done) archives. There is currently no way to configure the behavior and so the files get deleted when the release terminates (self running use case). The SFX archive will only be created when the SFX variable is set (either in the Makefile or through the command-line). There are currently no documentation. Just "make SFX=1".
2016-10-25Use the ERLANG_MK_TMP variable in plugins/ci.mkLoïc Hoguin
2016-10-25Simplify the curl method to get erlang.mkLoïc Hoguin
2016-10-25Use curl to fetch Hex dependenciesLoïc Hoguin
2016-10-25Move relx to the temporary directoryLoïc Hoguin
2016-10-25Use curl instead of wget/erl for fetching filesLoïc Hoguin
After a lot of soul searching and experiments, I am opting to using curl for fetching files. It works with very little manipulation on all supported systems. Some might need it installed, but most come with it. While wget was working, it had TLS validation deactivated because some users didn't have CA certificates on their system or wget was not configured properly. This does not seem to be a problem with curl as far as I tested, in particular on OSX. The fallback to use Erlang was also insecure, and probably not the best idea. Let's keep things simple. Curl is required.
2016-10-25Fetch kerl with --depth 1Loïc Hoguin
We always want the most recent version and only this.
2016-10-25core/deps-tools.mk: New targets `fetch-deps` and `list-deps`Jean-Sébastien Pédron
.. to fetch and list deps recurvively. Therefore, they work on direct dependencies, dependencies' dependencies, and so on. Nothing is built with those targets. The following targets are also available to work on other kinds of dependencies: make fetch-doc-deps make fetch-rel-deps make fetch-test-deps make fetch-shell-deps make list-doc-deps make list-rel-deps make list-test-deps make list-shell-deps In all cases, they include "normal" and eg. "test" dependencies of the top-level project, then only "normal" dependencies' dependencies. It's possible to include several kinds in one go: make fetch-deps DEP_TYPES='doc test' make list-deps DEP_TYPES='doc test' As it may be difficult to use the output of `make list-*` because the list could appear after other targets output (like dependencies fetching), the list is available in files pointed by the following variables: $(ERLANG_MK_RECURSIVE_DEPS_LIST) $(ERLANG_MK_RECURSIVE_DOC_DEPS_LIST) $(ERLANG_MK_RECURSIVE_REL_DEPS_LIST) $(ERLANG_MK_RECURSIVE_TEST_DEPS_LIST) $(ERLANG_MK_RECURSIVE_SHELL_DEPS_LIST) Internally, `list-deps` is simply implemented on top of `fetch-deps`: the latter fills a sorted log with all the directories it traversed. `list-deps` finally just prints the log file to stdout. Fixes #560.
2016-10-25Add KERL_MAKEFLAGS optionLoïc Hoguin
2016-10-25Fetch kerl using gitLoïc Hoguin
Safer than through insecure HTTPS.