This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [committed, PATCH] BZ #18409: Remove a trailing `\' in make-syscalls.sh


On Wed, May 13, 2015 at 12:30 PM, Adhemerval Zanella
<adhemerval.zanella@linaro.org> wrote:
> Hi
>
> On 13-05-2015 13:20, H.J. Lu wrote:
>> commit c14874927b499ddfdbb03745bb32bfc778b8595f
>> Author: Roland McGrath <roland@hack.frob.com>
>> Date:   Tue May 22 16:00:50 2012 -0700
>>
>>     syscalls.list support for vDSO IFUNCs, use it for x32 gettimeofday and time.
>>
>> added
>>
>> \$(foreach p,\$(sysd-rules-targets),\$(objpfx)\$(patsubst %,\$p,$file).os): \\
>>                 \$(..)sysdeps/unix/make-syscalls.sh\
>>         \$(make-target-directory)
>>
>> to sysdeps/unix/make-syscalls.sh which generates
>>
>> #### CALL=gettimeofday NUMBER=(0x40000000 + 96) ARGS=i:pP SOURCE=-
>> ifeq (,$(filter gettimeofday,$(unix-syscalls)))
>> unix-syscalls += gettimeofday
>> $(foreach p,$(sysd-rules-targets),$(foreach
>> o,$(object-suffixes-noshared),$(objpfx)$(patsubst
>> %,$p,gettimeofday)$o)): \
>>                 $(..)sysdeps/unix/make-syscalls.sh
>>         $(make-target-directory)
>>         (echo '#define SYSCALL_NAME gettimeofday'; \
>>          echo '#define SYSCALL_NARGS 2'; \
>>          echo '#define SYSCALL_SYMBOL __gettimeofday'; \
>>          echo '#include <syscall-template.S>'; \
>>          echo 'weak_alias (__gettimeofday, gettimeofday)'; \
>>          echo 'libc_hidden_weak (gettimeofday)'; \
>>         ) | $(compile-syscall) $(foreach p,$(patsubst
>> %gettimeofday,%,$(basename $(@F))),$($(p)CPPFLAGS))
>> $(foreach p,$(sysd-rules-targets),$(objpfx)$(patsubst %,$p,gettimeofday).os): \
>>                 $(..)sysdeps/unix/make-syscalls.sh      $(make-target-directory)
>>                                                   ^^^^^^^^^ Missing newline
>>         (echo '#include <dl-vdso.h>'; \
>>          echo 'extern void *__gettimeofday_ifunc (void) __asm
>> ("__gettimeofday");'; \
>>          echo 'void *'; \
>>          echo '__gettimeofday_ifunc (void)'; \
>>          echo '{'; \
>>          echo '  PREPARE_VERSION_KNOWN (symver, LINUX_2_6);'; \
>>          echo '  return _dl_vdso_vsym ("__vdso_gettimeofday", &symver);'; \
>>          echo '}'; \
>>          echo 'asm (".type __gettimeofday, %gnu_indirect_function");'; \
>>          echo 'asm (".globl __GI___gettimeofday\n"'; \
>>          echo '     "__GI___gettimeofday = __gettimeofday");'; \
>>          echo 'weak_alias (__gettimeofday, gettimeofday)'; \
>>          echo 'libc_hidden_weak (gettimeofday)'; \
>>         ) | $(compile-stdin.c) $(foreach p,$(patsubst
>> %gettimeofday,%,$(basename $(@F))),$($(p)CPPFLAGS))
>> endif
>>
>> This only affected x32.  I checked in this patch after tested on
>> x32.
>>
>> Adhemerval, can you check if your problem with dash in
>>
>> https://sourceware.org/ml/libc-alpha/2015-04/msg00277.html
>>
>> is fixed by this?
>>
>> Thanks.
>
> I have been testing another more complete fix pointed out by Joseph [1]
> and it fixes the x32 build with dash issue I was seeing.  Shouldn't we
> push this one?
>
> [1] https://sourceware.org/ml/libc-alpha/2015-02/msg00396.html

Well, this part is the same as the one I checked in:

 \$(foreach p,\$(sysd-rules-targets),\$(objpfx)\$(patsubst %,\$p,$file).os): \\
- \$(..)sysdeps/unix/make-syscalls.sh\
+ \$(..)sysdeps/unix/make-syscalls.sh

At minimum, that patch should be rebased.

-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]