summaryrefslogtreecommitdiffstats
path: root/import-layers/meta-virtualization/recipes-extended/xen/xen-vtpm.inc
diff options
context:
space:
mode:
Diffstat (limited to 'import-layers/meta-virtualization/recipes-extended/xen/xen-vtpm.inc')
-rw-r--r--import-layers/meta-virtualization/recipes-extended/xen/xen-vtpm.inc111
1 files changed, 0 insertions, 111 deletions
diff --git a/import-layers/meta-virtualization/recipes-extended/xen/xen-vtpm.inc b/import-layers/meta-virtualization/recipes-extended/xen/xen-vtpm.inc
deleted file mode 100644
index a94c7503d..000000000
--- a/import-layers/meta-virtualization/recipes-extended/xen/xen-vtpm.inc
+++ /dev/null
@@ -1,111 +0,0 @@
-# Copyright (C) 2017 Kurt Bodiker <kurt.bodiker@braintrust-us.com>
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require stubdom.inc
-
-DEPENDS = "\
- newlib \
- lwip \
- mini-os \
- polarssl \
- stubdom-gmp \
- tpm-emulator \
-"
-# These were unset by stubdom.inc to allow us to scope them per recipe
-export CC="${HOST_PREFIX}gcc --sysroot=${RECIPE_SYSROOT}"
-export CCLD="${HOST_PREFIX}gcc --sysroot=${RECIPE_SYSROOT}"
-export CXX="${HOST_PREFIX}g++ --sysroot=${RECIPE_SYSROOT}"
-export CPP="${HOST_PREFIX}gcc -E --sysroot=${RECIPE_SYSROOT}"
-export LD="${HOST_PREFIX}ld --sysroot=${RECIPE_SYSROOT}"
-export LD_LTO="${HOST_PREFIX}ld --sysroot=${RECIPE_SYSROOT}"
-export AS="${HOST_PREFIX}as"
-export AR="${HOST_PREFIX}ar"
-export NM="${HOST_PREFIX}nm"
-export RANLIB="${HOST_PREFIX}ranlib"
-export OBJDUMP="${HOST_PREFIX}objdump"
-export OBJCOPY="${HOST_PREFIX}objcopy"
-export STRIP="${HOST_PREFIX}strip"
-export STRINGS="${HOST_PREFIX}strings"
-export READELF="${HOST_PREFIX}readelf"
-
-
-# Required for some of the config stuff
-export STUBDOM_TARGETS="vtpm vtpmmgr"
-
-VTPM_CPPFLAGS = "\
- -I${RECIPE_SYSROOT}/cross-root-${GNU_TARGET_ARCH}/${GNU_TARGET_ARCH}-xen-elf/include/tpm-emulator/build \
- -I${RECIPE_SYSROOT}/cross-root-${GNU_TARGET_ARCH}/${GNU_TARGET_ARCH}-xen-elf/include/tpm-emulator/crypto \
- -I${RECIPE_SYSROOT}/cross-root-${GNU_TARGET_ARCH}/${GNU_TARGET_ARCH}-xen-elf/include/tpm-emulator/tpm \
- -I${RECIPE_SYSROOT}/cross-root-${GNU_TARGET_ARCH}/${GNU_TARGET_ARCH}-xen-elf/include/tpm-emulator \
-"
-
-# The includes from this Xen directory are not in the MiniOS repo, although they probably should be.
-STUBDOM_CPPFLAGS += "-isystem ${B}/include/"
-
-do_configure() {
-
- # GCC 7 fails linking header defined inlines if not declared 'static' or 'extern'
- # This appears to be fixed in Xen 4.10.0+, so let's look at version of Xen source
- # to determine if we need to modify inline declarations.
- #
- # 'echo -e' to enable interpretation of backslashes
- # 'sort -V' to natural sort version numbers
- # 'head -n1' to capture the first line of output from sort command
-
- if [ "${PV}" = "$(echo "${PV};4.9.999" | sed 's/;/\n/' | sort -V | head -n1)" ]; then
- sed -i "s/^inline/static inline/g" ${B}/vtpmmgr/*.h
- fi
-
- for i in AR AS NM RANLIB OBJDUMP OBJCOPY STRIP STRINGS READELF CXX LD LD_LTO CC CPP; do
- sed -i "s/^\($i\s\s*\).*=/\1?=/" ${MINIOS_SRCDIR}/Config.mk
- done
-
- # replicate the TARGETS_MINIOS target in xen/stubdom/Makefile
- for i in ${STUBDOM_TARGETS}; do
- [ -d ${B}/mini-os-${XEN_TARGET_ARCH}-$i ] ||
- for j in $(cd ${MINIOS_SRCDIR} ; find . -type d) ; do \
- mkdir -p ${B}/mini-os-${XEN_TARGET_ARCH}-$i/$j; \
- done
- done
-}
-
-do_compile() {
- ${MAKE} MINIOS_CONFIG="${B}/vtpm/minios.cfg" CONFIG_FILE="${B}/vtpm-minios-config.mk" DESTDIR= -C ${MINIOS_SRCDIR} config
- CPPFLAGS="`cat ${B}/vtpm-minios-config.mk` ${STUBDOM_CPPFLAGS} ${VTPM_CPPFLAGS}" CFLAGS="${STUBDOM_CFLAGS}" ${MAKE} -C ${B}/vtpm
- DEF_CPPFLAGS="${STUBDOM_CPPFLAGS}" \
- DEF_CFLAGS="${STUBDOM_CFLAGS}" \
- DEF_LDFLAGS="${STUBDOM_LDFLAGS}" \
- MINIOS_CONFIG="${B}/vtpm/minios.cfg" \
- ${MAKE} -C ${MINIOS_SRCDIR} \
- OBJ_DIR=${B}/mini-os-${XEN_TARGET_ARCH}-vtpm \
- APP_OBJS="${B}/vtpm/vtpm.a" \
- APP_LDLIBS="-ltpm -ltpm_crypto -lgmp -lpolarssl"
-
- ${MAKE} MINIOS_CONFIG="${B}/vtpmmgr/minios.cfg" CONFIG_FILE="${B}/vtpmmgr-minios-config.mk" DESTDIR= -C ${MINIOS_SRCDIR} config
- CPPFLAGS="`cat ${B}/vtpmmgr-minios-config.mk` ${STUBDOM_CPPFLAGS}" CFLAGS="${STUBDOM_CFLAGS}" ${MAKE} -C ${B}/vtpmmgr
- DEF_CPPFLAGS="${STUBDOM_CPPFLAGS}" \
- DEF_CFLAGS="${STUBDOM_CFLAGS}" \
- DEF_LDFLAGS="${STUBDOM_LDFLAGS}" \
- MINIOS_CONFIG="${B}/vtpmmgr/minios.cfg" \
- ${MAKE} -C ${MINIOS_SRCDIR} \
- OBJ_DIR=${B}/mini-os-${XEN_TARGET_ARCH}-vtpmmgr \
- APP_OBJS="${B}/vtpmmgr/vtpmmgr.a" \
- APP_LDLIBS="-lm -lpolarssl"
-}
-
-PACKAGES = "\
- ${PN}-vtpm-stubdom \
- ${PN}-vtpmmgr-stubdom \
-"
-FILES_${PN}-vtpm-stubdom="\
- ${libdir}/xen/boot/vtpm-stubdom.gz \
-"
-
-FILES_${PN}-vtpmmgr-stubdom="\
- ${libdir}/xen/boot/vtpmmgr-stubdom.gz \
-"
-
-do_install() {
- install -m 644 -D ${B}/mini-os-${XEN_TARGET_ARCH}-vtpm/mini-os.gz ${D}${libdir}/xen/boot/vtpm-stubdom.gz
- install -m 644 -D ${B}/mini-os-${XEN_TARGET_ARCH}-vtpmmgr/mini-os.gz ${D}${libdir}/xen/boot/vtpmmgr-stubdom.gz
-}
OpenPOWER on IntegriCloud