From patchwork Wed Aug 16 12:00:05 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Github ODP bot X-Patchwork-Id: 110222 Delivered-To: patch@linaro.org Received: by 10.182.109.195 with SMTP id hu3csp744163obb; Wed, 16 Aug 2017 05:02:46 -0700 (PDT) X-Received: by 10.55.69.73 with SMTP id s70mr1728573qka.291.1502884966358; Wed, 16 Aug 2017 05:02:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1502884966; cv=none; d=google.com; s=arc-20160816; b=A3KOhualEWhKYXTRsHMGb39KtwROtrAbOAlPzkXgNrkoyL/6F2V+XdstD5aummli1L uhOUZ5LOsPd8Hnj55/HVq2Ti3bv43utd5ktD1Z8VefdXJZgV4QTUoRAALW+iR2Qm29H1 SHHOYT8Smlk3xo/gS43i4rnxPtBpKKmPjIgbZl2QehUufNAzdkoSjkJJSIR3RjbC2fxx 2vOwcV/kuNYrwjh+f/SfiYoSTS3r2hU2l2lZom6oOLdJwEwTaUyl/GdOJ/1vMZr1L8vm sLRBOWwuqnnRR641MQtpRXEhChzMCMWdd8M6Tqv3OopjWYuEGxatWBFcg6wABHOOEbAT sMbg== 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=xxF8ypFFMHZIfqksXptqSpdfreILjlvtXoxoAohNJbg=; b=hkEs7JByfJ6yWXgpo4VOP+vlDLmjjNZ8wU0meXAmAOXFkglnF0Rx4iDCY1lw4UOc4B 9NjYY31hgCadzWGlnClRMj32mGf7UeCsZEQYwizIcYyoqyNG7AS5diSyV4cpJo0w9Pmr sZvCPZyrQvZVGtL7/BvNeOiUmxQUwIPGutXdmYjZfm2X+/OYE5AMfhMvfx52WbEkcltA J5TKwCetYkCdJJsBpKKLzV/Irmfv/VwQozgyugXr/b6EZ4h5WN+lrUGRWuzPY2IMwxRo k1K3Qdr9UUwImwb2loypoSlHU2GCgsRw2hjeYfu1acbZIh2H37NPG4a1JgSZVK1fsRyR S7aQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 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 (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id b6si673247qte.178.2017.08.16.05.02.45; Wed, 16 Aug 2017 05:02:46 -0700 (PDT) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 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 AC86E659D2; Wed, 16 Aug 2017 12:02:45 +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=-0.2 required=5.0 tests=BAYES_00,FREEMAIL_FROM, URIBL_BLOCKED, URIBL_SBL, URIBL_SBL_A 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 1D135636AA; Wed, 16 Aug 2017 12:01:40 +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 5DA0A648CD; Wed, 16 Aug 2017 12:01:30 +0000 (UTC) Received: from forward104p.mail.yandex.net (forward104p.mail.yandex.net [77.88.28.107]) by lists.linaro.org (Postfix) with ESMTPS id 375C665C15 for ; Wed, 16 Aug 2017 12:00:33 +0000 (UTC) Received: from mxback10g.mail.yandex.net (mxback10g.mail.yandex.net [IPv6:2a02:6b8:0:1472:2741:0:8b7:171]) by forward104p.mail.yandex.net (Yandex) with ESMTP id C13C6185C15 for ; Wed, 16 Aug 2017 15:00:31 +0300 (MSK) Received: from smtp4p.mail.yandex.net (smtp4p.mail.yandex.net [2a02:6b8:0:1402::15:6]) by mxback10g.mail.yandex.net (nwsmtp/Yandex) with ESMTP id K7zVmFccKe-0VdaGA97; Wed, 16 Aug 2017 15:00:31 +0300 Received: by smtp4p.mail.yandex.net (nwsmtp/Yandex) with ESMTPSA id PvpQUmaJ8k-0VV0wMPw; Wed, 16 Aug 2017 15:00:31 +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: Wed, 16 Aug 2017 15:00:05 +0300 Message-Id: <1502884807-3941-2-git-send-email-odpbot@yandex.ru> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1502884807-3941-1-git-send-email-odpbot@yandex.ru> References: <1502884807-3941-1-git-send-email-odpbot@yandex.ru> Github-pr-num: 128 Subject: [lng-odp] [PATCH CLOUD-DEV v10 1/3] configure: Enable linux-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: Balakrishna Garapati Signed-off-by: Balakrishna Garapati --- /** Email created from pull request 128 (GBalakrishna:linux-dpdk-cloud) ** https://github.com/Linaro/odp/pull/128 ** Patch: https://github.com/Linaro/odp/pull/128.patch ** Base sha: 4e11ef454d383b9637541c53ad4eeda65751742b ** Merge commit sha: 63df8360555af226b4fb40723ab8cab07b5db3a6 **/ configure.ac | 40 ++++++++++++++----------- example/Makefile.inc | 2 +- helper/test/Makefile.am | 2 +- platform/Makefile.inc | 1 - platform/linux-dpdk/Makefile.am | 45 +++++++++++++++++++++++----- platform/linux-generic/Makefile.am | 2 ++ test/Makefile.inc | 2 +- test/common_plat/validation/Makefile.inc | 2 +- test/common_plat/validation/api/Makefile.inc | 2 +- 9 files changed, 68 insertions(+), 30 deletions(-) diff --git a/configure.ac b/configure.ac index d9e4a34f..e486933c 100644 --- a/configure.ac +++ b/configure.ac @@ -111,6 +111,7 @@ AS_CASE([$host], [ARCH_DIR=undefined] ) AC_SUBST([ARCH_DIR]) +AM_CONDITIONAL([ARCH_X86], [test "x${ARCH_DIR}" = "xx86"]) ########################################################################## # Warn on the defaults if arch is undefined @@ -161,22 +162,6 @@ AC_SUBST([with_platform]) AC_SUBST([platform_with_platform], ["platform/${with_platform}"]) ########################################################################## -# Run platform specific checks and settings -########################################################################## -IMPLEMENTATION_NAME="" -if test "${with_platform}" = "linux-generic"; -then - m4_include([./platform/linux-generic/m4/configure.m4]) - m4_include([./test/linux-generic/m4/configure.m4]) - IMPLEMENTATION_NAME="odp-linux" -else - echo "UNSUPPORTED PLATFORM: ${with_platform}" - exit 1 -fi - -ODP_CFLAGS="$ODP_CFLAGS -DIMPLEMENTATION_NAME=$IMPLEMENTATION_NAME" - -########################################################################## # Include m4 files ########################################################################## m4_include([./doc/m4/configure.m4]) @@ -195,6 +180,27 @@ AC_HELP_STRING([--with-sdk-install-path=DIR path to external libs and headers], AC_SUBST(SDK_INSTALL_PATH) ########################################################################## +# Run platform specific checks and settings +########################################################################## +IMPLEMENTATION_NAME="" +AS_IF([test "${with_platform}" == "linux-generic"], + [m4_include([./platform/linux-generic/m4/configure.m4])] + [m4_include([./test/linux-generic/m4/configure.m4])] + [IMPLEMENTATION_NAME="linux-generic"] + [ODP_CFLAGS="$ODP_CFLAGS -std=c99"] + [ODP_LIB_STR="odp-linux"], + [test "${with_platform}" == "linux-dpdk"], + [m4_include([./platform/linux-dpdk/m4/configure.m4])] + [m4_include([./test/linux-dpdk/m4/configure.m4])] + [IMPLEMENTATION_NAME="linux-dpdk"] + [ODP_CFLAGS="$ODP_CFLAGS -std=gnu99"] + [ODP_LIB_STR="odp-dpdk"], + [echo "UNSUPPORTED PLATFORM: ${with_platform}"]) + +ODP_CFLAGS="$ODP_CFLAGS -DIMPLEMENTATION_NAME=$IMPLEMENTATION_NAME" +AC_SUBST(ODP_LIB_STR) + +########################################################################## # Set the install directory for test binaries/scripts ########################################################################## AC_ARG_WITH([testdir], @@ -210,6 +216,7 @@ AC_SUBST([testdir]) # Set conditionals as computed within platform specific files ########################################################################## AM_CONDITIONAL([SDK_INSTALL_PATH_], [test "x${SDK_INSTALL_PATH_}" = "x1"]) +AM_CONDITIONAL([DPDK_DEFAULT_DIR], [test "x${DPDK_DEFAULT_DIR}" = "x1"]) AM_CONDITIONAL([test_installdir], [test "$testdir" != ""]) AM_CONDITIONAL([cunit_support], [test x$cunit_support = xyes ]) AM_CONDITIONAL([test_vald], [test x$test_vald = xyes ]) @@ -314,7 +321,6 @@ ODP_CFLAGS="$ODP_CFLAGS -W -Wall -Werror -Wstrict-prototypes -Wmissing-prototype ODP_CFLAGS="$ODP_CFLAGS -Wmissing-declarations -Wold-style-definition -Wpointer-arith" ODP_CFLAGS="$ODP_CFLAGS -Wcast-align -Wnested-externs -Wcast-qual -Wformat-nonliteral" ODP_CFLAGS="$ODP_CFLAGS -Wformat-security -Wundef -Wwrite-strings" -ODP_CFLAGS="$ODP_CFLAGS -std=c99" dnl Use -Werror in the checks below since Clang emits a warning instead of dnl an error when it encounters an unknown warning option. diff --git a/example/Makefile.inc b/example/Makefile.inc index c6d7ff5f..88d34d33 100644 --- a/example/Makefile.inc +++ b/example/Makefile.inc @@ -1,6 +1,6 @@ include $(top_srcdir)/platform/@with_platform@/Makefile.inc LIB = $(top_builddir)/lib -LDADD = $(LIB)/libodp-linux.la $(LIB)/libodphelper.la $(DPDK_PMDS) +LDADD = $(LIB)/lib$(ODP_LIB_STR).la $(LIB)/libodphelper.la $(DPDK_PMDS) AM_CFLAGS += \ -I$(srcdir) \ -I$(top_srcdir)/example \ diff --git a/helper/test/Makefile.am b/helper/test/Makefile.am index beef9191..d772ae14 100644 --- a/helper/test/Makefile.am +++ b/helper/test/Makefile.am @@ -5,7 +5,7 @@ LIB = $(top_builddir)/lib #in the following line, the libs using the symbols should come before #the libs containing them! The includer is given a chance to add things #before libodp by setting PRE_LDADD before the inclusion. -LDADD = $(PRE_LDADD) $(LIB)/libodphelper.la $(LIB)/libodp-linux.la +LDADD = $(PRE_LDADD) $(LIB)/libodphelper.la $(LIB)/lib$(ODP_LIB_STR).la INCFLAGS = \ -I$(top_builddir)/platform/@with_platform@/include \ diff --git a/platform/Makefile.inc b/platform/Makefile.inc index b35b5760..1621d980 100644 --- a/platform/Makefile.inc +++ b/platform/Makefile.inc @@ -6,7 +6,6 @@ pkgconfig_DATA = $(top_builddir)/pkgconfig/libodp-linux.pc .PHONY: pkgconfig/libodp-linux.pc VPATH = $(srcdir) $(builddir) -lib_LTLIBRARIES = $(LIB)/libodp-linux.la AM_LDFLAGS += -version-number '$(ODP_LIBSO_VERSION)' diff --git a/platform/linux-dpdk/Makefile.am b/platform/linux-dpdk/Makefile.am index c1497f0f..e56dc165 100644 --- a/platform/linux-dpdk/Makefile.am +++ b/platform/linux-dpdk/Makefile.am @@ -1,6 +1,8 @@ include $(top_srcdir)/platform/Makefile.inc include $(top_srcdir)/platform/@with_platform@/Makefile.inc +lib_LTLIBRARIES = $(LIB)/libodp-dpdk.la + PLAT_CFLAGS = if ARCH_X86 PLAT_CFLAGS += -msse4.2 @@ -72,8 +74,20 @@ odpapiinclude_HEADERS = \ $(srcdir)/include/odp/api/time.h \ $(srcdir)/include/odp/api/timer.h \ $(srcdir)/include/odp/api/traffic_mngr.h \ - $(srcdir)/include/odp/api/version.h \ - $(srcdir)/arch/@ARCH_DIR@/odp/api/cpu_arch.h + $(srcdir)/include/odp/api/version.h + +if ARCH_IS_ARM +odpapiinclude_HEADERS += $(srcdir)/arch/arm/odp/api/cpu_arch.h +endif +if ARCH_IS_MIPS64 +odpapiinclude_HEADERS += $(srcdir)/arch/mips64/odp/api/cpu_arch.h +endif +if ARCH_IS_POWERPC +odpapiinclude_HEADERS += $(srcdir)/arch/powerpc/odp/api/cpu_arch.h +endif +if ARCH_IS_X86 +odpapiinclude_HEADERS += $(srcdir)/arch/x86/odp/api/cpu_arch.h +endif odpapiplatincludedir= $(includedir)/odp/api/plat odpapiplatinclude_HEADERS = \ @@ -215,15 +229,32 @@ __LIB__libodp_dpdk_la_SOURCES = \ ../linux-generic/odp_traffic_mngr.c \ ../linux-generic/odp_version.c \ ../linux-generic/odp_weak.c \ - arch/@ARCH_DIR@/odp_cpu_arch.c \ - arch/@ARCH_DIR@/odp_sysinfo_parse.c - -__LIB__libodp_dpdk_la_LIBADD = $(ATOMIC_LIBS) + ../linux-generic/drv_atomic.c \ + ../linux-generic/drv_barrier.c \ + ../linux-generic/drv_driver.c \ + ../linux-generic/drv_shm.c \ + ../linux-generic/drv_spinlock.c +if ARCH_IS_ARM +__LIB__libodp_dpdk_la_SOURCES += arch/arm/odp_cpu_arch.c \ + arch/arm/odp_sysinfo_parse.c +endif +if ARCH_IS_MIPS64 +__LIB__libodp_dpdk_la_SOURCES += arch/mips64/odp_cpu_arch.c \ + arch/mips64/odp_sysinfo_parse.c +endif +if ARCH_IS_POWERPC +__LIB__libodp_dpdk_la_SOURCES += arch/powerpc/odp_cpu_arch.c \ + arch/powerpc/odp_sysinfo_parse.c +endif if ARCH_IS_X86 -__LIB__libodp_dpdk_la_SOURCES += arch/@ARCH_DIR@/cpu_flags.c +__LIB__libodp_dpdk_la_SOURCES += arch/x86/cpu_flags.c \ + arch/x86/odp_cpu_arch.c \ + arch/x86/odp_sysinfo_parse.c endif +__LIB__libodp_dpdk_la_LIBADD = $(ATOMIC_LIBS) + # Create symlink for ABI header files. Application does not need to use the arch # specific include path for installed files. install-data-hook: diff --git a/platform/linux-generic/Makefile.am b/platform/linux-generic/Makefile.am index 1d703cea..be7674a5 100644 --- a/platform/linux-generic/Makefile.am +++ b/platform/linux-generic/Makefile.am @@ -4,6 +4,8 @@ include $(top_srcdir)/platform/Makefile.inc include $(top_srcdir)/platform/@with_platform@/Makefile.inc +lib_LTLIBRARIES = $(LIB)/libodp-linux.la + AM_CFLAGS += -I$(srcdir)/include AM_CFLAGS += -I$(top_srcdir)/include AM_CFLAGS += -I$(top_srcdir)/frameworks/modular diff --git a/test/Makefile.inc b/test/Makefile.inc index 839bd033..c22bdd61 100644 --- a/test/Makefile.inc +++ b/test/Makefile.inc @@ -4,7 +4,7 @@ LIB = $(top_builddir)/lib #in the following line, the libs using the symbols should come before #the libs containing them! The includer is given a chance to add things #before libodp by setting PRE_LDADD before the inclusion. -LDADD = $(PRE_LDADD) $(LIB)/libodphelper.la $(LIB)/libodp-linux.la $(DPDK_PMDS) +LDADD = $(PRE_LDADD) $(LIB)/libodphelper.la $(LIB)/lib$(ODP_LIB_STR).la $(DPDK_PMDS) INCFLAGS = \ -I$(top_builddir)/platform/@with_platform@/include \ diff --git a/test/common_plat/validation/Makefile.inc b/test/common_plat/validation/Makefile.inc index dda18adc..5512cc0e 100644 --- a/test/common_plat/validation/Makefile.inc +++ b/test/common_plat/validation/Makefile.inc @@ -13,4 +13,4 @@ AM_LDFLAGS += -static LIBCUNIT_COMMON = $(COMMON_DIR)/libcunit_common.la LIBCPUMASK_COMMON = $(COMMON_DIR)/libcpumask_common.la LIBTHRMASK_COMMON = $(COMMON_DIR)/libthrmask_common.la -LIBODP = $(LIB)/libodphelper.la $(LIB)/libodp-linux.la +LIBODP = $(LIB)/libodphelper.la $(LIB)/lib$(ODP_LIB_STR).la diff --git a/test/common_plat/validation/api/Makefile.inc b/test/common_plat/validation/api/Makefile.inc index 177d2ac3..1c5d316a 100644 --- a/test/common_plat/validation/api/Makefile.inc +++ b/test/common_plat/validation/api/Makefile.inc @@ -16,4 +16,4 @@ AM_CPPFLAGS += $(CUNIT_CPPFLAGS) LIBCUNIT_COMMON = $(COMMON_DIR)/libcunit_common.la LIBCPUMASK_COMMON = $(COMMON_DIR)/libcpumask_common.la LIBTHRMASK_COMMON = $(COMMON_DIR)/libthrmask_common.la -LIBODP = $(LIB)/libodphelper.la $(LIB)/libodp-linux.la +LIBODP = $(LIB)/libodphelper.la $(LIB)/lib$(ODP_LIB_STR).la