Suggested by Ludovic Courtès <ludo@gnu.org>. * gnu/packages/patches/emacs-source-date-epoch.patch: New patch. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/emacs.scm (emacs)[source]: Use it.
		
			
				
	
	
		
			20 lines
		
	
	
	
		
			749 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
	
		
			749 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
| Honor SOURCE_DATE_EPOCH variable to avoid non-determinism in generated
 | |
| "autoloads" files.
 | |
| 
 | |
| --- a/lisp/emacs-lisp/autoload.el
 | |
| +++ b/lisp/emacs-lisp/autoload.el
 | |
| @@ -378,8 +378,12 @@
 | |
|    "Insert the section-header line,
 | |
|  which lists the file name and which functions are in it, etc."
 | |
|    (insert generate-autoload-section-header)
 | |
| -  (prin1 `(autoloads ,autoloads ,load-name ,file ,time)
 | |
| -	 outbuf)
 | |
| +  (let* ((env  (getenv "SOURCE_DATE_EPOCH"))
 | |
| +         (time (if env
 | |
| +                   (seconds-to-time (string-to-number env))
 | |
| +                 time)))
 | |
| +    (prin1 `(autoloads ,autoloads ,load-name ,file ,time)
 | |
| +           outbuf))
 | |
|    (terpri outbuf)
 | |
|    ;; Break that line at spaces, to avoid very long lines.
 | |
|    ;; Make each sub-line into a comment.
 |