Reputation: 107
I am new to Yocto and Embedded and wanted to something like this,
$ git clone https://github.com/babelouest/orcania.git
$ git clone https://github.com/babelouest/yder.git
$ git clone https://github.com/babelouest/ulfius.git
$ cd orcania/
$ make && sudo make install
$ cd ../yder/
$ make && sudo make install
$ cd ../ulfius/
$ make && sudo make install
Please help in creating layer and recipe.
Thanks.
Upvotes: 2
Views: 8853
Reputation: 2330
I have created the recipes and layer configuration to compile all the mentioned software.
Note: Dependency towards systemd is disabled by default. If you need to run in a system with systemd, you can enable them and add the support.
conf/layer.conf:
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have a recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "babelouest"
BBFILE_PATTERN_babelouest = "^${LAYERDIR}/"
BBFILE_PRIORITY_babelouest = "6"
# Set a variable to get to the top of the meta-layer location
HAB_BASE := '${LAYERDIR}'
recipes-babelouest/orcania/orcania_git.bb:
DESCRIPTION = "Potluck with different functions for different purposes that can be shared among C programs"
HOMEPAGE = "https://github.com/babelouest/orcania"
LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://LICENSE;md5=fc178bcd425090939a8b634d1d6a9594"
inherit cmake pkgconfig
SRC_URI = "git://github.com/babelouest/orcania"
SRCREV = "${AUTOREV}"
S = "${WORKDIR}/git"
DEPENDS = "jansson"
RDEPENDS_${PN} = "jansson"
recipes-babelouest/yder/yder_git.bb:
DESCRIPTION = "Logging library for C applications"
HOMEPAGE = "https://github.com/babelouest/yder"
LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://LICENSE;md5=40d2542b8c43a3ec2b7f5da31a697b88"
inherit cmake pkgconfig
SRC_URI = "git://github.com/babelouest/yder"
SRCREV = "${AUTOREV}"
S = "${WORKDIR}/git"
DEPENDS = "jansson orcania"
RDEPENDS_${PN} = "jansson orcania"
EXTRA_OECMAKE += "-DWITH_JOURNALD=off"
recipes-babelouest/ulfius/ulfius_git.bb:
DESCRIPTION = "Web Framework to build REST APIs, Webservices or any HTTP endpoint in C language. Can stream large amount of data, integrate JSON data with Jansson, and create websocket services"
HOMEPAGE = "https://babelouest.github.io/ulfius/"
LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://LICENSE;md5=40d2542b8c43a3ec2b7f5da31a697b88"
inherit cmake pkgconfig
SRC_URI = "git://github.com/babelouest/ulfius"
SRCREV = "${AUTOREV}"
S = "${WORKDIR}/git"
DEPENDS = "gnutls jansson libmicrohttpd"
RDEPENDS_${PN} = "gnutls jansson libmicrohttpd"
EXTRA_OECMAKE += "-DWITH_JOURNALD=off"
This layer depends on following layers,
You can include them in bblayer.conf or name this layer as meta-babelouest and include. All the files are added to my github gist here.
Upvotes: 5