GNU bug report logs - #70487
[PATCH core-updates 0/4] Add more tests to lsp-plugins

Previous Next

Package: guix-patches;

Reported by: Parnikkapore <poomklao <at> yahoo.com>

Date: Sat, 20 Apr 2024 22:05:02 UTC

Severity: normal

Tags: patch

To reply to this bug, email your comments to 70487 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#70487; Package guix-patches. (Sat, 20 Apr 2024 22:05:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Parnikkapore <poomklao <at> yahoo.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 20 Apr 2024 22:05:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Parnikkapore <poomklao <at> yahoo.com>
To: guix-patches <at> gnu.org
Subject: [PATCH core-updates 0/4] Add more tests to lsp-plugins
Date: Sun, 21 Apr 2024 00:03:47 +0200
Hi Guix!

This patch series has a few updates and fixes building towards using
lv2lint and lv2_validate to test lsp-plugins further.

Because changing sord affects many packages, this series should go on
core-updates; it should be OK to merge the first patch straight to
master, however.

The last patch requires <https://issues.guix.gnu.org/70486>.

Parnikkapore (4):
  gnu: lv2lint: Update to 0.16.2.
  gnu: sord: Fix missing sord_validate.
  gnu: lv2: Hard-code path for sord_validate
  gnu: lsp-plugins: Test with lv2lint and lv2_validate.

 gnu/packages/audio.scm | 26 +++++++++-----
 gnu/packages/music.scm | 79 ++++++++++++++++++++++++++++--------------
 gnu/packages/rdf.scm   |  2 +-
 3 files changed, 72 insertions(+), 35 deletions(-)


base-commit: 43a4215cad8c6da357f895569c0cedf5e854cee0
prerequisite-patch-id: 1104b4fdc3ddb7633d2bee4f68cb70d6c8961243
prerequisite-patch-id: 5cb5081aefcfd465769f508a7e0beaff2b4e339e
prerequisite-patch-id: 14af9262fcd071dd89e7b5ea33f3c5ca7ef97333
prerequisite-patch-id: 79ff13b50e217e6fc18dd1a2c3fcc56aad69d9c7
prerequisite-patch-id: f294eb85e37c3409b9bd3349d3d265df4baaf9bc
-- 
2.41.0





Information forwarded to gabriel <at> erlikon.ch, guix-patches <at> gnu.org:
bug#70487; Package guix-patches. (Sat, 20 Apr 2024 23:04:02 GMT) Full text and rfc822 format available.

Message #8 received at 70487 <at> debbugs.gnu.org (full text, mbox):

From: Parnikkapore <poomklao <at> yahoo.com>
To: 70487 <at> debbugs.gnu.org
Subject: [PATCH core-updates 1/4] gnu: lv2lint: Update to 0.16.2.
Date: Sun, 21 Apr 2024 01:02:47 +0200
* gnu/packages/audio.scm (lv2lint): Update to 0.16.2.
[configure-flags]: Enable X11 tests, like upstream builds.
[inputs]: Add lv2 and libx11.

Change-Id: Ib331399d8d95117574beab900480885ab4a73fcf
---
 gnu/packages/audio.scm | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 1a88698165..e3a6c692d2 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -45,7 +45,7 @@
 ;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus <at> gmail.com>
 ;;; Copyright © 2023 Gabriel Wicki <gabriel <at> erlikon.ch>
 ;;; Copyright © 2023 Zheng Junjie <873216071 <at> qq.com>
-;;; Copyright © 2023 Parnikkapore <poomklao <at> yahoo.com>
+;;; Copyright © 2023, 2024 Parnikkapore <poomklao <at> yahoo.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -5733,31 +5733,32 @@ (define-public libaudec
 (define-public lv2lint
   (package
     (name "lv2lint")
-    (version "0.8.0")
+    (version "0.16.2")
     (source
       (origin
         (method git-fetch)
         (uri (git-reference
-               (url "https://git.open-music-kontrollers.ch/lv2/lv2lint")
+               (url "https://git.open-music-kontrollers.ch/~hp/lv2lint")
                (commit version)))
         (file-name (git-file-name name version))
         (sha256
           (base32
-            "1jrka0hsn4n1clri7zfkcl3c2vi52144lkpjm81l51ff8rqy8ks1"))))
+            "0cyiq5amf02k6fkmbch3kgmfx6wa33k310ig7zzf6rwbswmdnk1n"))))
     (build-system meson-build-system)
     (arguments
      `(#:configure-flags
-       `("-Delf-tests=true" ; for checking symbol visibility
-         "-Donline-tests=true"))) ; for checking URI existence
+       `("-Donline-tests=enabled" ; for checking URI existence
+         "-Delf-tests=enabled" ; for checking symbol visibility
+         "-Dx11-tests=enabled"))) ; for checking X11 UI instantiation
     (inputs
-      (list curl libelf lilv))
+      (list lv2 lilv curl libelf libx11))
     (native-inputs
       (list pkg-config))
     (synopsis "LV2 plugin lint tool")
     (description "lv2lint is an LV2 lint-like tool that checks whether a
 given plugin and its UI(s) match up with the provided metadata and adhere
 to well-known best practices.")
-    (home-page "https://open-music-kontrollers.ch/lv2/lv2lint/")
+    (home-page "https://git.open-music-kontrollers.ch/~hp/lv2lint")
     (license license:artistic2.0)))
 
 (define-public lv2toweb
-- 
2.41.0





Information forwarded to guix-patches <at> gnu.org:
bug#70487; Package guix-patches. (Sat, 20 Apr 2024 23:04:03 GMT) Full text and rfc822 format available.

Message #11 received at 70487 <at> debbugs.gnu.org (full text, mbox):

From: Parnikkapore <poomklao <at> yahoo.com>
To: 70487 <at> debbugs.gnu.org
Subject: [PATCH core-updates 2/4] gnu: sord: Fix missing sord_validate.
Date: Sun, 21 Apr 2024 01:02:48 +0200
* gnu/packages/rdf.scm (sord): Fix missing sord_validate.
[inputs]: Replace pcre with pcre2

Change-Id: I0e78419476097c8c72a1986c9ce68d774824c2c3
---
 gnu/packages/rdf.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm
index cc6b009f14..bd9e8c9e54 100644
--- a/gnu/packages/rdf.scm
+++ b/gnu/packages/rdf.scm
@@ -316,7 +316,7 @@ (define-public sord
                "1l2zjz6gypxbf1z32zyqkljdcn9mz452djc4xq1dlhv1fmnqfzr5"))))
     (build-system meson-build-system)
     (inputs
-     (list pcre))
+     (list pcre2))
     (native-inputs
      (list pkg-config))
     (propagated-inputs
-- 
2.41.0





Information forwarded to gabriel <at> erlikon.ch, guix-patches <at> gnu.org:
bug#70487; Package guix-patches. (Sat, 20 Apr 2024 23:04:03 GMT) Full text and rfc822 format available.

Message #14 received at 70487 <at> debbugs.gnu.org (full text, mbox):

From: Parnikkapore <poomklao <at> yahoo.com>
To: 70487 <at> debbugs.gnu.org
Subject: [PATCH core-updates 3/4] gnu: lv2: Hard-code path for sord_validate
Date: Sun, 21 Apr 2024 01:02:49 +0200
Change-Id: I29323db7133a17fdf11c37db4df10f4ddce9e8b7
---
 gnu/packages/audio.scm | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index e3a6c692d2..532c835b20 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -3146,6 +3146,15 @@ (define-public lv2
               (base32
                "0gwm63jrvg9lww0rl3sjkgbjwfz0vascpb19cfxmhkmm477ipibq"))))
     (build-system meson-build-system)
+    (arguments
+      (list
+        #:phases
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'patch
+              (lambda _
+                (substitute* "util/lv2_validate.in"
+                  (("sord_validate")
+                   #$(file-append sord "/bin/sord_validate"))))))))
     (inputs
      ;; Leaving off cairo and gtk+-2.0 which are needed for example plugins
      (list libsndfile))
-- 
2.41.0





Information forwarded to guix-patches <at> gnu.org:
bug#70487; Package guix-patches. (Sat, 20 Apr 2024 23:04:04 GMT) Full text and rfc822 format available.

Message #17 received at 70487 <at> debbugs.gnu.org (full text, mbox):

From: Parnikkapore <poomklao <at> yahoo.com>
To: 70487 <at> debbugs.gnu.org
Subject: [PATCH core-updates 4/4] gnu: lsp-plugins: Test with lv2lint and
 lv2_validate.
Date: Sun, 21 Apr 2024 01:02:50 +0200
* gnu/packages/music.scm (lsp-plugins): Add more tests.
[arguments]: Add (guix build json) to the environment.
[phases]: Run lv2_validate and lv2lint.
[native-inputs]: Add lv2 (for lv2_validate) and lv2lint.

Change-Id: Ie73c5943298611dd0f8b42455151306d86a29a1e
---
 gnu/packages/music.scm | 79 ++++++++++++++++++++++++++++--------------
 1 file changed, 53 insertions(+), 26 deletions(-)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 4a3e615c15..a234cbe3c2 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -90,6 +90,7 @@ (define-module (gnu packages music)
   #:use-module (guix download)
   #:use-module (guix gexp)
   #:use-module (guix git-download)
+  #:use-module (guix modules)
   #:use-module (guix packages)
   #:use-module (guix utils)
   #:use-module (gnu packages)
@@ -6213,31 +6214,57 @@ (define-public lsp-plugins
       #:make-flags
       #~(list (string-append "CC=" #$(cc-for-target)))
       #:phases
-      #~(modify-phases %standard-phases
-          (replace 'configure
-            (lambda _
-              (invoke "make" "config"
-                      "STRICT=1"
-                      "TEST=1"
-                      "FEATURES=clap doc jack ladspa lv2 vst2 xdg"
-                      (string-append "PREFIX=" #$output)
-                      (string-append "ETCDIR=" #$output "/etc"))))
-          (replace 'check
-            (lambda* (#:key tests? #:allow-other-keys)
-              (when tests?
-                (invoke ".build/host/lsp-plugin-fw/lsp-plugins-test" "utest"))))
-          (add-after 'install 'move-large-subdirs
-            (lambda _
-              (define (move-to-output output path)
-                (let ((source (string-append #$output path))
-                      (target (string-append output path)))
-                  (mkdir-p (dirname target))
-                  (rename-file source target)))
-              (move-to-output #$output:doc "/share/doc") ; 29MB
-              (move-to-output #$output:lv2 "/lib/lv2") ; 32MB
-              (move-to-output #$output:bin "/bin") ; Avoid cluttering xdg menu
-              (move-to-output #$output:bin "/share")
-              (move-to-output #$output:bin "/etc"))))))
+      (with-imported-modules (source-module-closure '((guix build json)))
+        #~(modify-phases %standard-phases
+            (replace 'configure
+              (lambda _
+                (invoke "make" "config"
+                        "STRICT=1"
+                        "TEST=1"
+                        "FEATURES=clap doc jack ladspa lv2 vst2 xdg"
+                        (string-append "PREFIX=" #$output)
+                        (string-append "ETCDIR=" #$output "/etc"))))
+            (replace 'check
+              (lambda* (#:key tests? #:allow-other-keys)
+                (when tests?
+                  (invoke ".build/host/lsp-plugin-fw/lsp-plugins-test" "utest"))))
+            (add-after 'install 'move-large-subdirs
+              (lambda _
+                (define (move-to-output output path)
+                  (let ((source (string-append #$output path))
+                        (target (string-append output path)))
+                    (mkdir-p (dirname target))
+                    (rename-file source target)))
+                (move-to-output #$output:doc "/share/doc") ; 29MB
+                (move-to-output #$output:lv2 "/lib/lv2") ; 32MB
+                (move-to-output #$output:bin "/bin") ; Avoid cluttering xdg menu
+                (move-to-output #$output:bin "/share")
+                (move-to-output #$output:bin "/etc")))
+            (add-after 'move-large-subdirs 'postinstall-check
+              (lambda* (#:key tests? #:allow-other-keys)
+                (when tests?
+                  (use-modules (guix build json))
+                  (let* ((plugins-json
+                          (call-with-input-file
+                           ".build/target/lsp-plugin-fw/plugins.json"
+                           read-json))
+                         (plugin-objects
+                          (assoc-ref plugins-json "plugins"))
+                         (plugin-urls
+                          (map (lambda (obj) (assoc-ref obj "lv2_uri"))
+                               plugin-objects))
+                         (plugin-urls (filter ->bool plugin-urls)))
+                    (setenv
+                      "LV2_PATH"
+                      (string-append #$output:lv2 "/lib/lv2:" #$lv2 "/lib/lv2"))
+                    (for-each
+                     (lambda (url)
+                       (invoke "lv2lint" "-Mpack" "-t" "* Symbols" url))
+                     plugin-urls))
+                  (system
+                    (string-append "lv2_validate "
+                                   #$output:lv2
+                                   "/usr/lib/lv2/lsp-*.lv2/*.ttl")))))))))
     (inputs
      (list cairo
            freetype
@@ -6246,7 +6273,7 @@ (define-public lsp-plugins
            libx11
            libxrandr
            mesa))
-    (native-inputs (list pkg-config php))
+    (native-inputs (list pkg-config php lv2 lv2lint))
     (outputs '("out" "doc" "lv2" "debug"))
     (synopsis "Audio plugin collection")
     (description "LSP (Linux Studio Plugins) is a collection of audio
-- 
2.41.0





This bug report was last modified 13 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.