From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 21B2A5947 for ; Fri, 13 Mar 2015 12:19:55 +0100 (CET) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga101.fm.intel.com with ESMTP; 13 Mar 2015 04:19:55 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,394,1422950400"; d="scan'208";a="679618738" Received: from smonroyx-mobl.ger.corp.intel.com (HELO [10.237.221.3]) ([10.237.221.3]) by fmsmga001.fm.intel.com with ESMTP; 13 Mar 2015 04:19:55 -0700 Message-ID: <5502C7D9.2060503@intel.com> Date: Fri, 13 Mar 2015 11:19:53 +0000 From: "Gonzalez Monroy, Sergio" User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: "Kavanagh, Mark B" References: <1422544811-26385-1-git-send-email-sergio.gonzalez.monroy@intel.com> <1426177681-16931-1-git-send-email-sergio.gonzalez.monroy@intel.com> <1426177681-16931-2-git-send-email-sergio.gonzalez.monroy@intel.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] [PATCH v2 1/4] mk: Remove combined library and related options 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: Fri, 13 Mar 2015 11:19:57 -0000 On 13/03/2015 10:49, Kavanagh, Mark B wrote: >> --- >> 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 Hi Mark, How does this patch break compatibility with OVS? Thanks, Sergio