summaryrefslogtreecommitdiffstats
path: root/docs/dev_guide
diff options
context:
space:
mode:
Diffstat (limited to 'docs/dev_guide')
-rw-r--r--docs/dev_guide/0_Abstract.md83
1 files changed, 74 insertions, 9 deletions
diff --git a/docs/dev_guide/0_Abstract.md b/docs/dev_guide/0_Abstract.md
index 88e841b..9d44890 100644
--- a/docs/dev_guide/0_Abstract.md
+++ b/docs/dev_guide/0_Abstract.md
@@ -1,13 +1,16 @@
# Abstract
-Files used to build an application, or a binding project with the AGL
-Application Framework.
+This CMake module is used to build an application or a binding project for the
+AGL Application Framework. It allows to easily build a widget and its related
+test widget for running on top the application framework.
-To build your AGL project using these templates, you have to installed them as
+## Installation for a native environment
+
+To build your AGL project using the templates, you have to install them as
a CMake module. The easy way is to install using your distro package manager
following [this guide](http://docs.automotivelinux.org/docs/devguides/en/dev/reference/host-configuration/docs/1_Prerequisites.html).
-Then install it, depending of your distro:
+To install it, depending on your distro:
* **Debian/Ubuntu**
@@ -27,12 +30,74 @@ sudo zypper install agl-cmake-apps-module
sudo dnf install agl-cmake-apps-module
```
+## Installing in a cross compilation environment
+
+### Using AGL SDK
+
+Beginning with the `Grumpy Guppy`, version 7, the CMakeAfbTemplates CMake module
+is installed by default in the SDKs. So, you don't need anything to use it.
+
+Here are some links to the latest SDKs on the master branch:
+
+* [dra7xx-evm](https://download.automotivelinux.org/AGL/snapshots/master/latest/dra7xx-evm/deploy/sdk/)
+* [dragonboard-410c](https://download.automotivelinux.org/AGL/snapshots/master/latest/dragonboard-410c/deploy/sdk/)
+* [intel-corei7-64](https://download.automotivelinux.org/AGL/snapshots/master/latest/intel-corei7-64/deploy/sdk/)
+* [m3ulcb-nogfx](https://download.automotivelinux.org/AGL/snapshots/master/latest/m3ulcb-nogfx/deploy/sdk/)
+* [qemux86-64](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemux86-64/deploy/sdk/)
+* [raspberrypi3](https://download.automotivelinux.org/AGL/snapshots/master/latest/raspberrypi3/deploy/sdk/)
+
+### Using bitbake recipes
+
+If you have developed an application and you want to include it in the AGL image,
+you have to add a `bitbake` recipe in one of the **AGL Yocto layer**:
+
+* [meta-agl](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/AGL/meta-agl):
+ meta-agl layer (core AGL)
+* [meta-agl-cluster-demo](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/AGL/meta-agl-cluster-demo):
+ cluster demo specific recipes and configuration
+* [meta-agl-demo](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/AGL/meta-agl-demo):
+ meta-agl-demo layer (demo/staging/"one-shot")
+* [meta-agl-devel](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/AGL/meta-agl-devel):
+ meta-agl-devel (Development and Community BSPs)
+* [meta-agl-extra](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/AGL/meta-agl-extra):
+ meta-agl-extra (additional/optional components for AGL)
+
+Then in your recipe, you simply have to add the class `aglwgt` to the *inherit*
+line:
+
+```bb
+inherit aglwgt
+```
+
+i.e with the **HVAC** app recipe:
+
+```bb
+SUMMARY = "HVAC Service Binding"
+DESCRIPTION = "AGL HVAC Service Binding"
+HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-hvac"
+SECTION = "apps"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984"
+
+SRC_URI = "gitsm://gerrit.automotivelinux.org/gerrit/apps/agl-service-hvac;protocol=https;branch=${AGL_BRANCH}"
+SRCREV = "${AGL_APP_REVISION}"
+
+PV = "1.0+git${SRCPV}"
+S = "${WORKDIR}/git"
+
+DEPENDS = "json-c"
+RDEPENDS_${PN} += "agl-service-identity-agent"
+
+inherit cmake aglwgt pkgconfig
+```
+
----
You'll find usage samples here:
-- [helloworld-service](https://github.com/iotbzh/helloworld-service)
-- [agl-service-can-low-level](https://gerrit.automotivelinux.org/gerrit/apps/agl-service-can-low-level)
-- [agl-service-audio-4a](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-audio-4a)
-- [agl-service-unicens](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-unicens)
-- [4a-hal-unicens](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/src/4a-hal-unicens)
+* [helloworld-service](https://github.com/iotbzh/helloworld-service)
+* [agl-service-can-low-level](https://gerrit.automotivelinux.org/gerrit/apps/agl-service-can-low-level)
+* [agl-service-audio-4a](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-audio-4a)
+* [agl-service-unicens](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-unicens)
+* [4a-hal-unicens](https://gerrit.automotivelinux.org/gerrit/#/admin/projects/src/4a-hal-unicens)