DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Kavanagh, Mark B" <mark.b.kavanagh@intel.com>
To: "Gonzalez Monroy, Sergio" <sergio.gonzalez.monroy@intel.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v2 1/4] mk: Remove combined library and related	options
Date: Fri, 13 Mar 2015 10:49:01 +0000	[thread overview]
Message-ID: <DC5AD7FA266D86499789B1BCAEC715F846D52C87@irsmsx105.ger.corp.intel.com> (raw)
In-Reply-To: <1426177681-16931-2-git-send-email-sergio.gonzalez.monroy@intel.com>

>---
> config/common_bsdapp                        |   6 --
> config/common_linuxapp                      |   6 --
> config/defconfig_ppc_64-power8-linuxapp-gcc |   2 -
> lib/Makefile                                |   1 -
> mk/rte.app.mk                               |  12 ----
> mk/rte.lib.mk                               |  35 ----------
> mk/rte.sdkbuild.mk                          |   3 -
> mk/rte.sharelib.mk                          | 101 ----------------------------
> mk/rte.vars.mk                              |   9 ---
> 9 files changed, 175 deletions(-)
> delete mode 100644 mk/rte.sharelib.mk
>
>diff --git a/config/common_bsdapp b/config/common_bsdapp
>index 8ff4dc2..7ee5ecf 100644
>--- a/config/common_bsdapp
>+++ b/config/common_bsdapp
>@@ -79,12 +79,6 @@ CONFIG_RTE_FORCE_INTRINSICS=n
> CONFIG_RTE_BUILD_SHARED_LIB=n
>
> #
>-# Combine to one single library
>-#
>-CONFIG_RTE_BUILD_COMBINE_LIBS=n
>-CONFIG_RTE_LIBNAME=intel_dpdk

Hi Sergio,

Removing these options breaks compatibility with OVS. While it may be feasible to link to individual static libraries, in our experience, a single combined library provides a much more convenient way of linking.

Thanks,
Mark 

>-
>-#
> # Compile Environment Abstraction Layer
> #
> CONFIG_RTE_LIBRTE_EAL=y
>diff --git a/config/common_linuxapp b/config/common_linuxapp
>index 97f1c9e..ae13805 100644
>--- a/config/common_linuxapp
>+++ b/config/common_linuxapp
>@@ -79,12 +79,6 @@ CONFIG_RTE_FORCE_INTRINSICS=n
> CONFIG_RTE_BUILD_SHARED_LIB=n
>
> #
>-# Combine to one single library
>-#
>-CONFIG_RTE_BUILD_COMBINE_LIBS=n
>-CONFIG_RTE_LIBNAME="intel_dpdk"
>-
>-#
> # Compile Environment Abstraction Layer
> #
> CONFIG_RTE_LIBRTE_EAL=y
>diff --git a/config/defconfig_ppc_64-power8-linuxapp-gcc b/config/defconfig_ppc_64-power8-
>linuxapp-gcc
>index d97a885..f1af518 100644
>--- a/config/defconfig_ppc_64-power8-linuxapp-gcc
>+++ b/config/defconfig_ppc_64-power8-linuxapp-gcc
>@@ -39,8 +39,6 @@ CONFIG_RTE_ARCH_64=y
> CONFIG_RTE_TOOLCHAIN="gcc"
> CONFIG_RTE_TOOLCHAIN_GCC=y
>
>-CONFIG_RTE_LIBNAME="powerpc_dpdk"
>-
> # Note: Power doesn't have this support
> CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=n
>
>diff --git a/lib/Makefile b/lib/Makefile
>index d94355d..c34cf2f 100644
>--- a/lib/Makefile
>+++ b/lib/Makefile
>@@ -77,5 +77,4 @@ DIRS-$(CONFIG_RTE_LIBRTE_KNI) += librte_kni
> DIRS-$(CONFIG_RTE_LIBRTE_IVSHMEM) += librte_ivshmem
> endif
>
>-include $(RTE_SDK)/mk/rte.sharelib.mk
> include $(RTE_SDK)/mk/rte.subdir.mk
>diff --git a/mk/rte.app.mk b/mk/rte.app.mk
>index 63a41e2..e2baa49 100644
>--- a/mk/rte.app.mk
>+++ b/mk/rte.app.mk
>@@ -61,12 +61,6 @@ ifeq ($(NO_AUTOLIBS),)
>
> LDLIBS += --whole-archive
>
>-ifeq ($(CONFIG_RTE_BUILD_COMBINE_LIBS),y)
>-LDLIBS += -l$(RTE_LIBNAME)
>-endif
>-
>-ifeq ($(CONFIG_RTE_BUILD_COMBINE_LIBS),n)
>-
> ifeq ($(CONFIG_RTE_LIBRTE_DISTRIBUTOR),y)
> LDLIBS += -lrte_distributor
> endif
>@@ -137,8 +131,6 @@ ifeq ($(CONFIG_RTE_LIBRTE_VHOST), y)
> LDLIBS += -lrte_vhost
> endif
>
>-endif # ! CONFIG_RTE_BUILD_COMBINE_LIBS
>-
> ifeq ($(CONFIG_RTE_LIBRTE_PMD_PCAP),y)
> LDLIBS += -lpcap
> endif
>@@ -153,8 +145,6 @@ endif
>
> LDLIBS += --start-group
>
>-ifeq ($(CONFIG_RTE_BUILD_COMBINE_LIBS),n)
>-
> ifeq ($(CONFIG_RTE_LIBRTE_KVARGS),y)
> LDLIBS += -lrte_kvargs
> endif
>@@ -253,8 +243,6 @@ endif
>
> endif # plugins
>
>-endif # ! CONFIG_RTE_BUILD_COMBINE_LIBS
>-
> LDLIBS += $(EXECENV_LDLIBS)
>
> LDLIBS += --end-group
>diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk
>index 0d7482d..d96101a 100644
>--- a/mk/rte.lib.mk
>+++ b/mk/rte.lib.mk
>@@ -87,24 +87,6 @@ O_TO_S_DO = @set -e; \
> 	$(O_TO_S) && \
> 	echo $(O_TO_S_CMD) > $(call exe2cmd,$(@))
>
>-ifeq ($(RTE_BUILD_SHARED_LIB),n)
>-O_TO_C = $(AR) crus $(LIB_ONE) $(OBJS-y)
>-O_TO_C_STR = $(subst ','\'',$(O_TO_C)) #'# fix syntax highlight
>-O_TO_C_DISP = $(if $(V),"$(O_TO_C_STR)","  AR_C $(@)")
>-O_TO_C_DO = @set -e; \
>-	$(lib_dir) \
>-	$(copy_obj)
>-else
>-O_TO_C = $(LD) -shared $(OBJS-y) -o $(LIB_ONE)
>-O_TO_C_STR = $(subst ','\'',$(O_TO_C)) #'# fix syntax highlight
>-O_TO_C_DISP = $(if $(V),"$(O_TO_C_STR)","  LD_C $(@)")
>-O_TO_C_DO = @set -e; \
>-	$(lib_dir) \
>-	$(copy_obj)
>-endif
>-
>-copy_obj = cp -f $(OBJS-y) $(RTE_OUTPUT)/build/lib;
>-lib_dir = [ -d $(RTE_OUTPUT)/lib ] || mkdir -p $(RTE_OUTPUT)/lib;
> -include .$(LIB).cmd
>
> #
>@@ -129,15 +111,6 @@ endif
> 		$(depfile_missing),\
> 		$(depfile_newer)),\
> 		$(O_TO_S_DO))
>-
>-ifeq ($(RTE_BUILD_COMBINE_LIBS),y)
>-	$(if $(or \
>-        $(file_missing),\
>-        $(call cmdline_changed,$(O_TO_C_STR)),\
>-        $(depfile_missing),\
>-        $(depfile_newer)),\
>-        $(O_TO_C_DO))
>-endif
> else
> $(LIB): $(OBJS-y) $(DEP_$(LIB)) FORCE
> 	@[ -d $(dir $@) ] || mkdir -p $(dir $@)
>@@ -153,14 +126,6 @@ $(LIB): $(OBJS-y) $(DEP_$(LIB)) FORCE
> 	    $(depfile_missing),\
> 	    $(depfile_newer)),\
> 	    $(O_TO_A_DO))
>-ifeq ($(RTE_BUILD_COMBINE_LIBS),y)
>-	$(if $(or \
>-        $(file_missing),\
>-        $(call cmdline_changed,$(O_TO_C_STR)),\
>-        $(depfile_missing),\
>-        $(depfile_newer)),\
>-        $(O_TO_C_DO))
>-endif
> endif
>
> #
>diff --git a/mk/rte.sdkbuild.mk b/mk/rte.sdkbuild.mk
>index 3154457..2b24e74 100644
>--- a/mk/rte.sdkbuild.mk
>+++ b/mk/rte.sdkbuild.mk
>@@ -93,9 +93,6 @@ $(ROOTDIRS-y):
> 	@[ -d $(BUILDDIR)/$@ ] || mkdir -p $(BUILDDIR)/$@
> 	@echo "== Build $@"
> 	$(Q)$(MAKE) S=$@ -f $(RTE_SRCDIR)/$@/Makefile -C $(BUILDDIR)/$@ all
>-	@if [ $@ = lib -a $(RTE_BUILD_COMBINE_LIBS) = y ]; then \
>-		$(MAKE) -f $(RTE_SDK)/lib/Makefile sharelib; \
>-	fi
>
> %_clean:
> 	@echo "== Clean $*"
>diff --git a/mk/rte.sharelib.mk b/mk/rte.sharelib.mk
>deleted file mode 100644
>index de53558..0000000
>--- a/mk/rte.sharelib.mk
>+++ /dev/null
>@@ -1,101 +0,0 @@
>-#   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/internal/rte.build-pre.mk
>-
>-# VPATH contains at least SRCDIR
>-VPATH += $(SRCDIR)
>-
>-ifeq ($(RTE_BUILD_COMBINE_LIBS),y)
>-ifeq ($(RTE_BUILD_SHARED_LIB),y)
>-LIB_ONE := lib$(RTE_LIBNAME).so
>-else
>-LIB_ONE := lib$(RTE_LIBNAME).a
>-endif
>-endif
>-
>-.PHONY:sharelib
>-sharelib: $(LIB_ONE) FORCE
>-
>-OBJS = $(wildcard $(RTE_OUTPUT)/build/lib/*.o)
>-
>-ifeq ($(LINK_USING_CC),1)
>-# Override the definition of LD here, since we're linking with CC
>-LD := $(CC) $(CPU_CFLAGS)
>-O_TO_S = $(LD) $(call linkerprefix,$(CPU_LDFLAGS)) \
>-	-shared $(OBJS) -o $(RTE_OUTPUT)/lib/$(LIB_ONE)
>-else
>-O_TO_S = $(LD) $(CPU_LDFLAGS) \
>-	-shared $(OBJS) -o $(RTE_OUTPUT)/lib/$(LIB_ONE)
>-endif
>-
>-O_TO_S_STR = $(subst ','\'',$(O_TO_S)) #'# fix syntax highlight
>-O_TO_S_DISP = $(if $(V),"$(O_TO_S_STR)","  LD $(@)")
>-O_TO_S_CMD = "cmd_$@ = $(O_TO_S_STR)"
>-O_TO_S_DO = @set -e; \
>-    echo $(O_TO_S_DISP); \
>-    $(O_TO_S)
>-
>-O_TO_A =  $(AR) crus $(RTE_OUTPUT)/lib/$(LIB_ONE) $(OBJS)
>-O_TO_A_STR = $(subst ','\'',$(O_TO_A)) #'# fix syntax highlight
>-O_TO_A_DISP = $(if $(V),"$(O_TO_A_STR)","  LD $(@)")
>-O_TO_A_CMD = "cmd_$@ = $(O_TO_A_STR)"
>-O_TO_A_DO = @set -e; \
>-    echo $(O_TO_A_DISP); \
>-    $(O_TO_A)
>-#
>-# Archive objects to share library
>-#
>-
>-ifeq ($(RTE_BUILD_COMBINE_LIBS),y)
>-ifeq ($(RTE_BUILD_SHARED_LIB),y)
>-$(LIB_ONE): FORCE
>-	@[ -d $(dir $@) ] || mkdir -p $(dir $@)
>-	$(O_TO_S_DO)
>-else
>-$(LIB_ONE): FORCE
>-	@[ -d $(dir $@) ] || mkdir -p $(dir $@)
>-	$(O_TO_A_DO)
>-endif
>-endif
>-
>-#
>-# Clean all generated files
>-#
>-.PHONY: clean
>-clean: _postclean
>-
>-.PHONY: doclean
>-doclean:
>-	$(Q)rm -rf $(LIB_ONE)
>-
>-.PHONY: FORCE
>-FORCE:
>diff --git a/mk/rte.vars.mk b/mk/rte.vars.mk
>index d2f01b6..7b6f53d 100644
>--- a/mk/rte.vars.mk
>+++ b/mk/rte.vars.mk
>@@ -67,15 +67,6 @@ ifneq ($(BUILDING_RTE_SDK),)
>   ifeq ($(RTE_BUILD_SHARED_LIB),)
>     RTE_BUILD_SHARED_LIB := n
>   endif
>-  RTE_BUILD_COMBINE_LIBS := $(CONFIG_RTE_BUILD_COMBINE_LIBS:"%"=%)
>-  ifeq ($(RTE_BUILD_COMBINE_LIBS),)
>-    RTE_BUILD_COMBINE_LIBS := n
>-  endif
>-endif
>-
>-RTE_LIBNAME := $(CONFIG_RTE_LIBNAME:"%"=%)
>-ifeq ($(RTE_LIBNAME),)
>-RTE_LIBNAME := intel_dpdk
> endif
>
> # RTE_TARGET is deducted from config when we are building the SDK.
>--
>1.9.3

  reply	other threads:[~2015-03-13 10:49 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-29 15:20 [dpdk-dev] [PATCH 0/8] Improve build process Sergio Gonzalez Monroy
2015-01-29 15:20 ` [dpdk-dev] [PATCH 1/8] mk: remove combined library and related options Sergio Gonzalez Monroy
2015-01-29 15:20 ` [dpdk-dev] [PATCH 2/8] core: create new librte_core Sergio Gonzalez Monroy
2015-01-29 15:20 ` [dpdk-dev] [PATCH 3/8] mk: new corelib makefile Sergio Gonzalez Monroy
2015-01-29 15:20 ` [dpdk-dev] [PATCH 4/8] lib: update DEPDIRS variable Sergio Gonzalez Monroy
2015-01-29 15:20 ` [dpdk-dev] [PATCH 5/8] lib: set LDLIBS for each library Sergio Gonzalez Monroy
2015-01-29 15:20 ` [dpdk-dev] [PATCH 6/8] mk: use LDLIBS when linking shared libraries Sergio Gonzalez Monroy
2015-01-29 15:20 ` [dpdk-dev] [PATCH 7/8] mk: update LDLIBS for app building Sergio Gonzalez Monroy
2015-01-29 15:20 ` [dpdk-dev] [PATCH 8/8] mk: add -lpthread to linuxapp EXECENV_LDLIBS Sergio Gonzalez Monroy
2015-01-29 16:38 ` [dpdk-dev] [PATCH 0/8] Improve build process Neil Horman
2015-01-29 17:02   ` Thomas Monjalon
2015-01-29 17:04   ` Gonzalez Monroy, Sergio
2015-01-29 19:45     ` Neil Horman
2015-01-30 13:39       ` Gonzalez Monroy, Sergio
2015-01-30 14:05         ` Neil Horman
2015-01-30 17:38           ` Gonzalez Monroy, Sergio
2015-01-30 18:12             ` Neil Horman
2015-02-11 11:11               ` Gonzalez Monroy, Sergio
2015-02-12  5:41                 ` Neil Horman
2015-02-12  9:17                   ` Gonzalez Monroy, Sergio
2015-02-12 12:16                     ` Neil Horman
2015-02-12  9:22                 ` Panu Matilainen
2015-02-12 10:03                   ` Gonzalez Monroy, Sergio
2015-02-12 12:23                     ` Neil Horman
2015-02-12 14:07                       ` Panu Matilainen
2015-02-12 15:52                         ` Neil Horman
2015-02-13 10:14                           ` Panu Matilainen
2015-02-13 11:08                             ` Gonzalez Monroy, Sergio
2015-02-13 12:51                               ` Neil Horman
2015-02-20 14:31                                 ` Gonzalez Monroy, Sergio
2015-02-22 23:37                                   ` Neil Horman
2015-02-23 10:25                                     ` Gonzalez Monroy, Sergio
2015-02-23 13:52                                       ` Neil Horman
2015-02-23 14:58                                         ` Gonzalez Monroy, Sergio
2015-02-23 18:23                                           ` Neil Horman
2015-02-24 13:24                                             ` Gonzalez Monroy, Sergio
2015-03-12 16:27 ` [dpdk-dev] [PATCH v2 0/4] " Sergio Gonzalez Monroy
2015-03-12 16:27   ` [dpdk-dev] [PATCH v2 1/4] mk: Remove combined library and related options Sergio Gonzalez Monroy
2015-03-13 10:49     ` Kavanagh, Mark B [this message]
2015-03-13 11:19       ` Gonzalez Monroy, Sergio
2015-03-13 11:34         ` Kavanagh, Mark B
2015-03-13 11:48           ` Gonzalez Monroy, Sergio
2015-03-13 13:16             ` Kavanagh, Mark B
2015-03-13 14:11               ` Gonzalez Monroy, Sergio
2015-03-13 13:17             ` Neil Horman
2015-03-13 14:12               ` Stefan Puiu
2015-03-13 15:18                 ` Neil Horman
2015-03-13 15:28                   ` Gonzalez Monroy, Sergio
2015-03-13 16:16                     ` Neil Horman
2015-03-13 16:07     ` Stephen Hemminger
2015-03-13 16:32       ` Neil Horman
2015-03-13 16:38       ` Gonzalez Monroy, Sergio
2015-03-18 12:11     ` Gonzalez Monroy, Sergio
2015-03-18 12:59       ` Thomas Monjalon
2015-03-18 15:30         ` Stefan Puiu
2015-03-18 15:52           ` Gonzalez Monroy, Sergio
2015-03-18 16:48           ` Neil Horman
2015-03-26  8:52         ` Gonzalez Monroy, Sergio
2015-03-26 10:30           ` Neil Horman
2015-03-18 16:41       ` Neil Horman
2015-03-12 16:27   ` [dpdk-dev] [PATCH v2 2/4] lib: Set LDLIBS for each library Sergio Gonzalez Monroy
2015-03-12 16:28   ` [dpdk-dev] [PATCH v2 3/4] mk: Use LDLIBS when linking shared libraries Sergio Gonzalez Monroy
2015-03-12 16:28   ` [dpdk-dev] [PATCH v2 4/4] mk: update LDLIBS for app building Sergio Gonzalez Monroy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DC5AD7FA266D86499789B1BCAEC715F846D52C87@irsmsx105.ger.corp.intel.com \
    --to=mark.b.kavanagh@intel.com \
    --cc=dev@dpdk.org \
    --cc=sergio.gonzalez.monroy@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).