[yocto] Help with ipset bitbake files

Padam J. Singh me at padamj.com
Fri Jan 31 03:45:20 PST 2014


Hello,

I am trying to create a bitbake file for ipset (http://ipset.netfilter.org). Currently using the Poky project.

When executing this recipe, all steps completes OK. However, the compiled binaries are not included in the final RPMs or the final images. 

Could someone point out what could be wrong?

once I do:

bitbake -DDD -v ipset

the directory tmp/work/x86_64-poky-linux/ipset/6.20.1-r29/image contains the libraries and the binary file ipset, however, the RPM builder only includes the libraries and completely ignores the ipset file.

The output from the RPM packaging process is:


Processing files: ipset-6.20.1-r29.x86_64

Provides:
libipset.so.3(LIBIPSET_1.0)(64bit)
elf(buildid) = cf8440b26d69aa1801b9d4551d277b18f74a7ce6
elf(buildid) = 33d7b60b93579f13ec71d1a156882b5f59dbcbff libipset.so.3()(64bit) libipset.so.3(LIBIPSET_4.0)(64bit) libipset.so.3(LIBIPSET_4.1)(64bit) libipset.so.3(LIBIPSET_3.0)(64bit) libipset.so.3(LIBIPSET_2.0)(64bit)

Requires(interp): /bin/sh

Requires(post): rtld(GNU_HASH) libc.so.6(GLIBC_2.3)(64bit) libmnl.so.0(LIBMNL_1.0)(64bit) libc.so.6()(64bit) libdl.so.2()(64bit) libmnl0 >= 1.0.3 libc.so.6(GLIBC_2.2.5)(64bit) libc6 >= 2.18 libmnl.so.0()(64bit) /bin/sh

Provides:
libipset.so.3(LIBIPSET_1.0)(64bit) elf(buildid) = cf8440b26d69aa1801b9d4551d277b18f74a7ce6 elf(buildid) = 33d7b60b93579f13ec71d1a156882b5f59dbcbff libipset.so.3()(64bit) libipset.so.3(LIBIPSET_4.0)(64bit) libipset.so.3(LIBIPSET_4.1)(64bit) libipset.so.3(LIBIPSET_3.0)(64bit) libipset.so.3(LIBIPSET_2.0)(64bit)
Requires(interp): /bin/sh
Requires(post): rtld(GNU_HASH) libc.so.6(GLIBC_2.3)(64bit) libmnl.so.0(LIBMNL_1.0)(64bit) libc.so.6()(64bit) libdl.so.2()(64bit) libmnl0 >= 1.0.3 libc.so.6(GLIBC_2.2.5)(64bit) libc6 >= 2.18 libmnl.so.0()(64bit) /bin/sh



Here are the files:

libmnl.inc (dependency for ipset)
=========================
DESCRIPTION = "libmnl is a minimalistic user-space library oriented to Netlink developers. There are a lot of common tasks in parsing, validating, constructing of both the Netlink header and TLVs that are repetitive and easy to get wrong. This library aims to provide simple helpers that allows you to re-use code and to avoid re-inventing the wheel."
SECTION = "base"
LICENSE = "GPLv2"
DEPENDS += "virtual/libc"

inherit autotools

PR="r3"

SRC_URI = "http://netfilter.org/projects/libmnl/files/libmnl-${PV}.tar.bz2"

#EXTRA_OEMAKE = "KERNEL_DIR=${KERNEL_SOURCE} MANDIR=${mandir}"
BBCLASSEXTEND = "native"

libmnl_1.0.3.bb
============
require libmnl.inc

LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"

SRC_URI[md5sum] = "7d95fc3bea3365bc03c48e484224f65f"
SRC_URI[sha256sum] = "6f14336e9acdbc62c2dc71bbb59ce162e54e9af5c80153e92476c5443fe784de"


ipset.inc
======
DESCRIPTION = "IP set framework"
SECTION = "base"
LICENSE = "GPLv2"
DEPENDS += "virtual/libc"
RDEPENDS_${PN} += "libmnl"

inherit autotools
inherit pkgconfig

PR="r29"

SRC_URI = " \
     http://ipset.netfilter.org/ipset-${PV}.tar.bz2 \
     "
EXTRA_OEMAKE = "KERNEL_DIR=${KERNEL_SOURCE} MANDIR=${mandir} AM_CPPFLAGS=-I../include"
EXTRA_OECONF = "--with-kmod=no"
FILES_${PN} += "${sbindir} ${sbindir}/ipset"

PARALLEL_MAKE = ""
BBCLASSEXTEND = "native"


ipset_6.20.1.bb
============
require ipset.inc

LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"

SRC_URI[md5sum] = "8af741492752fbf24d3a28a9d1473d40"
SRC_URI[sha256sum] = "356cac020438cd0871acbfc4cb119b8296030f0bb4661ad0d44bbc115ccbce92"




Have been stuck on this for days now, any help or pointer to fix this will help.

Thanks,
Padam







More information about the yocto mailing list