transformations: '--tune' prints supported micro-architectures upon error.
* guix/transformations.scm (build-system-with-tuning-compiler): Add &fix-hint condition when asked for an unsupported micro-architecture.
This commit is contained in:
		
							parent
							
								
									15bb35d0c4
								
							
						
					
					
						commit
						3b80e79f21
					
				
					 1 changed files with 24 additions and 4 deletions
				
			
		|  | @ -46,6 +46,7 @@ | |||
|   #:use-module (srfi srfi-11) | ||||
|   #:use-module (srfi srfi-26) | ||||
|   #:use-module (srfi srfi-34) | ||||
|   #:use-module (srfi srfi-35) | ||||
|   #:use-module (srfi srfi-37) | ||||
|   #:use-module (ice-9 match) | ||||
|   #:use-module (ice-9 vlist) | ||||
|  | @ -526,10 +527,29 @@ system that builds code for MICRO-ARCHITECTURE; otherwise raise an error." | |||
|                   micro-architecture))) | ||||
|         (unless (member micro-architecture | ||||
|                         (or (assoc-ref lst architecture) '())) | ||||
|           (raise (formatted-message | ||||
|                   (G_ "compiler ~a does not support micro-architecture ~a") | ||||
|                   (package-full-name compiler) | ||||
|                   micro-architecture)))) | ||||
|           (raise | ||||
|            (make-compound-condition | ||||
|             (formatted-message | ||||
|              (G_ "compiler ~a does not support micro-architecture ~a") | ||||
|              (package-full-name compiler) | ||||
|              micro-architecture) | ||||
|             (condition | ||||
|              (&fix-hint | ||||
|               (hint (match (assoc-ref lst architecture) | ||||
|                       (#f (format #f (G_ "Compiler ~a does not support | ||||
| micro-architectures of ~a.") | ||||
|                                   (package-full-name compiler "@@") | ||||
|                                   architecture)) | ||||
|                       (lst | ||||
|                        (format #f (G_ "Compiler ~a supports the following ~a | ||||
| micro-architectures: | ||||
| 
 | ||||
| @quotation | ||||
| ~a | ||||
| @end quotation") | ||||
|                                (package-full-name compiler "@@") | ||||
|                                architecture | ||||
|                                (string-join lst ", "))))))))))) | ||||
| 
 | ||||
|       (bag | ||||
|         (inherit lowered) | ||||
|  |  | |||
		Reference in a new issue