aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-08-11 13:44:28 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-08-26 11:38:56 -0400
commit1dce88777691b7a38ad66ba58b17a9b368c11e07 (patch)
treee3a6fdeb8569dfcae56b7e0b32e5962c999683c0
parentbdaef69556f68595e5ec0db1710bf8ad208abe20 (diff)
downloadguix-1dce88777691b7a38ad66ba58b17a9b368c11e07.tar
guix-1dce88777691b7a38ad66ba58b17a9b368c11e07.tar.gz
gnu-maintenance: Consider Qt source tarballs as "release files".
* guix/gnu-maintenance.scm (release-file?): Use positive logic in doc. Add a special case for Qt source archives. * tests/gnu-maintenance.scm ("release-file?"): Update test.
-rw-r--r--guix/gnu-maintenance.scm18
-rw-r--r--tests/gnu-maintenance.scm5
2 files changed, 17 insertions, 6 deletions
diff --git a/guix/gnu-maintenance.scm b/guix/gnu-maintenance.scm
index eb30b7874f..ee6e0db747 100644
--- a/guix/gnu-maintenance.scm
+++ b/guix/gnu-maintenance.scm
@@ -258,8 +258,7 @@ network to check in GNU's database."
(make-regexp "^.*-.*[0-9](-|~|\\.)?(alpha|beta|rc|RC|cvs|svn|git)-?[0-9\\.]*\\.tar\\."))
(define (release-file? project file)
- "Return #f if FILE is not a release tarball of PROJECT, otherwise return
-true."
+ "Return true if FILE is a release tarball of PROJECT."
(and (not (member (file-extension file)
'("sig" "sign" "asc"
"md5sum" "sha1sum" "sha256sum")))
@@ -268,12 +267,21 @@ true."
;; Filter out unrelated files, like `guile-www-1.1.1'.
;; Case-insensitive for things like "TeXmacs" vs. "texmacs".
;; The "-src" suffix is for "freefont-src-20120503.tar.gz".
+ ;; The '-everywhere-src' suffix is for Qt modular components.
(and=> (match:substring match 1)
(lambda (name)
(or (string-ci=? name project)
- (string-ci=? name
- (string-append project
- "-src")))))))
+ (string-ci=? name (string-append project "-src"))
+ (string-ci=?
+ name (string-append project "-everywhere-src"))
+ ;; For older Qt releases such as version 5.
+ (string-ci=?
+ name (string-append
+ project "-everywhere-opensource-src"))
+ ;; For Qt Creator.
+ (string-ci=?
+ name (string-append
+ project "-opensource-src")))))))
(not (regexp-exec %alpha-tarball-rx file))
(let ((s (tarball-sans-extension file)))
(regexp-exec %package-name-rx s))))
diff --git a/tests/gnu-maintenance.scm b/tests/gnu-maintenance.scm
index 196a6f9092..61ae295b96 100644
--- a/tests/gnu-maintenance.scm
+++ b/tests/gnu-maintenance.scm
@@ -40,7 +40,10 @@
("exiv2" "exiv2-0.27.3-Source.tar.gz")
("mpg321" "mpg321_0.3.2.orig.tar.gz")
("bvi" "bvi-1.4.1.src.tar.gz")
- ("hostscope" "hostscope-V2.1.tgz")))
+ ("hostscope" "hostscope-V2.1.tgz")
+ ("qtbase" "qtbase-everywhere-src-6.5.2.tar.xz")
+ ("qtbase" "qtbase-everywhere-opensource-src-5.15.10.tar.xz")
+ ("qt-creator" "qt-creator-opensource-src-11.0.1.tar.xz")))
(every (lambda (project+file)
(not (apply release-file? project+file)))
'(("guile" "guile-www-1.1.1.tar.gz")