Re: ABI break!
John Darrington skribis: > On Tue, Jan 17, 2017 at 11:52:35PM +0100, Ludovic Court??s wrote: > l...@gnu.org (Ludovic Court??s) skribis: > > > Pushed with tests as 384344198dcaa97847e66d3dd82f279ede08d690. > > And if you get a weird error when running ???make??? about > ???file-system-needed-for-boot, just run: > >rm gnu/system.go && make > > This is because of an ABI break: ???file-system-needed-for-boot was a > macro and now is a procedure. > > Surely this means that the Makefile is wrong? > > It should recognise that gnu/system.scm has changed and rebuild gnu/system.go > accordingly. gnu/system.scm has not changed; gnu/system/file-system.scm did. Guile modules are composed at run time for the most part, so when you change one, you don’t have to rebuild those that use it. However, you do have to recompile them if they rely on it for macros and those macros have changed or are no longer macros. This is what happened here. Ludo’.
Re: ABI break!
> Surely this means that the Makefile is wrong? I think that in projects that use Makefiles it's the expectation that incremental compilation only works in "most" cases. I really like ninja - I think it is un-opinionated and has solid fundamentals. I think that a cool project would be to write a ninja build file generator in guile.
Re: ABI break!
On Tue, Jan 17, 2017 at 11:52:35PM +0100, Ludovic Court??s wrote: l...@gnu.org (Ludovic Court??s) skribis: > Pushed with tests as 384344198dcaa97847e66d3dd82f279ede08d690. And if you get a weird error when running ???make??? about ???file-system-needed-for-boot, just run: rm gnu/system.go && make This is because of an ABI break: ???file-system-needed-for-boot was a macro and now is a procedure. Surely this means that the Makefile is wrong? It should recognise that gnu/system.scm has changed and rebuild gnu/system.go accordingly. J' -- Avoid eavesdropping. Send strong encrypted email. PGP Public key ID: 1024D/2DE827B3 fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3 See http://sks-keyservers.net or any PGP keyserver for public key. signature.asc Description: Digital signature
ABI break!
l...@gnu.org (Ludovic Courtès) skribis: > Pushed with tests as 384344198dcaa97847e66d3dd82f279ede08d690. And if you get a weird error when running ‘make’ about ‘file-system-needed-for-boot?’, just run: rm gnu/system.go && make This is because of an ABI break: ‘file-system-needed-for-boot?’ was a macro and now is a procedure. Ludo’.