aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-core/runx/runx_git.bb
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-core/runx/runx_git.bb')
-rw-r--r--recipes-core/runx/runx_git.bb58
1 files changed, 40 insertions, 18 deletions
diff --git a/recipes-core/runx/runx_git.bb b/recipes-core/runx/runx_git.bb
index 991e6e1f..831360ba 100644
--- a/recipes-core/runx/runx_git.bb
+++ b/recipes-core/runx/runx_git.bb
@@ -2,13 +2,19 @@ HOMEPAGE = "https://github.com/lf-edge/runx"
SUMMARY = "runx stuff"
DESCRIPTION = "Xen Runtime for OCI"
-SRCREV_runx = "f24efd33fb18469e9cfe4d1bfe8e2c90ec8c4e93"
+SRCREV_runx = "edc9350a79ede0365066c9743080e3dc6430d602"
+
+KERNEL_SRC_VER="linux-5.4"
+KERNEL_URL_VER="v5.x"
+
SRC_URI = "\
- git://github.com/lf-edge/runx;nobranch=1;name=runx \
- https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.4.tar.xz;destsuffix=git/kernel/build \
+ git://github.com/lf-edge/runx;nobranch=1;name=runx;protocol=https \
+ https://www.kernel.org/pub/linux/kernel/${KERNEL_URL_VER}/${KERNEL_SRC_VER}.tar.xz;destsuffix=git/kernel/build \
file://0001-make-kernel-cross-compilation-tweaks.patch \
- file://0001-make-initrd-cross-install-tweaks.patch \
+ file://0001-make-kernel-bump-to-v5.4.104-for-gcc10-fixes.patch \
+ file://0001-make-initrd-allow-externally-provided-busybox.patch \
"
+
SRC_URI[md5sum] = "ce9b2d974d27408a61c53a30d3f98fb9"
SRC_URI[sha256sum] = "bf338980b1670bca287f9994b7441c2361907635879169c64ae78364efc5f491"
@@ -16,7 +22,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=945fc9aa694796a6337395cc291ddd8c"
S = "${WORKDIR}/git"
-PV = "0.1-git${SRCREV_runx}"
+PV = "v1.0-git${SRCREV_runx}"
inherit features_check
REQUIRED_DISTRO_FEATURES = "vmsep"
@@ -27,14 +33,19 @@ inherit kernel-arch
# we have a busybox bbappend that makes /bin available to the
# sysroot, and hence gets us the target binary that we need
-DEPENDS = "busybox go-build"
+DEPENDS = "busybox-initrd go-build"
+DEPENDS += "resolvconf"
# for the kernel build phase
DEPENDS += "openssl-native coreutils-native util-linux-native xz-native bc-native"
+DEPENDS += "elfutils-native"
DEPENDS += "qemu-native bison-native"
-RDEPENDS_${PN} += " jq bash"
-RDEPENDS_${PN} += " xen-tools-xl go-build socat daemonize"
+RDEPENDS:${PN} += " jq bash"
+RDEPENDS:${PN} += " xen-tools-xl go-build socat daemonize"
+RDEPENDS:${PN} += " qemu-system-i386 ca-certificates qemu qemu-keymaps"
+
+RUNX_USE_INTERNAL_BUSYBOX ?= ""
do_compile() {
# we'll need this for the initrd later, so lets error if it isn't what
@@ -45,12 +56,12 @@ do_compile() {
# building.
mkdir -p ${S}/kernel/build
mkdir -p ${S}/kernel/src
- cp ${DL_DIR}/linux-4.15.tar.xz ${S}/kernel/build/
+ cp ${DL_DIR}/${KERNEL_SRC_VER}.tar.xz ${S}/kernel/build/
# In the future, we might want to link the extracted kernel source (if
# we move patches to recipe space, but for now, we need make-kernel to
# extract a copy and possibly patch it.
- # ln -sf ${WORKDIR}/linux-4.15 ${S}/kernel/src/
+ # ln -sf ${WORKDIR}/${KERNEL_SRC_VER} ${S}/kernel/src/
# build the kernel
echo "[INFO]: runx: building the kernel"
@@ -71,12 +82,23 @@ do_compile() {
${S}/kernel/make-kernel
# construct the initrd
- echo "[INFO]: runx: constructing the initrd"
-
- cp ${STAGING_DIR_HOST}/bin/busybox.nosuid ${WORKDIR}/busybox
- export QEMU_USER=`which qemu-${HOST_ARCH}`
- export BUSYBOX="${WORKDIR}/busybox"
- export CROSS_COMPILE="t"
+ bbnote "runx: constructing the initrd"
+ if [ -z "${RUNX_USE_INTERNAL_BUSYBOX}" ]; then
+ bbnote "runx: using external busybox"
+ cp ${STAGING_DIR_HOST}/bin/busybox.nosuid ${WORKDIR}/busybox
+ export QEMU_USER="`which qemu-${HOST_ARCH}` -L ${STAGING_BASELIBDIR}/.."
+ export BUSYBOX="${WORKDIR}/busybox"
+ export busybox="${WORKDIR}/busybox"
+ export CROSS_COMPILE="${TARGET_PREFIX}"
+ else
+ bbnote "runx: using internal busybox"
+ export CC="${CC}"
+ export LD="${LD}"
+ export CFLAGS="${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} ${CFLAGS}"
+ export LDFLAGS="${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH} ${LDFLAGS}"
+ export HOSTCFLAGS="${BUILD_CFLAGS} ${BUILD_LDFLAGS}"
+ export CROSS_COMPILE="${TARGET_PREFIX}"
+ fi
${S}/initrd/make-initrd
}
@@ -98,7 +120,7 @@ do_install() {
deltask compile_ptest_base
-FILES_${PN} += "${bindir}/* ${datadir}/runX/*"
+FILES:${PN} += "${bindir}/* ${datadir}/runX/*"
INHIBIT_PACKAGE_STRIP = "1"
-INSANE_SKIP_${PN} += "ldflags already-stripped"
+INSANE_SKIP:${PN} += "ldflags already-stripped"