From 53a7cf31f92230d0602811257ca96176a124818b Mon Sep 17 00:00:00 2001
From: Matthias Schiffer <mschiffer@universe-factory.net>
Date: Tue, 13 Oct 2015 01:18:03 +0200
Subject: [PATCH] build: add GLUON_OUTPUTDIR, move GLUON_IMAGEDIR default below
 it

We'll soon have other output besides the images, having a single directory
for all output makes sense.
---
 .gitignore                    |  2 +-
 docs/features/autoupdater.rst |  4 ++--
 docs/user/getting_started.rst | 11 +++++++----
 include/gluon.mk              |  6 ++++--
 4 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/.gitignore b/.gitignore
index 7a4602a1c..2b6cabec9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,6 @@
 *~
 /build
-/images
+/output
 /site
 /openwrt
 /packages
diff --git a/docs/features/autoupdater.rst b/docs/features/autoupdater.rst
index fdc511d97..8f35efb8e 100644
--- a/docs/features/autoupdater.rst
+++ b/docs/features/autoupdater.rst
@@ -30,10 +30,10 @@ A fully automated nightly build could use the following commands:
     make clean
     make -j5 GLUON_TARGET=ar71xx-generic GLUON_BRANCH=experimental
     make manifest GLUON_BRANCH=experimental
-    contrib/sign.sh $SECRETKEY images/sysupgrade/experimental.manifest
+    contrib/sign.sh $SECRETKEY output/images/sysupgrade/experimental.manifest
 
     rm -rf /where/to/put/this/experimental
-    cp -r images /where/to/put/this/experimental
+    cp -r output/images /where/to/put/this/experimental
 
 
 Infrastructure
diff --git a/docs/user/getting_started.rst b/docs/user/getting_started.rst
index 104899785..658d98c54 100644
--- a/docs/user/getting_started.rst
+++ b/docs/user/getting_started.rst
@@ -86,7 +86,7 @@ In case of errors read the messages carefully and try to fix the stated issues (
 ``ar71xx-generic`` is the most common target and will generated images for most of the supported hardware.
 To see a complete list of supported targets, call ``make`` without setting ``GLUON_TARGET``.
 
-The built images can be found in the directory `images`. Of these, the factory
+The built images can be found in the directory `output/images`. Of these, the factory
 images are to be used when flashing from the original firmware a device came with,
 and sysupgrade is to upgrade from other versions of Gluon or any other OpenWRT-based
 system.
@@ -117,12 +117,15 @@ Gluon's build process can be controlled by various environment variables.
 GLUON_SITEDIR
   Path to the site configuration. Defaults to ``site/``.
 
-GLUON_IMAGEDIR
-  Path where images will be stored. Defaults to ``images/``.
-
 GLUON_BUILDDIR
   Working directory during build. Defaults to ``build/``.
 
+GLUON_OUTPUTDIR
+  Path where output files will be stored. Defaults to ``output/``.
+
+GLUON_IMAGEDIR
+  Path where images will be stored. Defaults to ``$(GLUON_OUTPUTDIR)/images/``.
+
 
 So all in all, to update and rebuild a Gluon build tree, the following commands should be used (repeat the
 ``make clean`` and ``make`` for all targets you want to build):
diff --git a/include/gluon.mk b/include/gluon.mk
index 3ef3f1327..ceaa28508 100644
--- a/include/gluon.mk
+++ b/include/gluon.mk
@@ -2,13 +2,15 @@ ifneq ($(__gluon_inc),1)
 __gluon_inc=1
 
 GLUON_SITEDIR ?= $(GLUONDIR)/site
-GLUON_IMAGEDIR ?= $(GLUONDIR)/images
 GLUON_BUILDDIR ?= $(GLUONDIR)/build
 
 GLUON_ORIGOPENWRTDIR := $(GLUONDIR)/openwrt
 GLUON_SITE_CONFIG := $(GLUON_SITEDIR)/site.conf
 
-export GLUONDIR GLUON_SITEDIR GLUON_SITE_CONFIG GLUON_IMAGEDIR GLUON_BUILDDIR
+GLUON_OUTPUTDIR ?= $(GLUONDIR)/output
+GLUON_IMAGEDIR ?= $(GLUON_OUTPUTDIR)/images
+
+export GLUONDIR GLUON_SITEDIR GLUON_BUILDDIR GLUON_SITE_CONFIG GLUON_OUTPUTDIR GLUON_IMAGEDIR
 
 
 BOARD_BUILDDIR = $(GLUON_BUILDDIR)/$(GLUON_TARGET)
-- 
GitLab