This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
troubleshooting:app-recipes [2016/12/28 14:05] jsmoeller |
troubleshooting:app-recipes [2019/02/08 13:31] (current) claneys [Autobuild migration] |
||
---|---|---|---|
Line 13: | Line 13: | ||
===== Shim recipe template ===== | ===== Shim recipe template ===== | ||
$~/> cat recipes-demo-hmi/helloworld/helloworld_git.bb | $~/> cat recipes-demo-hmi/helloworld/helloworld_git.bb | ||
+ | SUMMARY = "helloworld application wrapper recipe" | ||
+ | DESCRIPTION = "helloworld application wrapper recipe to build the app with bitbake" | ||
+ | HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/XYZ" | ||
+ | SECTION = "apps" | ||
+ | | ||
+ | LICENSE = "Apache-2.0" | ||
+ | LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" | ||
+ | | ||
+ | SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/XYZ;protocol=http" | ||
+ | SRCREV = "${AUTOREV}" | ||
+ | | ||
+ | PV = "1.0+git${SRCPV}" | ||
+ | S = "${WORKDIR}/git" | ||
+ | | ||
+ | inherit aglwgt | ||
+ | # Add inherit statements for your build procedure | ||
+ | # e.g. inherit cmake | ||
+ | # or inherit qmake5 | ||
+ | | ||
+ | # build-time dependencies | ||
+ | #DEPENDS += "qtquickcontrols2" | ||
+ | # Add your build-time dependencies | ||
+ | # for all libraries to make sure the link step works | ||
+ | # Double check these are available at run-time and | ||
+ | # adapt the platform's packagegroups if needed | ||
===== Sample shim recipe ===== | ===== Sample shim recipe ===== | ||
Line 42: | Line 67: | ||
+ | ===== Example: Makefile ===== | ||
+ | |||
+ | ===== Example: CMakelists.txt ===== | ||
+ | |||
+ | No example yet. Things are discussed on Jira: | ||
+ | - https://jira.automotivelinux.org/browse/SPEC-495 | ||
+ | - https://jira.automotivelinux.org/browse/SPEC-503 | ||
+ | ===== Example: qmake.pro ===== | ||
+ | |||
+ | The HVAC application is built using Qt and qmake. | ||
+ | Check this example: [[https://git.automotivelinux.org/apps/hvac/tree/]]. | ||
+ | |||
+ | ===== Autobuild migration ===== | ||
+ | |||
+ | A warning is issued on old wgt build: | ||
+ | |||
+ | <code> | ||
+ | WARNING: navigation-git-r0 do_aglwgt_package: OBSOLETE: You must have an autobuild script located in: | ||
+ | WARNING: navigation-git-r0 do_aglwgt_package: autobuild/agl/ from the project root source folder | ||
+ | WARNING: navigation-git-r0 do_aglwgt_package: with filename autobuild which should generate | ||
+ | WARNING: navigation-git-r0 do_aglwgt_package: a .wgt file using wgtpack in the build | ||
+ | WARNING: navigation-git-r0 do_aglwgt_package: root folder calling: | ||
+ | WARNING: navigation-git-r0 do_aglwgt_package: ./autobuild/agl/autobuild package DEST=<BUILDDIR> | ||
+ | WARNING: navigation-git-r0 do_aglwgt_package: Fix your package as it will not work within the SDK | ||
+ | WARNING: navigation-git-r0 do_aglwgt_package: See: https://wiki.automotivelinux.org/troubleshooting/app-recipes | ||
+ | </code> | ||
+ | |||
+ | This warning is about the migration of **wgt** package build from various methods to only one, the **autobuild** script. | ||
+ | |||
+ | This script was originally located in **<ROOT-FOLDER>/conf.d/autobuild/{agl,linux}/autobuild** but now it should be located directly at the project root folder **<ROOT-FOLDER>/autobuild/{agl,linux}/autobuild**. Yocto takes the **autobuild** in the **agl** subdirectory. So you need the script **<ROOT-FOLDER>/autobuild/agl/autobuild**. | ||
+ | |||
+ | An example can be found in gerrit [[https://gerrit.automotivelinux.org/gerrit/gitweb?p=src/cmake-apps-module.git;a=blob_plain;f=src/template.d/autobuild/agl/autobuild.in;hb=HEAD|cmake-apps-module]] repository and use the CMake module to build the **wgt** so you maybe have to tweak it a little bit. |