guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Generating compiled scm (.go) files as part of LilyPond build


From: Ian Hulin
Subject: Re: Generating compiled scm (.go) files as part of LilyPond build
Date: Tue, 30 Nov 2010 18:02:09 +0000
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.12) Gecko/20101027 Lightning/1.0b3pre Thunderbird/3.1.6

Hi Neil,
On 28/11/10 12:01, Neil Jerram wrote:
> Ian Hulin <address@hidden> writes:
> 
>> OK, here's the question:  if we decide not to rely on AUTOCOMPILE, and
>> we are able generate our own .go files in, say, <lilypond-root>/out/scm,
>> how do we get guile to use the compiled version
>> <lilypond-root>/out/scm/<file>.go in preference to a possibly
>> non-existent .scm.go file in the cache?  There are some hints of
>> configure/type variables LOAD_PATH and COMPILED_LOAD_PATH in NEWS, and I
>> hoped that there might me a %compiled-load-path run-time equivalent to
>> COMPILED_LOAD_PATH just like %load-path corresponds to LOAD_PATH, but it
>> doesn't exist as at V1.9.13.  If there was, we could possibly prefix
>> <lilypond-root>/out/scm to the %compiled-load-path in the same way we
>> fiddle with %load-path for the interpreter.  Of course, I'm open to any
>> more elegant solutions.
> 
> From some code grepping, I think the answer is to use
> (primitive-load-path ...), and that the path for compiled files needs to
> be put in %load-compiled-path.  Would you like to try that?

This looks useful, together with the $GUILE_LOAD_COMPILED_PATH thingy
Andy mentioned (presumably something we can generate in our config
settings?

However, the code that loads in our .scm files also uses
%search-load-path. Will this find things in %load-compiled-path as well
as %load-path in V2.0?

> 
> If this turns out to be correct, I'll update the doc for
> primitive-load-path to cover it - so please report back.
> 
Working . . .

Cheers,
Ian Hulin




reply via email to

[Prev in Thread] Current Thread [Next in Thread]