summaryrefslogtreecommitdiffstats
path: root/docs/dev_guide/6-autobuild.md
diff options
context:
space:
mode:
authorScott Rifenbark <srifenbark@gmail.com>2019-04-04 16:52:19 -0700
committerScott Rifenbark <srifenbark@gmail.com>2019-04-04 16:53:16 -0700
commit27107400a13c053870b3bb8cbe2379099231ccab (patch)
treef302213f1443874a778b30292cbef7ae166e4f26 /docs/dev_guide/6-autobuild.md
parent16829a33f77f9d9eda435f5f1c36f36bc33fb267 (diff)
CMake Section: Complete re-write.
Completely re-wrote the section. New file names that do not use the numbers also. Change-Id: I443feb41cf83d760a57179473439e89e7b71f9c5 Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Diffstat (limited to 'docs/dev_guide/6-autobuild.md')
-rwxr-xr-xdocs/dev_guide/6-autobuild.md130
1 files changed, 0 insertions, 130 deletions
diff --git a/docs/dev_guide/6-autobuild.md b/docs/dev_guide/6-autobuild.md
deleted file mode 100755
index 6977e09..0000000
--- a/docs/dev_guide/6-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
-```