[PATCH] Test for profiling support (_mcount/gprof)

Florian Weimer fweimer@redhat.com
Tue Aug 15 12:46:00 GMT 2017


On 08/15/2017 02:28 PM, Andreas Schwab wrote:
> On Aug 15 2017, Florian Weimer <fweimer@redhat.com> wrote:
> 
>> diff --git a/Makeconfig b/Makeconfig
>> index 80aed2a987..19b559701a 100644
>> --- a/Makeconfig
>> +++ b/Makeconfig
>> @@ -465,7 +465,8 @@ else  # not build-pie-default
>>  +link-before-libc = $(CC) -nostdlib -nostartfiles -o $@ \
>>  	      $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
>>  	      $(combreloc-LDFLAGS) $(relro-LDFLAGS) $(hashstyle-LDFLAGS) \
>> -	      $(addprefix $(csu-objpfx),$(start-installed-name)) \
>> +	      $(or $(CRT-$(@F)), $ \
>> +		$(addprefix $(csu-objpfx),$(start-installed-name))) \
> 
> $(or) is a 3.81 feature, we only require 3.79.  You can use $(firstword)
> instead.

Oh, good point.  $(firstword …) does not really align with the
subsequent $(addprefix …) usage because that has the implication that
$(start-installed-name) contains multiple words.  We can turn

  $(addprefix $(csu-objpfx),$(start-installed-name))

into

  $(csu-objpfx)$(start-installed-name)

though; it should work on all in-tree architectures.  Then $(firstword
…) should have the right semantics.

But can we require make 3.81 instead?  It was released in April 2006,
after all.  That does not mean we'll start using controversial 3.81
features such as $(eval …).

> The lone $ looks like a typo.

Right.  Fixed.

Thanks,
Florian



More information about the Libc-alpha mailing list