From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [143.182.124.21]) by dpdk.org (Postfix) with ESMTP id 6F6BA6882 for ; Wed, 4 Jun 2014 20:08:41 +0200 (CEST) Received: from azsmga001.ch.intel.com ([10.2.17.19]) by azsmga101.ch.intel.com with ESMTP; 04 Jun 2014 11:08:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.98,974,1392192000"; d="scan'208";a="440903211" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by azsmga001.ch.intel.com with ESMTP; 04 Jun 2014 11:08:50 -0700 Received: from sivswdev01.ir.intel.com (sivswdev01.ir.intel.com [10.237.217.45]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id s54I8oKc011728; Wed, 4 Jun 2014 19:08:50 +0100 Received: from sivswdev01.ir.intel.com (localhost [127.0.0.1]) by sivswdev01.ir.intel.com with ESMTP id s54I8ofq009023; Wed, 4 Jun 2014 19:08:50 +0100 Received: (from cfdumitr@localhost) by sivswdev01.ir.intel.com with id s54I8oPT009019; Wed, 4 Jun 2014 19:08:50 +0100 From: Cristian Dumitrescu To: dev@dpdk.org Date: Wed, 4 Jun 2014 19:08:26 +0100 Message-Id: <1401905319-8882-11-git-send-email-cristian.dumitrescu@intel.com> X-Mailer: git-send-email 1.7.0.7 In-Reply-To: <1401905319-8882-1-git-send-email-cristian.dumitrescu@intel.com> References: <1401905319-8882-1-git-send-email-cristian.dumitrescu@intel.com> Subject: [dpdk-dev] [v2 10/23] Packet Framework librte_port: Build infrastructure X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Jun 2014 18:08:43 -0000 Makefile and build infrastructure for the librte_port library. Signed-off-by: Cristian Dumitrescu --- config/common_bsdapp | 5 +++ config/common_linuxapp | 4 ++ doc/doxy-api-index.md | 9 ++++++ doc/doxy-api.conf | 1 + lib/Makefile | 1 + lib/librte_port/Makefile | 72 ++++++++++++++++++++++++++++++++++++++++++++++ mk/rte.app.mk | 4 ++ 7 files changed, 96 insertions(+), 0 deletions(-) create mode 100644 lib/librte_port/Makefile mode change 100644 => 100755 mk/rte.app.mk diff --git a/config/common_bsdapp b/config/common_bsdapp index 2cc7b80..e1cc356 100644 --- a/config/common_bsdapp +++ b/config/common_bsdapp @@ -300,3 +300,8 @@ CONFIG_RTE_APP_TEST=y CONFIG_RTE_TEST_PMD=y CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES=n CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n + +# +# Compile librte_port +# +CONFIG_RTE_LIBRTE_PORT=y diff --git a/config/common_linuxapp b/config/common_linuxapp index 62619c6..ef0f65e 100644 --- a/config/common_linuxapp +++ b/config/common_linuxapp @@ -337,3 +337,7 @@ CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n # CONFIG_RTE_NIC_BYPASS=n +# +# Compile librte_port +# +CONFIG_RTE_LIBRTE_PORT=y diff --git a/doc/doxy-api-index.md b/doc/doxy-api-index.md index 2825c08..3e74ea6 100644 --- a/doc/doxy-api-index.md +++ b/doc/doxy-api-index.md @@ -85,6 +85,15 @@ There are many libraries, so their headers may be grouped by topics: [scheduler] (@ref rte_sched.h), [RED congestion] (@ref rte_red.h) +- **Packet Framework**: + [port] (@ref rte_port.h), + [port ethdev] (@ref rte_port_ethdev.h), + [port ring] (@ref rte_port_ring.h), + [port IPv4 fragmentation] (@ref rte_port_frag.h), + [port IPv4 reassembly] (@ref rte_port_ras.h), + [port scheduler] (@ref rte_port_sched.h), + [port source/sink] (@ref rte_port_source_sink.h) + - **hashes**: [hash] (@ref rte_hash.h), [jhash] (@ref rte_jhash.h), diff --git a/doc/doxy-api.conf b/doc/doxy-api.conf index 642f77a..4f280bf 100644 --- a/doc/doxy-api.conf +++ b/doc/doxy-api.conf @@ -41,6 +41,7 @@ INPUT = doc/doxy-api-index.md \ lib/librte_mempool \ lib/librte_meter \ lib/librte_net \ + lib/librte_port \ lib/librte_power \ lib/librte_ring \ lib/librte_sched \ diff --git a/lib/Makefile b/lib/Makefile index b92b392..654968e 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -55,6 +55,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_METER) += librte_meter DIRS-$(CONFIG_RTE_LIBRTE_SCHED) += librte_sched DIRS-$(CONFIG_RTE_LIBRTE_ACL) += librte_acl DIRS-$(CONFIG_RTE_LIBRTE_KVARGS) += librte_kvargs +DIRS-$(CONFIG_RTE_LIBRTE_PORT) += librte_port ifeq ($(CONFIG_RTE_EXEC_ENV_LINUXAPP),y) DIRS-$(CONFIG_RTE_LIBRTE_KNI) += librte_kni diff --git a/lib/librte_port/Makefile b/lib/librte_port/Makefile new file mode 100644 index 0000000..b67df48 --- /dev/null +++ b/lib/librte_port/Makefile @@ -0,0 +1,72 @@ +# BSD LICENSE +# +# Copyright(c) 2010-2014 Intel Corporation. All rights reserved. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Intel Corporation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +include $(RTE_SDK)/mk/rte.vars.mk + +# +# library name +# +LIB = librte_port.a + +CFLAGS += -O3 +CFLAGS += $(WERROR_FLAGS) + +# +# all source are stored in SRCS-y +# +SRCS-$(CONFIG_RTE_LIBRTE_PORT) += rte_port_ring.c +SRCS-$(CONFIG_RTE_LIBRTE_PORT) += rte_port_ethdev.c +SRCS-$(CONFIG_RTE_LIBRTE_PORT) += rte_port_sched.c +SRCS-$(CONFIG_RTE_LIBRTE_PORT) += rte_port_ras.c +SRCS-$(CONFIG_RTE_LIBRTE_PORT) += rte_port_source_sink.c +ifeq ($(CONFIG_RTE_MBUF_SCATTER_GATHER),y) +SRCS-$(CONFIG_RTE_LIBRTE_PORT) += rte_port_frag.c +endif + +# install includes +SYMLINK-$(CONFIG_RTE_LIBRTE_PORT)-include += rte_port.h +SYMLINK-$(CONFIG_RTE_LIBRTE_PORT)-include += rte_port_ring.h +SYMLINK-$(CONFIG_RTE_LIBRTE_PORT)-include += rte_port_ethdev.h +SYMLINK-$(CONFIG_RTE_LIBRTE_PORT)-include += rte_port_sched.h +SYMLINK-$(CONFIG_RTE_LIBRTE_PORT)-include += rte_port_ras.h +SYMLINK-$(CONFIG_RTE_LIBRTE_PORT)-include += rte_port_source_sink.h +ifeq ($(CONFIG_RTE_MBUF_SCATTER_GATHER),y) +SYMLINK-$(CONFIG_RTE_LIBRTE_PORT)-include += rte_port_frag.h +endif + +# this lib depends upon: +DEPDIRS-$(CONFIG_RTE_LIBRTE_PORT) := lib/librte_eal +DEPDIRS-$(CONFIG_RTE_LIBRTE_PORT) += lib/librte_mbuf +DEPDIRS-$(CONFIG_RTE_LIBRTE_PORT) += lib/librte_mempool +DEPDIRS-$(CONFIG_RTE_LIBRTE_PORT) += lib/librte_malloc +DEPDIRS-$(CONFIG_RTE_LIBRTE_PORT) += lib/librte_ether + +include $(RTE_SDK)/mk/rte.lib.mk diff --git a/mk/rte.app.mk b/mk/rte.app.mk old mode 100644 new mode 100755 index a836577..e67326b --- a/mk/rte.app.mk +++ b/mk/rte.app.mk @@ -73,6 +73,10 @@ LDLIBS += -lrte_ivshmem endif endif +ifeq ($(CONFIG_RTE_LIBRTE_PORT),y) +LDLIBS += -lrte_port +endif + ifeq ($(CONFIG_RTE_LIBRTE_TIMER),y) LDLIBS += -lrte_timer endif -- 1.7.7.6