[meta-virtualization] [PATCH v4 6/8] xen: GMP recipe for Xen stubdoms
Kurt Bodiker
kurt.bodiker at braintrust-us.com
Fri Apr 27 08:12:09 PDT 2018
GMP is a fast precision arithmetic library targeted for cryptographic
applications. This GMP recipe creates a static library that is
cross-compiled against that is cross-compiled against MiniOS, Xen, LWIP,
Newlib, and PolarSSL headers and subsquently used during the
cross-compilation and linking of the TPM Emulator and the Xen vTPM and
vTPM Manager stubdomains.
Signed-off-by: Kurt Bodiker <kurt.bodiker at braintrust-us.com>
---
Changes in v4:
- none
Changes in v3:
- Removed GMPEXT/ABI definition and usage because it's locked to 64-bit
- change cross-root-${XEN_TARGET_ARCH} to cross-root-${GNU_TARGET_ARCH}
Changes in v2:
- none
---
recipes-extended/xen/stubdom-gmp.inc | 37 +++++++++++++++++++++++++++++++
recipes-extended/xen/stubdom-gmp_4.3.2.bb | 20 +++++++++++++++++
2 files changed, 57 insertions(+)
create mode 100644 recipes-extended/xen/stubdom-gmp.inc
create mode 100644 recipes-extended/xen/stubdom-gmp_4.3.2.bb
diff --git a/recipes-extended/xen/stubdom-gmp.inc b/recipes-extended/xen/stubdom-gmp.inc
new file mode 100644
index 0000000..ef6473d
--- /dev/null
+++ b/recipes-extended/xen/stubdom-gmp.inc
@@ -0,0 +1,37 @@
+# Copyright (C) 2017 Kurt Bodiker <kurt.bodiker at braintrust-us.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+require stubdom.inc
+
+DEPENDS += "\
+ newlib \
+"
+
+do_configure() {
+ # need to modify prefix here during configure otherwise OE-level variables
+ # (prefix, libdir, includedir, etc...) defined in stubdom.inc get messed up
+ CPPFLAGS="-isystem ${RECIPE_SYSROOT}/cross-root-${GNU_TARGET_ARCH}/${GNU_TARGET_ARCH}-xen-elf/include ${STUBDOM_CPPFLAGS}" \
+ CFLAGS="${STUBDOM_CFLAGS}" \
+ CC="${HOST_PREFIX}gcc --sysroot=${RECIPE_SYSROOT}" \
+ ${S}/configure \
+ --disable-shared \
+ --enable-static \
+ --disable-fft \
+ --without-readline \
+ --with-gnu-ld \
+ --prefix=${prefix}/${GNU_TARGET_ARCH}-xen-elf \
+ --libdir=${libdir} \
+ --build=`${HOST_PREFIX}gcc -dumpmachine` \
+ --host=${GNU_TARGET_ARCH}-xen-elf
+
+ sed -i 's/#define HAVE_OBSTACK_VPRINTF 1/\/\/#define HAVE_OBSTACK_VPRINTF 1/' ${S}/config.h
+}
+
+do_compile() {
+ ${MAKE}
+}
+
+do_install() {
+ ${MAKE} DESTDIR=${D} install
+ rm -rf ${D}${prefix}/${GNU_TARGET_ARCH}-xen-elf/share
+}
diff --git a/recipes-extended/xen/stubdom-gmp_4.3.2.bb b/recipes-extended/xen/stubdom-gmp_4.3.2.bb
new file mode 100644
index 0000000..d9a2adb
--- /dev/null
+++ b/recipes-extended/xen/stubdom-gmp_4.3.2.bb
@@ -0,0 +1,20 @@
+# Copyright (C) 2017 Kurt Bodiker <kurt.bodiker at braintrust-us.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+DESCRIPTION = "GMP library for Xen vTPM's."
+HOMEPAGE = "http://gmp"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+ file://COPYING.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \
+"
+
+SRC_URI = "\
+ https://gmplib.org/download/gmp/archive/gmp-${PV}.tar.bz2 \
+"
+SRC_URI[md5sum] = "dd60683d7057917e34630b4a787932e8"
+SRC_URI[sha256sum] = "936162c0312886c21581002b79932829aa048cfaf9937c6265aeaa14f1cd1775"
+
+S="${WORKDIR}/gmp-${PV}"
+B="${S}"
+
+require stubdom-gmp.inc
--
2.14.2
--
*This email and all attachments are considered confidential and the
proprietary information of BrainTrust Holdings. Unauthorized disclosure is
prohibited. *
More information about the meta-virtualization
mailing list