3
5
Fork 0
mirror of git://git.savannah.gnu.org/guix.git synced 2023-12-14 03:33:07 +01:00

gnu: QtWebEngine: Simplify code to remove third-party files.

* gnu/packages/qt.scm (remove-third-party-files): Simplify some procedures.
This commit is contained in:
Marius Bakke 2022-11-28 05:02:05 +01:00
parent 9252f14722
commit 84c577d7a7
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA

View file

@ -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)