[dpdk-dev] [PATCH] mk: add support for gdb debug info generation

Marc Sune marc.sune at bisdn.de
Mon Mar 2 18:32:13 CET 2015


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

>
> Marc
>
>> Thanks
>> Konstantin
>>
>> -----Original Message-----
>> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Cyril Chemparathy
>> Sent: Thursday, April 03, 2014 6:31 PM
>> To: dev at 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 <cchemparathy at tilera.com>
>> ---
>>   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
>>
>



More information about the dev mailing list