From patchwork Tue Jan 23 01:00:11 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: 125467 Delivered-To: patch@linaro.org Received: by 10.46.66.141 with SMTP id h13csp1456953ljf; Mon, 22 Jan 2018 17:01:29 -0800 (PST) X-Google-Smtp-Source: AH8x226qzKvkenXWIKbEyPowrGWGdOWUrNasA0BUcvBsqA3OnvCOzkIwyLQYHXiN0UqPTZtMW8l6 X-Received: by 10.200.36.67 with SMTP id d3mr1093039qtd.329.1516669288891; Mon, 22 Jan 2018 17:01:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516669288; cv=none; d=google.com; s=arc-20160816; b=p74d+V05tOfMkGDgcUaXzNsHmNOAp9Vcd8JNPCn2AlPdTHxUY4jZu1mryXlYpTY9I2 7Y/4jHAG9eeqwpjjv9UZkgqgf1TgzAjuCGi/9eRPL4LGovz7U+/Ry8+akIM/MBiQYUmD JLzga/Q38oPEX+lm4pdQShcs7UhGdJptXny69rU1ojUIz4sC+O1E4YKMgJBn609WAJRV cF1i8s6ZfNq1GAMZ1bVzHnPt45Ha0OalxOjNTQSQib36pUhiiRKH5fM1LLVd4rozIxy4 EQUBoLDjBxIHY4kkOyYfbFnVlR4fWJFm1g7KNFn6TpDTH6TX5MnXi9WFm+k0PDOzjrQh xlOw== 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=7E4OY1rnvuOmXFA5Uqe0cV85iGdiVev6gNNeYt1/2Tg=; b=sGPOeCqqrLgLo1MAkNpgOKWvw/UNra1iB2q+ghRQ4KQLOguxeulz6xA6au0Cx4ogi6 vLgYxHPgYcW6YlOhyWFXlvFrvi4jJG101/At7na/7AFri/VeEBhorkyGxDt6RHqbJoQr gtXexHSMl/XPv0LGD8wus2kdHvWsBfXql4K3jcQloZKB5w9VwFZoS5DWnNypl/rDSmJ5 mEA2nFaRvwm5kjGdJW89GHEvAp0calxTEY38Y8Na7Uc4bVfi/ndOKfj8uk5oAzw8iZGZ s15PPa7bf53ML/w4mJe4LQGasLfd8LTY9HsZfQHHmWcJ0Nil+IAaaj1W3v2erv+AKE0H MaAQ== 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 s7si3318355qte.276.2018.01.22.17.01.28; Mon, 22 Jan 2018 17:01:28 -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 913DA61750; Tue, 23 Jan 2018 01:01:28 +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_H2 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 1D19261758; Tue, 23 Jan 2018 01:00:24 +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 BF6FD61719; Tue, 23 Jan 2018 01:00:18 +0000 (UTC) Received: from forward104o.mail.yandex.net (forward104o.mail.yandex.net [37.140.190.179]) by lists.linaro.org (Postfix) with ESMTPS id 7376C616D9 for ; Tue, 23 Jan 2018 01:00:16 +0000 (UTC) Received: from mxback4j.mail.yandex.net (mxback4j.mail.yandex.net [IPv6:2a02:6b8:0:1619::10d]) by forward104o.mail.yandex.net (Yandex) with ESMTP id B34FE701847 for ; Tue, 23 Jan 2018 04:00:14 +0300 (MSK) Received: from smtp4j.mail.yandex.net (smtp4j.mail.yandex.net [2a02:6b8:0:1619::15:6]) by mxback4j.mail.yandex.net (nwsmtp/Yandex) with ESMTP id 522HkDsVSp-0Elu28Aq; Tue, 23 Jan 2018 04:00:14 +0300 Received: by smtp4j.mail.yandex.net (nwsmtp/Yandex) with ESMTPSA id pjfrB0P71F-0EB0Z8o9; Tue, 23 Jan 2018 04:00:14 +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: Tue, 23 Jan 2018 04:00:11 +0300 Message-Id: <1516669211-12088-4-git-send-email-odpbot@yandex.ru> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1516669211-12088-1-git-send-email-odpbot@yandex.ru> References: <1516669211-12088-1-git-send-email-odpbot@yandex.ru> Github-pr-num: 416 Subject: [lng-odp] [PATCH v2 3/3] 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: b122176ee59494dd957f0f5ff41d4b55a1477e13 ** Merge commit sha: 91127f4ec35dafb800211b84e2fa8992d7b6d216 **/ .travis.yml | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index fca06a0d2..0f39a85fe 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" @@ -198,7 +199,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 @@ -214,6 +222,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 @@ -258,11 +271,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