summaryrefslogtreecommitdiffstats
path: root/docs/dev_guide/5_autobuild.md
diff options
context:
space:
mode:
authorScott Rifenbark <srifenbark@gmail.com>2019-04-08 14:26:51 -0700
committerScott Rifenbark <srifenbark@gmail.com>2019-04-08 14:26:51 -0700
commit7061edf1849de1bb1730df92d23aa52a6793a609 (patch)
tree5e3414e134d65d6dbc15cf44c1811a2b464352f3 /docs/dev_guide/5_autobuild.md
parent4bbfea69dd78079ec3379268a12a552930d4314f (diff)
CMake: Complete re-write of the CMake topic.guppy_7.0.2guppy/7.0.27.0.2
Change-Id: I97c3a450401b87b8419ff00615588c261e6afc25 Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Diffstat (limited to 'docs/dev_guide/5_autobuild.md')
-rw-r--r--docs/dev_guide/5_autobuild.md130
1 files changed, 0 insertions, 130 deletions
diff --git a/docs/dev_guide/5_autobuild.md b/docs/dev_guide/5_autobuild.md
deleted file mode 100644
index 6977e09..0000000
--- a/docs/dev_guide/5_autobuild.md
+++ /dev/null
@@ -1,130 +0,0 @@
-# Autobuild script
-
-The Applications based on AGL framework should have a full packaging solution,
-independently of yocto workflow.
-
-Unfortunately the build part of the Applications is only in documentation or in
-yocto recipes.
-
-The Applications build with AGL framework must be automated without any yocto
-recipes.
-
-A script named **autobuild** is used to control applications build operations.
-The bbclass aglwgt.bbclass will call the **autobuild** script for all operations
-and is located at the top level of the application repository.
-
-This script could be written in one of the following languages:
-
-* Makefile
-* Bash
-* Python
-
-The script will be executed directly after a chmod() on it (this implies that the caller should make the script executable before calling it: caller could be aglwgt.bbclass, a jenkins job, a 'real' developer ...)
-An appropriate shebang is required to make the script callable directly:
-
-* '#!/usr/bin/make -f' for Makefile format,
-* '#!/usr/bin/bash' for Bash
-* etc.
-
-The calling convention is close to the one from make, in particular to pass arguments through env variables. This is also easy for bash, as a simple eval on arguments will set environment variables correctly.
-The generic call has the following format:
-
-```bash
-autobuild/agl/autobuild <command> [ARG1="value1" [ARG2="value2" ... ]]
-```
-
-autobuild can be invoked from any directory and all relative paths are
-considered to be relative to the location of autobuild.
-
-For makefile scripts, this is the usual behaviour.
-
-For bash scripts, running a 'cd $(dirname $0)' at the beginning is mandatory.
-
-At build time, the following calls must be made in the following order:
-
-```bash
-autobuild/agl/autobuild configure CONFIGURE_ARGS="..."
-```
-
-initializes the build environment (ex: if app uses cmake, the 'configure''
-step will run cmake)
-
-```bash
-autobuild/agl/autobuild build BUILD_ARGS="...."
-```
-
-builds the application (compile, link binaries, assembles javascript etc.)
-
-```bash
-autobuild/agl/autobuild package PACKAGE_ARGS="..." DEST=<path for resulting wgt
-file(s)>
-```
-
-creates the widget package(s) in the specified destination path prepared by the
-caller
-
-```bash
-autobuild/agl/autobuild package-test PACKAGE_ARGS="..." DEST=<path for resulting wgt
-file(s)>
-```
-
-creates the test widget package(s) in the specified destination path prepared by the
-caller
-
-```bash
-autobuild/agl/autobuild clean CLEAN_ARGS="..."
-```
-
-clean the built files (removes the result of autobuild build)
-
-```bash
-autobuild/agl/autobuild distclean DISTCLEAN_ARGS="..."
-```
-
-clean everything (removes the result of autobuild build + autobuild configure)
-
-## Generation
-
-To be integrated in the Yocto build workflow you have to generate `autobuild`
-scripts using _autobuild_ target.
-
-To generate those scripts proceeds:
-
-```bash
-mkdir -p build
-cd build
-cmake .. && make autobuild
-```
-
-You should see _autobuild/agl/autobuild_ file now.
-
-## Available targets
-
-Here are the available targets available from _autobuild_ scripts:
-
-- **clean** : clean build directory from object file and targets results.
-- **distclean** : delete build directory
-- **configure** : generate project Makefile from CMakeLists.txt files.
-- **build** : compile all project targets.
-- **package** : build and output a wgt package.
-- **package-test** : build and output the test wgt as well as the normal wgt
- package.
-- **install** : install the project in your filesystem
-
-You can specify variables that modify the behavior of compilation using
-the following variables:
-
-- **CLEAN_ARGS** : Variable used at **clean** time.
-- **DISTCLEAN_ARGS** : Variable used at **distclean** time.
-- **CONFIGURE_ARGS** : Variable used at **configure** time.
-- **BUILD_ARGS** : Variable used at **build** time.
-- **DEST** : Directory where to output ***wgt*** file (default at build root
- directory).
-
-Variable as to be in CMake format. (ie: BUILD_ARGS="-DC_FLAGS='-g -O2'")
-
-Usage example:
-
-```bash
-./autobuild/wgt/autobuild package DEST=/tmp
-```