Search code examples
linuxbuildyoctobitbakerecipe

How to connect recipes in bitbake


I need to write a recipe for uftpd. uftpd itself requires two libraries to be built: libite and libuev

I've written two recipes for libite:

SUMMARY = "libite_1.9.3.bb"
SECTION = "ftpserver"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"

SRC_URI = "http://github.com/troglobit/libite/releases/download/v${PV}/libite-${PV}.tar.xz"
SRC_URI[md5sum] = "67a00e1e1c7aa11207cf77f10c6580a3"

inherit autotools

do_install_append() {
    ldconfig -N
}

and libuev:

SUMMARY = "libuev_1.6.0.bb"
SECTION = "ftpserver"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"

SRC_URI = "http://github.com/troglobit/libuev/releases/download/v${PV}/libuev-${PV}.tar.xz"
SRC_URI[md5sum] = "d0b12548d888cc30e41a921fe0f33641"

inherit autotools

do_install_append() {
    ldconfig -N
}

Now I need to write a recipe for uftpd and that's how I've been trying to achieve it:

SUMMARY = "uftpd_2.4.bb"
SECTION = "ftpserver"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"

SRC_URI = "http://github.com/troglobit/uftpd/releases/download/v${PV}/uftpd-${PV}.tar.xz"
SRC_URI[md5sum] = "652e6cb8a059be3f8a3779b7182ce385"

DEPENDS += "libuev"
DEPENDS += "libite"

S = "${WORKDIR}/uftpd-${PV}"

do_configure[depends] += "libuev:do_populate_sysroot"
do_configure[depends] += "libite:do_populate_sysroot"

inherit autotools

When I try to build uftpd, libuev and libite both build successfully, but there is an error when executing configure file from uftpd: error image

As far as I've understood, it means that configure can't find the libuev library, although it was built just before that. What can be done with that? Is there something wrong that I'm doing?


Solution

  • Your uftpd recipe needs to inherit pkgconfig (that error is "pkgconfig macros cannot be found).