mirror of
git://git.yoctoproject.org/meta-freescale.git
synced 2025-07-05 05:14:44 +02:00

The series [1] changed the way sources are fetched/unpacked and S needs to follow that. Additionally for git repos it moved away from having 'git/' as the checkout directory. This has been partly tested by building weston based image for imx6/imx6ull/imx7/imx8/imx8mm/imx8mp/imx95 based images. E.g. none of the recipes specific for qoriq is built time tested. As walnascar is no longer compatible with master/whinlatter drop it from LAYERSERIES_COMPAT. [1] https://lore.kernel.org/openembedded-core/20250616095000.2918921-1-alex.kanavin@gmail.com/ Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
112 lines
3.9 KiB
BlitzBasic
112 lines
3.9 KiB
BlitzBasic
SUMMARY = "Jailhouse, i.MX fork"
|
|
HOMEPAGE = "https://github.com/siemens/jailhouse"
|
|
SECTION = "jailhouse"
|
|
LICENSE = "GPL-2.0-only"
|
|
|
|
LIC_FILES_CHKSUM = "file://COPYING;md5=9fa7f895f96bde2d47fd5b7d95b6ba4d \
|
|
file://tools/root-cell-config.c.tmpl;beginline=6;endline=33;md5=2825581c1666c44a17955dc574cfbfb3 \
|
|
file://include/jailhouse/hypercall.h;beginline=9;endline=36;md5=2825581c1666c44a17955dc574cfbfb3 \
|
|
file://include/jailhouse/cell-config.h;beginline=9;endline=36;md5=2825581c1666c44a17955dc574cfbfb3 \
|
|
file://include/arch/arm/asm/jailhouse_hypercall.h;beginline=9;endline=36;md5=2825581c1666c44a17955dc574cfbfb3 \
|
|
file://include/arch/arm64/asm/jailhouse_hypercall.h;beginline=9;endline=36;md5=2825581c1666c44a17955dc574cfbfb3 \
|
|
file://include/arch/x86/asm/jailhouse_hypercall.h;beginline=9;endline=36;md5=2825581c1666c44a17955dc574cfbfb3 \
|
|
file://driver/jailhouse.h;beginline=9;endline=36;md5=2825581c1666c44a17955dc574cfbfb3 \
|
|
"
|
|
|
|
PROVIDES = "jailhouse"
|
|
RPROVIDES:${PN} += "jailhouse"
|
|
|
|
SRCBRANCH = "lf-6.6.52_2.2.0"
|
|
SRCREV = "44dd492a745cd8b8313fb6c7c03fb45a36d70e8a"
|
|
|
|
IMX_JAILHOUSE_SRC ?= "git://github.com/nxp-imx/imx-jailhouse.git;protocol=https"
|
|
SRC_URI = "${IMX_JAILHOUSE_SRC};branch=${SRCBRANCH} \
|
|
file://arm-arm64-Makefile-Remove-march-option-from-Makefile.patch \
|
|
"
|
|
|
|
DEPENDS = " \
|
|
make-native \
|
|
python3-mako-native \
|
|
python3-mako \
|
|
dtc-native \
|
|
"
|
|
|
|
inherit module bash-completion deploy setuptools3
|
|
|
|
B = "${S}"
|
|
|
|
JH_ARCH = "arm64"
|
|
JH_DATADIR ?= "${datadir}/jailhouse"
|
|
CELL_DIR ?= "${JH_DATADIR}/cells"
|
|
CELLCONF_DIR ?= "${JH_DATADIR}/configs"
|
|
INMATES_DIR ?= "${JH_DATADIR}/inmates"
|
|
|
|
TUNE_CCARGS:remove:mx93-nxp-bsp = "-mcpu=cortex-a55"
|
|
|
|
EXTRA_OEMAKE += 'V=1'
|
|
EXTRA_OEMAKE += 'PYTHON=python3'
|
|
EXTRA_OEMAKE += 'LDFLAGS=""'
|
|
EXTRA_OEMAKE += 'CC="${CC}"'
|
|
EXTRA_OEMAKE += 'ARCH=${JH_ARCH}'
|
|
EXTRA_OEMAKE += 'CROSS_COMPILE=${TARGET_PREFIX}'
|
|
EXTRA_OEMAKE += 'KDIR=${STAGING_KERNEL_BUILDDIR}'
|
|
EXTRA_OEMAKE += 'MODLIB="${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}"'
|
|
EXTRA_OEMAKE += 'INSTALL_MOD_PATH=${D}${root_prefix}'
|
|
EXTRA_OEMAKE += 'firmwaredir=${nonarch_base_libdir}/firmware'
|
|
|
|
do_configure:prepend() {
|
|
if [ -d ${STAGING_DIR_HOST}/${CELLCONF_DIR} ];
|
|
then
|
|
cp "${STAGING_DIR_HOST}/${CELLCONF_DIR}/"*.c ${S}/configs/${ARCH}/
|
|
fi
|
|
}
|
|
|
|
do_compile:prepend() {
|
|
# explicity call make to build the kernel module and tools
|
|
oe_runmake
|
|
}
|
|
|
|
do_install:append() {
|
|
oe_runmake DESTDIR=${D} install
|
|
|
|
install -d ${D}${CELL_DIR}
|
|
install ${B}/configs/${JH_ARCH}/*.cell ${D}${CELL_DIR}/
|
|
|
|
install -d ${D}${INMATES_DIR}/tools/${JH_ARCH}
|
|
install ${B}/inmates/demos/${JH_ARCH}/*.bin ${D}${INMATES_DIR}
|
|
|
|
install -d ${D}${JH_DATADIR}/tools
|
|
install ${B}/tools/jailhouse-cell-linux ${D}${JH_DATADIR}/tools
|
|
install ${B}/tools/jailhouse-cell-stats ${D}${JH_DATADIR}/tools
|
|
install ${B}/tools/jailhouse-config-collect ${D}${JH_DATADIR}/tools
|
|
install ${B}/tools/jailhouse-config-create ${D}${JH_DATADIR}/tools
|
|
install ${B}/tools/jailhouse-gcov-extract ${D}${JH_DATADIR}/tools
|
|
install ${B}/tools/jailhouse-hardware-check ${D}${JH_DATADIR}/tools
|
|
install ${B}/inmates/tools/${JH_ARCH}/linux-loader.bin ${D}${INMATES_DIR}/tools/${JH_ARCH}
|
|
}
|
|
|
|
PACKAGE_BEFORE_PN = "pyjailhouse"
|
|
|
|
FILES:${PN} += "${nonarch_base_libdir}/firmware ${libexecdir} ${sbindir} ${JH_DATADIR}"
|
|
# Remove libdir/* appended by setuptools3-base.bbclass for module split to work correctly
|
|
FILES:${PN}:remove = "${libdir}/*"
|
|
FILES:pyjailhouse = "${PYTHON_SITEPACKAGES_DIR}"
|
|
|
|
RDEPENDS:${PN} += " \
|
|
pyjailhouse \
|
|
python3-curses \
|
|
python3-datetime \
|
|
python3-mmap \
|
|
"
|
|
|
|
RDEPENDS:pyjailhouse = " \
|
|
python3-core \
|
|
python3-ctypes \
|
|
python3-fcntl \
|
|
python3-shell \
|
|
"
|
|
|
|
INSANE_SKIP:${PN} = "ldflags"
|
|
|
|
COMPATIBLE_MACHINE = "(mx8m-nxp-bsp|mx8ulp-nxp-bsp|mx9-nxp-bsp)"
|