DESCRIPTION = "A fast and low-memory footprint OCI Container Runtime fully written in C." LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" PRIORITY = "optional" SRCREV_crun = "4d6eae2eb8047a7f51e536ffe461666b65b3d5e9" SRCREV_libocispec = "5ffd4dd9fa684e0ffb2f0b5ea4a6cb638b021397" SRCREV_ispec = "c66e8113cbad252a418d85f061bd1a20d0904d08" SRCREV_rspec = "9505701eb390445ef7edf2be3bd3d7bc1f14eae5" SRCREV_yajl = "f344d21280c3e4094919fd318bc5ce75da91fc06" SRCREV_FORMAT = "crun_rspec" SRC_URI = "git://github.com/containers/crun.git;branch=main;name=crun;protocol=https \ git://github.com/containers/libocispec.git;branch=main;name=libocispec;destsuffix=git/libocispec;protocol=https \ git://github.com/opencontainers/runtime-spec.git;branch=main;name=rspec;destsuffix=git/libocispec/runtime-spec;protocol=https \ git://github.com/opencontainers/image-spec.git;branch=main;name=ispec;destsuffix=git/libocispec/image-spec;protocol=https \ git://github.com/containers/yajl.git;branch=main;name=yajl;destsuffix=git/libocispec/yajl;protocol=https \ " PV = "v1.20.0+git${SRCREV_crun}" S = "${WORKDIR}/git" inherit autotools-brokensep pkgconfig # if this is true, we'll symlink crun to runc for easier integration # with container stacks CRUN_AS_RUNC ?= "true" PACKAGECONFIG ??= " \ caps external-yajl man \ ${@bb.utils.contains('DISTRO_FEATURES', 'seccomp', 'seccomp', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \ " PACKAGECONFIG[caps] = "--enable-caps,--disable-caps,libcap" PACKAGECONFIG[external-yajl] = "--disable-embedded-yajl,--enable-embedded-yajl,yajl" # whether to regenerate manpages that are already present in the repo PACKAGECONFIG[man] = ",,go-md2man-native" PACKAGECONFIG[seccomp] = "--enable-seccomp,--disable-seccomp,libseccomp" PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd" DEPENDS = "m4-native" DEPENDS:append:libc-musl = " argp-standalone" do_configure:prepend () { # extracted from autogen.sh in crun source. This avoids # git submodule fetching. mkdir -p m4 autoreconf -fi } do_install() { oe_runmake 'DESTDIR=${D}' install if [ -n "${CRUN_AS_RUNC}" ]; then ln -sr "${D}/${bindir}/crun" "${D}${bindir}/runc" fi }