gexp: 'gexp->script' returns a script that can easily be compiled.
* guix/gexp.scm (gexp->script): Produce an 'eval-when' form around assignments of %load-path and %load-compiled-path.
This commit is contained in:
		
							parent
							
								
									84da4ad4b0
								
							
						
					
					
						commit
						4a4cbd0bdd
					
				
					 1 changed files with 9 additions and 7 deletions
				
			
		| 
						 | 
				
			
			@ -496,14 +496,16 @@ its search path."
 | 
			
		|||
                           (format port
 | 
			
		||||
                                   "#!~a/bin/guile --no-auto-compile~%!#~%"
 | 
			
		||||
                                   (ungexp guile))
 | 
			
		||||
 | 
			
		||||
                           ;; Write the 'eval-when' form so that it can be
 | 
			
		||||
                           ;; compiled.
 | 
			
		||||
                           (write
 | 
			
		||||
                            '(set! %load-path
 | 
			
		||||
                                   (cons (ungexp modules) %load-path))
 | 
			
		||||
                            port)
 | 
			
		||||
                           (write
 | 
			
		||||
                            '(set! %load-compiled-path
 | 
			
		||||
                                   (cons (ungexp compiled)
 | 
			
		||||
                                         %load-compiled-path))
 | 
			
		||||
                            '(eval-when (expand load eval)
 | 
			
		||||
                               (set! %load-path
 | 
			
		||||
                                    (cons (ungexp modules) %load-path))
 | 
			
		||||
                               (set! %load-compiled-path
 | 
			
		||||
                                     (cons (ungexp compiled)
 | 
			
		||||
                                           %load-compiled-path)))
 | 
			
		||||
                            port)
 | 
			
		||||
                           (write '(ungexp exp) port)
 | 
			
		||||
                           (chmod port #o555)))))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue