User space RDMA 'socket' protocol and libraries for establising RDMA communication. Includes both Infiniband specific and general RDMA communication management libraries for unreliable datagram, reliable connected, and multicast data transfers.
Signed-off-by: Yi Zhao <[email protected]> --- .../librdmacm/files/librdmacm-needs-libdl.patch | 21 +++++++++++ recipes-extended/librdmacm/librdmacm_1.0.17.bb | 41 ++++++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 recipes-extended/librdmacm/files/librdmacm-needs-libdl.patch create mode 100644 recipes-extended/librdmacm/librdmacm_1.0.17.bb diff --git a/recipes-extended/librdmacm/files/librdmacm-needs-libdl.patch b/recipes-extended/librdmacm/files/librdmacm-needs-libdl.patch new file mode 100644 index 0000000..bf15bea --- /dev/null +++ b/recipes-extended/librdmacm/files/librdmacm-needs-libdl.patch @@ -0,0 +1,21 @@ +Librdmacm links against libibverbs, and the current version of libibverbs +uses dlopen(), so librdmacm must also link against libdl. + +Upstream-Status: Pending + +Signed-off-by: Donn Seeley <[email protected]> +--- + configure.in | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/configure.in ++++ b/configure.in +@@ -39,6 +39,8 @@ AC_CHECK_SIZEOF(long) + dnl Checks for libraries + AC_CHECK_LIB(pthread, pthread_mutex_init, [], + AC_MSG_ERROR([pthread_mutex_init() not found. librdmacm requires libpthread.])) ++AC_CHECK_LIB(dl, dlsym, [], ++ AC_MSG_ERROR([dlsym() not found. librdmacm requires libdl.])) + if test "$disable_libcheck" != "yes"; then + AC_CHECK_LIB(ibverbs, ibv_get_device_list, [], + AC_MSG_ERROR([ibv_get_device_list() not found. librdmacm requires libibverbs.])) diff --git a/recipes-extended/librdmacm/librdmacm_1.0.17.bb b/recipes-extended/librdmacm/librdmacm_1.0.17.bb new file mode 100644 index 0000000..ba022b0 --- /dev/null +++ b/recipes-extended/librdmacm/librdmacm_1.0.17.bb @@ -0,0 +1,41 @@ +SUMMARY = "Userspace RDMA Connection Manager" +DESCRIPTION = "\ +User space RDMA 'socket' protocol and libraries for establising RDMA\ +communication. Includes both Infiniband specific and general RDMA\ +communication management libraries for unreliable datagram, reliable\ +connected, and multicast data transfers.\ +Also includes ACM (communication management assistant) service." + +HOMEPAGE = "http://www.openfabrics.org/downloads/rdmacm/" +SECTION = "libs/devel" + +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=39cc3044d68741f9005da73e9b92db95" + +DEPENDS = "libibverbs" + +# Repo is at http://git.openfabrics.org/git?p=~shefty/librdmacm.git +SRC_URI = "http://www.openfabrics.org/downloads/rdmacm/${BPN}-${PV}.tar.gz \ + file://librdmacm-needs-libdl.patch" + +SRC_URI[md5sum] = "da6fad887e9c24cb01b74b75f8449cb1" +SRC_URI[sha256sum] = "9381e1bf2c7079fc257b8eee74e731d3e7eec70e539bb4245084a7b05aeecb2a" + +inherit autotools + +# Allow plug-in symlinks. +INSANE_SKIP_${PN} += "dev-so" + +PACKAGES += "${PN}-utils" +FILES_${PN} = "${libdir}/*.so.* ${libdir}/rsocket/*.so*" +FILES_${PN}-utils = "${bindir}" +FILES_${PN}-staticdev += "${libdir}/rsocket/librspreload.a" +FILES_${PN}-dbg += "${libdir}/rsocket/.debug" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind," + +do_install_append() { + rm -f ${D}${libdir}/librdmacm.la + rm -f ${D}${libdir}/rsocket/librspreload.la +} -- 2.7.4 -- _______________________________________________ meta-virtualization mailing list [email protected] https://lists.yoctoproject.org/listinfo/meta-virtualization
