gnu: gcc-4.9: Fix build on MIPS.
* gnu/packages/gcc.scm (gcc-4.9): Add 'join-two-line-dynamic-linker-defns phase.
This commit is contained in:
		
							parent
							
								
									ee06af5b4b
								
							
						
					
					
						commit
						fcdebadf39
					
				
					 1 changed files with 23 additions and 1 deletions
				
			
		| 
						 | 
					@ -280,7 +280,29 @@ Go.  It also includes runtime support libraries for these languages.")
 | 
				
			||||||
                                 version "/gcc-" version ".tar.bz2"))
 | 
					                                 version "/gcc-" version ".tar.bz2"))
 | 
				
			||||||
             (sha256
 | 
					             (sha256
 | 
				
			||||||
              (base32
 | 
					              (base32
 | 
				
			||||||
               "1pbjp4blk2ycaa6r3jmw4ky5f1s9ji3klbqgv8zs2sl5jn1cj810"))))))
 | 
					               "1pbjp4blk2ycaa6r3jmw4ky5f1s9ji3klbqgv8zs2sl5jn1cj810"))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ;; TODO: In core-updates, improve the 'pre-configure phase of the main
 | 
				
			||||||
 | 
					    ;; 'gcc' package so that the 'join-two-line-dynamic-linker-defns phase is
 | 
				
			||||||
 | 
					    ;; no longer needed here.  Then the entire 'arguments' override below can
 | 
				
			||||||
 | 
					    ;; be removed.
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     (substitute-keyword-arguments (package-arguments gcc-4.7)
 | 
				
			||||||
 | 
					       ((#:phases phases)
 | 
				
			||||||
 | 
					        `(alist-cons-before
 | 
				
			||||||
 | 
					          'pre-configure 'join-two-line-dynamic-linker-defns
 | 
				
			||||||
 | 
					          (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
				
			||||||
 | 
					            (let ((libc (assoc-ref inputs "libc")))
 | 
				
			||||||
 | 
					              (when libc
 | 
				
			||||||
 | 
					                ;; Join two-line definitions of GLIBC_DYNAMIC_LINKER* into a
 | 
				
			||||||
 | 
					                ;; single line, to allow the 'pre-configure phase to work
 | 
				
			||||||
 | 
					                ;; properly.
 | 
				
			||||||
 | 
					                (substitute* (find-files "gcc/config"
 | 
				
			||||||
 | 
					                                         "^linux(64|-elf)?\\.h$")
 | 
				
			||||||
 | 
					                  (("(#define GLIBC_DYNAMIC_LINKER[^ ]*.*)\\\\\n$" _ line)
 | 
				
			||||||
 | 
					                   line)))
 | 
				
			||||||
 | 
					              #t))
 | 
				
			||||||
 | 
					          ,phases))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define* (custom-gcc gcc name languages #:key (separate-lib-output? #t))
 | 
					(define* (custom-gcc gcc name languages #:key (separate-lib-output? #t))
 | 
				
			||||||
  "Return a custom version of GCC that supports LANGUAGES."
 | 
					  "Return a custom version of GCC that supports LANGUAGES."
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Reference in a new issue