On 16-09-2022 14:35, 路辉 wrote: > + (if tests? + (apply invoke "make" + ;; "V=1" + "SKIP_KNOWN_BUGS=1" + "SKIP_INTERNET_TESTS=1" + "check" make-flags) + #t))) Can be simplified to (when tests? (apply invoke "make" ;; "V=1" "SKIP_KNOWN_BUGS=1" "SKIP_INTERNET_TESTS=1" "check" make-flags)) + `(#:tests? (if ,(%current-target-system) #f #t) That's the default, no need to mention it again here. + #:make-flags + (let ((target ,(%current-target-system))) + (if target + (list (string-append "CROSS_COMPILE=" target "-")) + (list))) Can be simplified: #:make-flags ,(let ((target ,(%current-target-system))) (if target #~(list (string-append "CROSS_COMPILE=" ,target)) #~'())) (the #~ makes the phasing more explicit, if you go for that, I recommend turning the arguments into (arguments (list #:phases #~(modify-phases ...) #:make-flags ...)), instead of using ` / , , to remain consistent.) Greetings, Maxime