mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
build/gnu: Do not attempt to strip Guile byte-compiled files.
This fails and produces noise and spurious debug files. * guix/build/gnu-build-system.scm (strip) <guile-bytecode?>: New predicate. Use it to filter out .go files from the files to be stripped. Change-Id: I3063083a7d04d903d85d28d9526fdec079914fce
This commit is contained in:
@@ -518,6 +518,12 @@ makefiles."
|
||||
(debug-file file))
|
||||
file))
|
||||
|
||||
(define (guile-bytecode? file)
|
||||
(and (string-suffix? ".go" file)
|
||||
(elf-section-by-name
|
||||
(parse-elf (call-with-input-file file get-bytevector-all))
|
||||
".guile.procprops")))
|
||||
|
||||
(define (strip-dir dir)
|
||||
(format #t "stripping binaries in ~s with ~s and flags ~s~%"
|
||||
dir strip-command strip-flags)
|
||||
@@ -526,7 +532,11 @@ makefiles."
|
||||
debug-output objcopy-command))
|
||||
|
||||
(for-each (lambda (file)
|
||||
(when (or (elf-file? file) (ar-file? file))
|
||||
(when (and (or (elf-file? file) (ar-file? file))
|
||||
;; XXX: 'strip' (and 'objdump') choke on the Guile
|
||||
;; byte-compiled objects, with errors like "Unable
|
||||
;; to recognise the format of the input file".
|
||||
(not (guile-bytecode? file)))
|
||||
;; If an error occurs while processing a file, issue a
|
||||
;; warning and continue to the next file.
|
||||
(guard (c ((invoke-error? c)
|
||||
|
||||
Reference in New Issue
Block a user