[gnutls-devel] -jX broken for X > 2 (in guile)

Ludovic Courtès ludo at gnu.org
Fri Sep 13 23:50:51 CEST 2013


Andreas Metzler <ametzler at bebt.de> skribis:

> On 2013-09-13 Ludovic Courtès <ludo at gnu.org> wrote:
>> Andreas Metzler <ametzler at bebt.de> scribes:
>
>>> gnutls 3.2.4 guile bindings are miscompiled by "make -j3" and greater,
>>> the testsuite catches the error. On my system (Dualcore, no
>>> Hyper-threading) -j3 fails occassionally, while greater values fail
>>> more reliably. -j2 /seems/ to work.
>
>> Commit 330995a920037b6030ec0282b51dde3f8b493cad (which is in 3.2.4)
>> fixed a similar problem.
>
>> I just tried with both Guile 2.0 and 1.8 and cannot reproduce the issue.
>
>> Could you post the build log and a GDB backtrace for the failing test(s)?
> [...]
>
> Build log is e.g. here:
> https://buildd.debian.org/status/fetch.php?pkg=gnutls28&arch=amd64&ver=3.2.4-3&stamp=1378651617
> https://buildd.debian.org/status/fetch.php?pkg=gnutls28&arch=powerpc&ver=3.2.4-3&stamp=1378653753

Could you try this:

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/x-patch
Size: 510 bytes
Desc: not available
URL: </pipermail/attachments/20130913/cf63d61f/attachment.bin>
-------------- next part --------------

I just noticed this (info "(make) Suffix Rules"):

     Suffix rules cannot have any prerequisites of their own.  If they
  have any, they are treated as normal files with funny names, not as
  suffix rules.  Thus, the rule:

       .c.o: foo.h
               $(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<

  tells how to make the file `.c.o' from the prerequisite file `foo.h',
  and is not at all like the pattern rule:

       %.o: %.c foo.h
               $(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<

  which tells how to make `.o' files from `.c' files, and makes all `.o'
  files using this pattern rule also depend on `foo.h'.

That means the fix mentioned above must have been ineffective...

Thanks,
Ludo’.


More information about the Gnutls-devel mailing list