Signed-off-by: Alistair Francis <[email protected]> --- v2: - Fix fortify source compile error
...c.cfg-Specify-the-host-when-building.patch | 29 +++++++++++ ...0002-Makefile-Don-t-install-the-docs.patch | 26 ++++++++++ meta-oe/recipes-extended/pmdk/pmdk_1.4.1.bb | 52 +++++++++++++++++++ 3 files changed, 107 insertions(+) create mode 100644 meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch create mode 100644 meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch create mode 100644 meta-oe/recipes-extended/pmdk/pmdk_1.4.1.bb diff --git a/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch b/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch new file mode 100644 index 000000000..747538b0c --- /dev/null +++ b/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch @@ -0,0 +1,29 @@ +From 2a22dc96c3bbb5c9bbcc008f58d4f5c64e3d19e6 Mon Sep 17 00:00:00 2001 +From: Alistair Francis <[email protected]> +Date: Mon, 23 Jul 2018 11:23:39 -0700 +Subject: [PATCH] jemalloc/jemalloc.cfg: Specify the host when building + jemalloc + +To avoid this error: + configure: error: cannot run C compiled programs. + If you meant to cross compile, use `--host'. +when cross compiling specify the host when configuring jemalloc. + +Signed-off-by: Alistair Francis <[email protected]> +Upstream-Status: Inappropriate [configuration] +--- + src/jemalloc/jemalloc.cfg | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/jemalloc/jemalloc.cfg b/src/jemalloc/jemalloc.cfg +index 196129de6..79ebbab1c 100644 +--- a/src/jemalloc/jemalloc.cfg ++++ b/src/jemalloc/jemalloc.cfg +@@ -3,3 +3,4 @@ + --with-private-namespace=je_vmem_ + --disable-xmalloc + --disable-munmap ++--host=${HOST_SYS} +-- +2.17.1 + diff --git a/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch b/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch new file mode 100644 index 000000000..bd1b97c24 --- /dev/null +++ b/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch @@ -0,0 +1,26 @@ +From 460a96e390cb80278784cfe36629e280fe7ffef7 Mon Sep 17 00:00:00 2001 +From: Alistair Francis <[email protected]> +Date: Mon, 23 Jul 2018 11:31:17 -0700 +Subject: [PATCH 2/2] Makefile: Don't install the docs + +Signed-off-by: Alistair Francis <[email protected]> +Upstream-Status: Inappropriate [disable feature] +--- + Makefile | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 224a315f6..ce7f84afb 100644 +--- a/Makefile ++++ b/Makefile +@@ -144,7 +144,6 @@ rpm dpkg: pkg-clean source + + install uninstall: + $(MAKE) -C src $@ +- $(MAKE) -C doc $@ + + .PHONY: all clean clobber test check cstyle check-license install uninstall\ + source rpm dpkg pkg-clean pcheck check-remote format doc $(SUBDIRS) +-- +2.17.1 + diff --git a/meta-oe/recipes-extended/pmdk/pmdk_1.4.1.bb b/meta-oe/recipes-extended/pmdk/pmdk_1.4.1.bb new file mode 100644 index 000000000..e4d4fcb4f --- /dev/null +++ b/meta-oe/recipes-extended/pmdk/pmdk_1.4.1.bb @@ -0,0 +1,52 @@ +SUMMARY = "Persistent Memory Development Kit" +DESCRIPTION = "Persistent Memory Development Kit" +HOMEPAGE = "http://pmem.io" +SECTION = "libs" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://LICENSE;md5=7db1106255a1baa80391fd2e21eebab7" +DEPENDS = "ndctl" + +SRC_URI = "https://github.com/pmem/${BPN}/archive/${PV}.tar.gz \ + file://0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch \ + file://0002-Makefile-Don-t-install-the-docs.patch \ + file://0003-Makefile-Don-t-build-the-examples.patch \ + " + +SRC_URI[md5sum] = "d9a7b3f1059ffd54b4c92e38329fe69e" +SRC_URI[sha256sum] = "e11cfbbdf0773fb5965211e18044531f442ad1e6d6726f1bac8a6dcc0e092622" + +inherit autotools-brokensep pkgconfig + +# Fix jemalloc error: +# | configure: error: cannot run C compiled programs. +# | If you meant to cross compile, use `--host'. +# +# Also fix #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp] +EXTRA_OEMAKE = "HOST_SYS='${HOST_SYS}' EXTRA_CFLAGS='-O'" + +do_install() { + oe_runmake PREFIX=${prefix} DESTDIR=${D} install + + # Copy these into the standard directories + install -d ${D}${bindir}/ + mv ${D}/usr/local/bin/pmempool ${D}${bindir}/ + mv ${D}/usr/local/bin/daxio ${D}${bindir}/ + + install -d ${D}${libdir} + mv ${D}/usr/local/lib/*so* ${D}${libdir}/ + + install -d ${D}${libdir}/pkgconfig + mv ${D}/usr/local/lib/pkgconfig/*.pc ${D}${libdir}/pkgconfig/ + + install -d ${D}${includedir} + mv ${D}/usr/local/include/* ${D}${includedir}/ + + # Remove uneeded files + rm -rf ${D}/usr/local/ +} + +# Include these by default otherwise the SDK is not very useful +FILES_${PN} += "${bindir}/pmempool ${bindir}/daxio" +FILES_${PN} += "${libdir}/*so*" +FILES_${PN} += "${libdir}/pkgconfig/*.pc" +FILES_${PN} += "${includedir}/libpmemobj++/* ${includedir}/libpmemobj/*" -- 2.17.1 -- _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-devel
