From 84c577d7a7046c2d675d674c301ae1f4684a80bd Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 28 Nov 2022 05:02:05 +0100 Subject: gnu: QtWebEngine: Simplify code to remove third-party files. * gnu/packages/qt.scm (remove-third-party-files): Simplify some procedures. --- gnu/packages/qt.scm | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) (limited to 'gnu/packages/qt.scm') diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 31acacff80..0f5e1c3530 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -2284,8 +2284,7 @@ using the Enchant spell-checking library.") #~(begin (define preserved-club ;; Prefix exceptions with ./ for comparison with ftw. - (map (lambda (member) - (string-append "./" member)) + (map (cut string-append "./" <>) preserved-third-party-files)) (define protected (make-regexp "\\.(gn|gyp)i?$")) (define (empty? dir) @@ -2298,17 +2297,12 @@ using the Enchant spell-checking library.") (define (parents child) ;; Return all parent directories of CHILD up to and including ;; the closest "third_party". - (let* ((dirs (match (string-split child #\/) - ((dirs ... last) dirs))) - (closest (list-index (lambda (dir) - (string=? "third_party" dir)) - (reverse dirs))) - (delim (- (length dirs) closest))) - (fold (lambda (dir prev) - (cons (string-append (car prev) "/" dir) - prev)) - (list (string-join (list-head dirs delim) "/")) - (list-tail dirs delim)))) + (let loop ((parent (dirname child)) + (parents '())) + (if (string=? "third_party" (basename parent)) + (cons parent parents) + (loop (dirname parent) + (cons parent parents))))) (define (remove-loudly file) (format #t "deleting ~a...~%" file) (force-output) -- cgit v1.2.3