summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOla Redell <ola.redell@codiax.se>2019-05-27 12:22:55 +0200
committerOla Redell <ola.redell@codiax.se>2019-05-27 12:22:55 +0200
commit26424f0094e547faf73e432b852368224d0a7bbd (patch)
tree8a0a221a85ea58942908564a589d49f2580a826e
parent1ce5e94f1931acff1613b6888b7952fc189bb1c2 (diff)
parentd3c49e8ee7575581e661b2baea27d9ba5562850a (diff)
downloadmeta-jailhouse-26424f0094e547faf73e432b852368224d0a7bbd.tar.gz
jailhouse.inc/jailhouse-def: merged changes from master
-rw-r--r--recipes-jailhouse/jailhouse/jailhouse-defs.inc21
-rw-r--r--recipes-jailhouse/jailhouse/jailhouse.inc14
2 files changed, 8 insertions, 27 deletions
diff --git a/recipes-jailhouse/jailhouse/jailhouse-defs.inc b/recipes-jailhouse/jailhouse/jailhouse-defs.inc
index 0c8eb40..df39d40 100644
--- a/recipes-jailhouse/jailhouse/jailhouse-defs.inc
+++ b/recipes-jailhouse/jailhouse/jailhouse-defs.inc
@@ -2,24 +2,3 @@ JH_DATADIR ?= "${datadir}/jailhouse"
2CELL_DIR ?= "${JH_DATADIR}/cells" 2CELL_DIR ?= "${JH_DATADIR}/cells"
3CELLCONF_DIR ?= "${JH_DATADIR}/configs" 3CELLCONF_DIR ?= "${JH_DATADIR}/configs"
4INMATES_DIR ?= "${JH_DATADIR}/inmates" 4INMATES_DIR ?= "${JH_DATADIR}/inmates"
5
6# Set jailhouse architecture JH_ARCH variable
7#
8# return value must match one of architectures supported by jailhouse
9#
10valid_jh_archs = "x86 arm"
11
12def map_jh_arch(a, d):
13 import re
14
15 valid_jh_archs = d.getVar('valid_jh_archs', True).split()
16
17 if re.match('(i.86|athlon|x86.64)$', a): return 'x86'
18 elif re.match('armeb$', a): return 'arm'
19 elif re.match('aarch64$', a): return 'arm64'
20 elif re.match('aarch64_be$', a): return 'arm64'
21 elif a in valid_jh_archs: return a
22 else:
23 bb.error("cannot map '%s' to a jailhouse supported architecture" % a)
24
25JH_ARCH = "${@map_jh_arch(d.getVar('TARGET_ARCH', True), d)}"
diff --git a/recipes-jailhouse/jailhouse/jailhouse.inc b/recipes-jailhouse/jailhouse/jailhouse.inc
index a499456..e304c4c 100644
--- a/recipes-jailhouse/jailhouse/jailhouse.inc
+++ b/recipes-jailhouse/jailhouse/jailhouse.inc
@@ -19,7 +19,7 @@ DEPENDS = "virtual/kernel make-native \
19S ="${WORKDIR}/git" 19S ="${WORKDIR}/git"
20 20
21require jailhouse-defs.inc 21require jailhouse-defs.inc
22inherit module pythonnative bash-completion setuptools 22inherit module pythonnative bash-completion setuptools kernel-arch
23 23
24JH_CONFIG ?= "${S}/ci/jailhouse-config-x86.h" 24JH_CONFIG ?= "${S}/ci/jailhouse-config-x86.h"
25JH_CONFIG_x86 ?= "${S}/ci/jailhouse-config-x86.h" 25JH_CONFIG_x86 ?= "${S}/ci/jailhouse-config-x86.h"
@@ -32,7 +32,10 @@ do_configure() {
32 cp "${STAGING_DIR_HOST}/${CELLCONF_DIR}/"*.c ${S}/configs/ 32 cp "${STAGING_DIR_HOST}/${CELLCONF_DIR}/"*.c ${S}/configs/
33 fi 33 fi
34 34
35 cp -av ${JH_CONFIG} ${S}/include/jailhouse/config.h 35 if [ ! -z ${JH_CONFIG} ];
36 then
37 cp -av ${JH_CONFIG} ${S}/include/jailhouse/config.h
38 fi
36} 39}
37 40
38USER_SPACE_CFLAGS = '${CFLAGS} -DLIBEXECDIR=\\\"${libexecdir}\\\" \ 41USER_SPACE_CFLAGS = '${CFLAGS} -DLIBEXECDIR=\\\"${libexecdir}\\\" \
@@ -47,8 +50,8 @@ TOOLS_OBJ_DIR = "${S}/tools"
47export LDFLAGS = "" 50export LDFLAGS = ""
48 51
49do_compile() { 52do_compile() {
50 oe_runmake V=1 \ 53 oe_runmake V=0 \
51 ARCH=${JH_ARCH} CROSS_COMPILE=${TARGET_PREFIX} \ 54 CROSS_COMPILE=${TARGET_PREFIX} \
52 KDIR=${STAGING_KERNEL_BUILDDIR} 55 KDIR=${STAGING_KERNEL_BUILDDIR}
53 56
54 distutils_do_compile 57 distutils_do_compile
@@ -68,7 +71,6 @@ do_compile() {
68 71
69do_install() { 72do_install() {
70 oe_runmake \ 73 oe_runmake \
71 ARCH=${JH_ARCH} \
72 CROSS_COMPILE=${TARGET_PREFIX} \ 74 CROSS_COMPILE=${TARGET_PREFIX} \
73 KDIR=${STAGING_KERNEL_BUILDDIR} \ 75 KDIR=${STAGING_KERNEL_BUILDDIR} \
74 DESTDIR=${D} install 76 DESTDIR=${D} install
@@ -79,7 +81,7 @@ do_install() {
79 install ${B}/configs/${JH_ARCH}/*.cell ${D}${CELL_DIR}/ 81 install ${B}/configs/${JH_ARCH}/*.cell ${D}${CELL_DIR}/
80 82
81 install -d ${D}${INMATES_DIR} 83 install -d ${D}${INMATES_DIR}
82 install ${B}/inmates/demos/${JH_ARCH}/*.bin ${D}${INMATES_DIR} 84 install ${B}/inmates/demos/${ARCH}/*.bin ${D}${INMATES_DIR}
83} 85}
84 86
85PACKAGE_BEFORE_PN = "kernel-module-jailhouse" 87PACKAGE_BEFORE_PN = "kernel-module-jailhouse"