From patchwork Mon Jan 22 16:00:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Github ODP bot X-Patchwork-Id: 125442 Delivered-To: patch@linaro.org Received: by 10.46.66.141 with SMTP id h13csp1232085ljf; Mon, 22 Jan 2018 08:03:56 -0800 (PST) X-Google-Smtp-Source: AH8x224vw6WSkaHFe5j2yP3hls3gVBalCQk7UpObBWfazr3bZ+GoROpEI7AE1m02UA+WewAmYj3f X-Received: by 10.129.93.139 with SMTP id r133mr7991588ywb.422.1516637036559; Mon, 22 Jan 2018 08:03:56 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516637036; cv=none; d=google.com; s=arc-20160816; b=t8Jo+ArcostFNf8pIjcIXd8Z25z+fdaVlG4cye2C/nrDDbGfd2AgbXVip2aWA4ILHG xMYHkIMbtJ/z4ahQWQC9b9sb30FcwT+Y2SmLhX87hDfFHvnADnPfS4PuQGvDpOLlaHoT Rg2hx9zGROVqbej+Q7ApgzW8ugXjZen4ITK2a/Poo73wBpcV4rJji+Wr2J+lk8EtynDa zQaoBPwzRqqSN79hmIS+jVkHIyRHz6qqvEIozSBxQSpmn7lCaBkXKSliCc11Da8e2KZE uBaCQuiKgBB/A6VMNh9ew7PJeSZcOHTaqbPIvBhCzf1smg/AQScS+deF6xoKahSP41AZ BroQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:github-pr-num :references:in-reply-to:message-id:date:to:from:delivered-to :arc-authentication-results; bh=OmMzKIACCoRb0LwW16UzSlh++esv1D1qmJyUmdp8IVI=; b=hWxFpH/I6/7rSOQqsfF4T/+27UNtK2wktAj+b8xVafeQAcSxX2M+QnD5U4MqVkxRPv WuiY0dNRhuShamt/1Z4JHY3l04L/iaHqf3olUuNMgSXje7Q6dsuEoFtwyGf8K2BWfO0l qZwgPk1MffloL57Sz7LMYXaU4OaOg2/F1bnxZi29zkiXLMzDJwndTMAuz7LQiIT5uwEy JUJm2DCLU7G3Qb+pS31iYWA6931dmwaGdraHEzzGg2yp5r3BIu3X5oxX0f/nCwev9iJb N5fHDjapASW9CfScCSlj6XIp57Wa2jcelw3C4yLlpJ7GbtoSz7s+ciy0gNVzF2kcwp8q pLHQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.197.127.237 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=yandex.ru Return-Path: Received: from lists.linaro.org (ec2-54-197-127-237.compute-1.amazonaws.com. [54.197.127.237]) by mx.google.com with ESMTP id j44si680688qtj.359.2018.01.22.08.03.56; Mon, 22 Jan 2018 08:03:56 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.197.127.237 as permitted sender) client-ip=54.197.127.237; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.197.127.237 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=yandex.ru Received: by lists.linaro.org (Postfix, from userid 109) id 4101B62776; Mon, 22 Jan 2018 16:03:56 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id 1AF80617DB; Mon, 22 Jan 2018 16:01:13 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 71128617F5; Mon, 22 Jan 2018 16:01:08 +0000 (UTC) Received: from forward105j.mail.yandex.net (forward105j.mail.yandex.net [5.45.198.248]) by lists.linaro.org (Postfix) with ESMTPS id 25DCA617DE for ; Mon, 22 Jan 2018 16:00:26 +0000 (UTC) Received: from mxback10o.mail.yandex.net (mxback10o.mail.yandex.net [IPv6:2a02:6b8:0:1a2d::24]) by forward105j.mail.yandex.net (Yandex) with ESMTP id B4A91183655 for ; Mon, 22 Jan 2018 19:00:24 +0300 (MSK) Received: from smtp4j.mail.yandex.net (smtp4j.mail.yandex.net [2a02:6b8:0:1619::15:6]) by mxback10o.mail.yandex.net (nwsmtp/Yandex) with ESMTP id 5mvQdYFMxJ-0OIOR5ej; Mon, 22 Jan 2018 19:00:24 +0300 Received: by smtp4j.mail.yandex.net (nwsmtp/Yandex) with ESMTPSA id Zz0EDOp1oY-0O0CECio; Mon, 22 Jan 2018 19:00:24 +0300 (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (Client certificate not present) From: Github ODP bot To: lng-odp@lists.linaro.org Date: Mon, 22 Jan 2018 19:00:22 +0300 Message-Id: <1516636822-25091-5-git-send-email-odpbot@yandex.ru> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1516636822-25091-1-git-send-email-odpbot@yandex.ru> References: <1516636822-25091-1-git-send-email-odpbot@yandex.ru> Github-pr-num: 416 Subject: [lng-odp] [PATCH v1 4/4] travis: test ODP with shared DPDK X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" From: Dmitry Eremin-Solenikov Add testcase compiling and running ODP with shared DPDK lib Signed-off-by: Dmitry Eremin-Solenikov --- /** Email created from pull request 416 (lumag:trav-dpdk-shared) ** https://github.com/Linaro/odp/pull/416 ** Patch: https://github.com/Linaro/odp/pull/416.patch ** Base sha: 3ce9d6ab16d064b0f83508e2f0b2e476d64b15e1 ** Merge commit sha: 03435fd2ad14f3faf8bb7e41c71ef9fc054b8662 **/ .travis.yml | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index f3babf359..f957ba36e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -75,6 +75,7 @@ env: - CONF="--enable-schedule-scalable" - CONF="--enable-dpdk-zero-copy" - CONF="--disable-static-applications" + - DPDK_SHARED="y" CONF="--disable-static-applications" - CROSS_ARCH="arm64" - CROSS_ARCH="armhf" CFLAGS="-march=armv7-a" - CROSS_ARCH="powerpc" @@ -207,7 +208,14 @@ install: esac - | if [ -n "$TARGET" ] ; then - if [ ! -f "dpdk/${TARGET}/lib/libdpdk.a" ] ; then + # force DPDK rebuild if it does not match shared/non-shared requirement + if [ -n "$DPDK_SHARED" -a ! -f "dpdk/${TARGET}/lib/libdpdk.so" ] ; then + rm -rf dpdk/"$TARGET" + fi + if [ -z "$DPDK_SHARED" -a ! -f "dpdk/${TARGET}/lib/libdpdk.a" ] ; then + rm -rf dpdk/"$TARGET" + fi + if [ ! -f "dpdk/${TARGET}/lib/libdpdk.a" -a ! -f "dpdk/${TARGET}/lib/libdpdk.so" ]; then git -c advice.detachedHead=false clone -q --depth=1 --single-branch --branch=v${DPDK_VERS} http://dpdk.org/git/dpdk dpdk pushd dpdk git log --oneline --decorate @@ -223,6 +231,11 @@ install: if test -n "${DPDK_MACHINE}" ; then sed -ri 's,(CONFIG_RTE_MACHINE=).*,\1"'${DPDK_MACHINE}'",' .config fi + if test -n "${DPDK_SHARED}" ; then + sed -ri 's,(CONFIG_RTE_BUILD_SHARED_LIB=).*,\1y,' .config + export LD_LIBRARY_PATH="`pwd`/${TARGET}:$LD_LIBRARY_PATH" + echo $LD_LIBRARY_PATH + fi if test -n "$CROSS_ARCH" ; then sed -ri -e 's,(CONFIG_RTE_EAL_IGB_UIO=).*,\1n,' .config sed -ri -e 's,(CONFIG_RTE_KNI_KMOD=).*,\1n,' .config @@ -267,11 +280,17 @@ script: - pushd $HOME - echo "Dynamic link.." - ${CC} ${CFLAGS} ${OLDPWD}/example/hello/odp_hello.c -o odp_hello_inst_dynamic `PKG_CONFIG_PATH=${HOME}/odp-install/lib/pkgconfig:${PKG_CONFIG_PATH} pkg-config --cflags --libs libodp-linux` - - echo "Static link.." - - ${CC} ${CFLAGS} ${OLDPWD}/example/hello/odp_hello.c -o odp_hello_inst_static `PKG_CONFIG_PATH=${HOME}/odp-install/lib/pkgconfig:${PKG_CONFIG_PATH} pkg-config --cflags --libs libodp-linux --static` -static - if [ -z "$CROSS_ARCH" ] ; then - LD_LIBRARY_PATH="${HOME}/odp-install/lib:$LD_LIBRARY_PATH" ./odp_hello_inst_dynamic ; - ./odp_hello_inst_static ; + LD_LIBRARY_PATH="${HOME}/odp-install/lib:$LD_LIBRARY_PATH" ./odp_hello_inst_dynamic ; + fi + - echo "Static link.." + - | + # it is not possible to do static linking if we only have shared DPDK library. Compiler complains about missing -ldpdk + if [ -z "$TARGET" -o -z "$DPDK_SHARED" ] ; then + ${CC} ${CFLAGS} ${OLDPWD}/example/hello/odp_hello.c -o odp_hello_inst_static `PKG_CONFIG_PATH=${HOME}/odp-install/lib/pkgconfig:${PKG_CONFIG_PATH} pkg-config --cflags --libs libodp-linux --static` -static || exit 1 + if [ -z "$CROSS_ARCH" ] ; then + ./odp_hello_inst_static || exit 1; + fi fi - popd - ccache -s