From 991fbe07e1a47a182023cd9522016775c67a6e0d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-S=C3=A9bastien=20P=C3=A9dron?=
 <jean-sebastien@rabbitmq.com>
Date: Wed, 2 Sep 2015 19:27:04 +0200
Subject: app.asciidoc: Document how to handle generated source files

---
 doc/src/guide/app.asciidoc | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

(limited to 'doc/src/guide/app.asciidoc')

diff --git a/doc/src/guide/app.asciidoc b/doc/src/guide/app.asciidoc
index 880221a..a04c5a9 100644
--- a/doc/src/guide/app.asciidoc
+++ b/doc/src/guide/app.asciidoc
@@ -235,6 +235,29 @@ transforms have changed. Erlang.mk also automatically keeps
 track of which files should be compiled first, for example
 when you have behaviors used by other modules in your project.
 
+=== Generated source files ===
+
+Generated source files are supported: they should be listed as
+dependencies to `$(PROJECT).d`:
+
+[source,make]
+----
+PROJECT = example
+
+.DEFAULT_GOAL = all
+
+$(PROJECT).d:: src/generated_mod.erl
+
+include erlang.mk
+
+src/generated_mod.erl::
+	$(gen_verbose) ./gen-mod.sh $@
+----
+
+Note how `.DEFAULT_GOAL` is set to `all` near the beginning. Without
+this, `$(PROJECT).d` would become the default target, changing the
+expected behavior of this `Makefile`.
+
 === Cleaning
 
 Building typically involves creating a lot of new files. Some
-- 
cgit v1.2.3

