This is the mail archive of the gdb@sourceware.org mailing list for the GDB 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: gettext.m4 update


On 09/13/2017 12:42 PM, Kamil Rytarowski wrote:
> On 11.09.2017 15:36, Kamil Rytarowski wrote:
>> Hello,
>>
>> The current gettext.m4 bundled into GDB is too old for the NetBSD case.
>>
>> We mark GDB as BROKEN_GETTEXT_DETECTION and comment that it fails to add
>> -lintl to the linker command line.
>>
>> Could we please update it to a newer version?
>>
>> gettext.m4 is located in https://ftp.gnu.org/pub/gnu/gettext/
>>
> 
> I know what breaks the NetBSD buildbot [1].
> 
> The following rule (intl/Makefile.in) [2] breaks:
> 
> .c.o:
> 	$(COMPILE) $<
> 
> .y.c:
> 	$(YACC) $(YFLAGS) --output $@ $<
> 	rm -f $*.h
> 
> This means that if plural.y is newer than plural.c it will be regenerated.
> 
> There is required Bison < 3.0 (the last one used for regeneration was
> 1.35), which is already too old to keep it around.
> 
> Git does not track mtime in files, and this enforces regeneration of
> plural.c, at least in random checkouts. The NetBSD buildbot was
> unfortunate to get plural.y newer:
> 
> $ stat -f %Fm ./binutils-gdb-master/intl/plural.c
> 1477324070.931854837
> $ stat -f %Fm ./binutils-gdb-master/intl/plural.y
> 1477324070.931949821
> 
> 
> The cleanest and newfangled solution would be to upgrade to newer
> gettext and enforce regeneration always.
> 
> A kludge would be to insert touch(1) call before execution of intl/Makefile.
> 
> I don't know about any good solutions in the middle.

This date issue is likely to be an issue with any generated
file checked in, all over the tree.  Usually you won't notice
if you have the right tools that regen succeeds.

Maybe the bot should be doing a recursive touch(1) of all files
after checkout, forcing the same mtime on all checked-out files,
with 'touch -d ..' or 'touch -p ..' or
'touch -r .git/FETCH_HEAD' or something like that.

Thanks,
Pedro Alves


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