From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 699DA5A57 for ; Tue, 3 Mar 2015 10:34:03 +0100 (CET) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga103.fm.intel.com with ESMTP; 03 Mar 2015 01:29:05 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,681,1418112000"; d="scan'208";a="674358727" Received: from bricha3-mobl3.ger.corp.intel.com ([10.243.20.27]) by fmsmga001.fm.intel.com with SMTP; 03 Mar 2015 01:33:56 -0800 Received: by (sSMTP sendmail emulation); Tue, 03 Mar 2015 09:33:55 +0025 Date: Tue, 3 Mar 2015 09:33:55 +0000 From: Bruce Richardson To: Marc Sune Message-ID: <20150303093355.GA7300@bricha3-MOBL3> References: <1396546285-29972-1-git-send-email-cchemparathy@tilera.com> <2601191342CEEE43887BDE71AB9772580EF948F7@IRSMSX105.ger.corp.intel.com> <54E9C2C0.3090108@bisdn.de> <54F49E9D.6070201@bisdn.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <54F49E9D.6070201@bisdn.de> Organization: Intel Shannon Ltd. User-Agent: Mutt/1.5.23 (2014-03-12) Cc: dev@dpdk.org Subject: Re: [dpdk-dev] [PATCH] mk: add support for gdb debug info generation 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: Tue, 03 Mar 2015 09:34:04 -0000 On Mon, Mar 02, 2015 at 06:32:13PM +0100, Marc Sune wrote: > > On 22/02/15 12:51, Marc Sune wrote: > >I don't like the proposed patch, but I am recovering this old thread > >because I agree on the problem statement. > > > >On 04/04/14 11:57, Ananyev, Konstantin wrote: > >>Hi Cyril, > >>We already do have 'EXTRA_CFLAGS' and 'EXTRA_LDFLAGS' that you can use > >>to enable debug, or any other compiler/linker options you need. > >>Wonder, why that is not enough? > > > >EXTRA_FLAGS var affects all the DPDK libraries. I was wondering why > >setting individually: > > > >diff --git a/config/common_linuxapp b/config/common_linuxapp > >index 2f9643b..04adc0d 100644 > >--- a/config/common_linuxapp > >+++ b/config/common_linuxapp > >@@ -127,7 +127,7 @@ CONFIG_RTE_LIBRTE_KVARGS=y > > # Compile generic ethernet library > > # > > CONFIG_RTE_LIBRTE_ETHER=y > >-CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=n > >+CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=y > > > > > >to put an example, does not set -g and -O0 in that particular module only. > >No one would ever use something compiled in DEBUG in production anyway. > > > >I always end up modifying manually Makefiles in the lib library that I am > >interested in having insides, overriding CFLAGS=-O3, which is not that > >nice. > > I would like some feedback on this idea. If the community sees benefit, I > will work on a patch for this. > > Marc > So, your proposal is to patch things so that any time one sets DEBUG=y in the build-time config for a library, we change the '-O3' to '-O0' and set -g also. Correct? If that's the case, I see no harm in doing such a thing. I wonder how useful the '-g' option would be, just limited to a single library, though. One would suspect that it may be better applied globally, so that one can see the state of the application as it makes the call into the library. /Bruce > > > >Marc > > > >>Thanks > >>Konstantin > >> > >>-----Original Message----- > >>From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Cyril Chemparathy > >>Sent: Thursday, April 03, 2014 6:31 PM > >>To: dev@dpdk.org > >>Subject: [dpdk-dev] [PATCH] mk: add support for gdb debug info > >>generation > >> > >>It is often useful to build with debug enabled, we add a config > >>(CONFIG_RTE_TOOLCHAIN_DEBUG) to do so. > >> > >>Note: This patch does not include corresponding changes for ICC. The > >>author pleads abject ignorance in this regard, and welcomes > >>recommendations. :-) > >> > >>Signed-off-by: Cyril Chemparathy > >>--- > >> config/defconfig_x86_64-default-linuxapp-gcc | 1 + > >> mk/toolchain/gcc/rte.vars.mk | 5 +++++ > >> 2 files changed, 6 insertions(+) > >> > >>diff --git a/config/defconfig_x86_64-default-linuxapp-gcc > >>b/config/defconfig_x86_64-default-linuxapp-gcc > >>index f11ffbf..3b36efd 100644 > >>--- a/config/defconfig_x86_64-default-linuxapp-gcc > >>+++ b/config/defconfig_x86_64-default-linuxapp-gcc > >>@@ -67,6 +67,7 @@ CONFIG_RTE_ARCH_X86_64=y # CONFIG_RTE_TOOLCHAIN="gcc" > >> CONFIG_RTE_TOOLCHAIN_GCC=y > >>+CONFIG_RTE_TOOLCHAIN_DEBUG=n > >> # > >> # Use intrinsics or assembly code for key routines diff --git > >>a/mk/toolchain/gcc/rte.vars.mk b/mk/toolchain/gcc/rte.vars.mk index > >>0edb93f..81ed3fa 100644 > >>--- a/mk/toolchain/gcc/rte.vars.mk > >>+++ b/mk/toolchain/gcc/rte.vars.mk > >>@@ -68,6 +68,11 @@ ifeq (,$(findstring -O0,$(EXTRA_CFLAGS))) endif > >>endif > >> +ifeq ($(CONFIG_RTE_TOOLCHAIN_DEBUG),y) > >>+TOOLCHAIN_CFLAGS += -g -ggdb > >>+TOOLCHAIN_LDFLAGS += -g -ggdb > >>+endif > >>+ > >> WERROR_FLAGS := -W -Wall -Werror -Wstrict-prototypes > >>-Wmissing-prototypes WERROR_FLAGS += -Wmissing-declarations > >>-Wold-style-definition -Wpointer-arith WERROR_FLAGS += -Wcast-align > >>-Wnested-externs -Wcast-qual > >>-- > >>1.8.3.1 > >> > > >