diff options
Diffstat (limited to 'recipes-extended/dpdk/dpdk_16.07.bb')
| -rw-r--r-- | recipes-extended/dpdk/dpdk_16.07.bb | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/recipes-extended/dpdk/dpdk_16.07.bb b/recipes-extended/dpdk/dpdk_16.07.bb new file mode 100644 index 000000000..380ec396e --- /dev/null +++ b/recipes-extended/dpdk/dpdk_16.07.bb | |||
| @@ -0,0 +1,85 @@ | |||
| 1 | DESCRIPTION = "Data Plane Development Kit" | ||
| 2 | HOMEPAGE = "http://dpdk.org" | ||
| 3 | LICENSE = "BSD & LGPLv2 & GPLv2" | ||
| 4 | LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=751419260aa954499f7abaabaa882bbe" | ||
| 5 | |||
| 6 | DEPENDS += "virtual/kernel openssl" | ||
| 7 | RDEPENDS_${PN} = "bash python" | ||
| 8 | RDEPENDS_${PN}-examples = "bash python-core" | ||
| 9 | |||
| 10 | inherit module | ||
| 11 | |||
| 12 | SRC_URI = "git://git.freescale.com/ppc/sdk/dpdk.git;nobranch=1 \ | ||
| 13 | file://add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch \ | ||
| 14 | file://a.patch \ | ||
| 15 | " | ||
| 16 | SRCREV = "34b69f9ab1af11db43df2d616be1c1f20feef70b" | ||
| 17 | |||
| 18 | S = "${WORKDIR}/git" | ||
| 19 | |||
| 20 | DPAA_VER ?= "dpaa2" | ||
| 21 | DPAA_VER_fsl-lsch2 = "dpaa" | ||
| 22 | export RTE_TARGET = "${ARCH}-${DPAA_VER}-linuxapp-gcc" | ||
| 23 | |||
| 24 | EXTRA_OEMAKE += 'ARCH="${ARCH}" CROSS="${TARGET_PREFIX}" \ | ||
| 25 | CPU_CFLAGS="--sysroot=${STAGING_DIR_HOST}" RTE_SDK="${S}" \ | ||
| 26 | OPENSSL_PATH="${STAGING_DIR_HOST}" RTE_KERNELDIR="${STAGING_KERNEL_DIR}" \ | ||
| 27 | RTE_KERNELDIR_OUT="${STAGING_KERNEL_BUILDDIR}" \ | ||
| 28 | ' | ||
| 29 | |||
| 30 | do_configure[noexec] = "1" | ||
| 31 | |||
| 32 | do_compile[depends] += "virtual/kernel:do_shared_workdir" | ||
| 33 | do_compile() { | ||
| 34 | oe_runmake O="${RTE_TARGET}" T="${RTE_TARGET}" config | ||
| 35 | } | ||
| 36 | |||
| 37 | do_install() { | ||
| 38 | unset LDFLAGS TARGET_LDFLAGS BUILD_LDFLAGS | ||
| 39 | |||
| 40 | oe_runmake EXTRA_LDFLAGS="-L${STAGING_LIBDIR} --hash-style=gnu" T="${RTE_TARGET}" DESTDIR="${D}" install | ||
| 41 | |||
| 42 | # Build and install the DPDK examples | ||
| 43 | for APP in examples/l2fwd examples/l3fwd examples/l2fwd-crypto examples/ipsec-secgw examples/kni; do | ||
| 44 | oe_runmake EXTRA_LDFLAGS="-L${STAGING_LIBDIR} --hash-style=gnu" -C ${APP} | ||
| 45 | |||
| 46 | [ ! -d ${D}/${bindir}/dpdk-example ] && install -d 0644 ${D}/${bindir}/dpdk-example | ||
| 47 | install -m 0755 ${S}/examples/`basename ${APP}`/build/`basename ${APP}` \ | ||
| 48 | ${D}/${bindir}/dpdk-example/ | ||
| 49 | done | ||
| 50 | install -m 0755 ${S}/${RTE_TARGET}/app/testpmd ${D}/${bindir}/dpdk-example/ | ||
| 51 | rm -fr ${D}/lib/modules/* | ||
| 52 | install -d ${D}/lib/modules/${KERNEL_VERSION}/dpdk | ||
| 53 | install -m 0755 ${S}/${RTE_TARGET}/kmod/rte_kni.ko ${D}/lib/modules/${KERNEL_VERSION}/dpdk/ | ||
| 54 | |||
| 55 | sed -i 's#/bin/echo#/bin/bash#' ${D}/${datadir}/scripts/load-devel-config.sh | ||
| 56 | # rm ${S}/${RTE_TARGET}/app/dpdk-pmdinfogen | ||
| 57 | rm ${D}/${datadir}/${RTE_TARGET}/app/dpdk-pmdinfogen | ||
| 58 | |||
| 59 | chown root:root -R ${D} | ||
| 60 | } | ||
| 61 | |||
| 62 | PACKAGE_ARCH = "${MACHINE_ARCH}" | ||
| 63 | |||
| 64 | PACKAGES += "${PN}-examples" | ||
| 65 | |||
| 66 | FILES_${PN} += "${datadir}/tools /usr/bin/* /usr/sbin/*" | ||
| 67 | FILES_${PN}-dbg += "${bindir}/dpdk-example/.debug \ | ||
| 68 | ${datadir}/examples/kni/build/.debug \ | ||
| 69 | ${datadir}/examples/kni/build/app/.debug \ | ||
| 70 | ${datadir}/examples/l2fwd/build/.debug \ | ||
| 71 | ${datadir}/examples/l2fwd/build/app/.debug \ | ||
| 72 | ${datadir}/examples/l2fwd-crypto/build/.debug \ | ||
| 73 | ${datadir}/examples/l2fwd-crypto/build/app/.debug \ | ||
| 74 | ${datadir}/examples/l3fwd/build/.debug \ | ||
| 75 | ${datadir}/examples/l3fwd/build/app/.debug \ | ||
| 76 | ${datadir}/examples/ipsec-secgw/build/.debug \ | ||
| 77 | ${datadir}/examples/ipsec-secgw/build/app/.debug \ | ||
| 78 | " | ||
| 79 | FILES_${PN}-dev += "${datadir}/mk ${datadir}/scripts \ | ||
| 80 | ${datadir}/${RTE_TARGET} \ | ||
| 81 | ${includedir} \ | ||
| 82 | " | ||
| 83 | FILES_${PN}-examples += "${datadir}/examples" | ||
| 84 | |||
| 85 | COMPATIBLE_MACHINE = "(ls2080ardb|ls2084ardb|ls2088a|ls1043a|ls1046a)" | ||
