[Buildroot] [PATCH 1/2] package: Makefile.in: Add target compilation flags for NOMMU architecture.

Sonic Zhang sonic.adi at gmail.com
Fri Mar 22 08:26:06 UTC 2013


Hi Thomas,

On Fri, Mar 22, 2013 at 2:52 PM, Thomas De Schampheleire
<patrickdepinguin+buildroot at gmail.com> wrote:
> Hi Sonic,
>
>
> On Thu, Mar 21, 2013 at 7:38 AM, Sonic Zhang <sonic.adi at gmail.com> wrote:
>>
>> From: Sonic Zhang <sonic.zhang at analog.com>
>>
>> - Add BR2_TARGET_ABI_FLAT option
>> - Add NOMMU compiling macro
>> - Add FLAT ABI specific link flags
>> - Add stack size to FLAT link flags if macro <PKG>_FLAT_STACKSIZE is
>> defined.
>>
>> Signed-off-by: Sonic Zhang <sonic.zhang at analog.com>
>> ---
>>  arch/Config.in           |    3 +++
>>  package/Makefile.in      |    8 ++++++++
>>  package/pkg-autotools.mk |    5 +++++
>>  package/pkg-generic.mk   |    5 +++++
>>  4 files changed, 21 insertions(+), 0 deletions(-)
>>
>> diff --git a/arch/Config.in b/arch/Config.in
>> index 472b10c..120c67e 100644
>> --- a/arch/Config.in
>> +++ b/arch/Config.in
>> @@ -174,6 +174,9 @@ config BR2_GCC_TARGET_ABI
>>  config BR2_GCC_TARGET_CPU
>>         string
>>
>> +config BR2_TARGET_ABI_FLAT
>> +       bool
>> +
>>  if BR2_arm || BR2_armeb
>>  source "arch/Config.in.arm"
>>  endif
>> diff --git a/package/Makefile.in b/package/Makefile.in
>> index a8bf36b..acfd9c8 100644
>> --- a/package/Makefile.in
>> +++ b/package/Makefile.in
>> @@ -103,6 +103,14 @@ TARGET_CFLAGS = $(TARGET_CPPFLAGS) $(TARGET_ABI)
>> $(TARGET_OPTIMIZATION) $(TARGET
>>  TARGET_CXXFLAGS = $(TARGET_CFLAGS)
>>  TARGET_LDFLAGS = $(call qstrip,$(BR2_TARGET_LDFLAGS))
>>
>> +ifeq ($(BR2_TARGET_ABI_FLAT),y)
>> +TARGET_LDFLAGS += -Wl,-elf2flt
>> +endif
>> +
>> +ifneq ($(BR2_USE_MMU), y)
>> +TARGET_CFLAGS += -D__NOMMU__
>> +endif
>> +
>>  ifeq ($(BR2_TOOLCHAIN_BUILDROOT)$(BR2_TOOLCHAIN_CTNG),y)
>>  TARGET_CROSS=$(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-
>>  else
>> diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk
>> index 890506b..b23feec 100644
>> --- a/package/pkg-autotools.mk
>> +++ b/package/pkg-autotools.mk
>> @@ -82,6 +82,11 @@ $(2)_CLEAN_OPT                       ?= clean
>>  $(2)_UNINSTALL_STAGING_OPT     ?= DESTDIR=$$(STAGING_DIR) uninstall
>>  $(2)_UNINSTALL_TARGET_OPT      ?= DESTDIR=$$(TARGET_DIR)  uninstall
>>
>> +ifeq ($(BR2_TARGET_ABI_FLAT),y)
>> + ifneq ($$($(2)_FLAT_STACKSIZE),)
>> +  $(2)_CONF_ENV                        += LDFLAGS="$(TARGET_LDFLAGS)
>> -Wl,-elf2flt=-s$($(2)_FLAT_STACKSIZE)"
>> + endif
>> +endif
>
>
> I'm not that familiar with these double $$, but is it intentional that
> you're using double-dollar AND single-dollar for the same variable
> <PKG>_FLAT_STACKSIZE in the above snippet?
>

Good catch. Should be double-dollar as well.
Will be fixed in v2.

Regards,

Sonic


More information about the buildroot mailing list