guix_mirror_bot pushed a commit to branch next-master
in repository guix.

commit 08bd82f41eebebdbee496db1801ed13ad59f5b3c
Author: Nicolas Graves <[email protected]>
AuthorDate: Tue Jan 6 17:17:34 2026 +0100

    gnu: gmsh: Switch to pyproject.
    
    * gnu/packages/maths.scm (gmsh):
    [arguments]<#:imported-modules, #:modules, #:phases>: Switch to
    pyproject-build-system.
    
    Change-Id: Ia3506c1e8e9ebff9c24a7e2b5ba66555187f6068
    Signed-off-by: Sharlatan Hellseher <[email protected]>
---
 gnu/packages/maths.scm | 60 ++++++++++++++++++++++++++------------------------
 1 file changed, 31 insertions(+), 29 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index a7ada24005..dc5ef2b1ea 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -3661,6 +3661,37 @@ supports the propositional fragment of PDDL2.2.")
        (snippet
         '(delete-file-recursively "contrib/metis"))))
     (build-system cmake-build-system)
+    (arguments
+     (list
+      #:configure-flags
+      #~(list "-DENABLE_SYSTEM_CONTRIB:BOOL=ON"
+              "-DENABLE_BUILD_SHARED:BOOL=ON"
+              "-DENABLE_BUILD_DYNAMIC:BOOL=ON")
+      #:imported-modules (append %cmake-build-system-modules
+                                 %pyproject-build-system-modules)
+      #:modules '(((guix build pyproject-build-system) #:select 
(site-packages))
+                  (guix build cmake-build-system)
+                  (guix build utils))
+      #:phases
+      (with-extensions (list (pyproject-guile-json))
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'patch-paths
+              (lambda* (#:key inputs outputs #:allow-other-keys)
+                ;; Use the standard Guix site-package path for
+                ;; installation of the Python API.
+                (substitute* "CMakeLists.txt"
+                  (("include\\(GNUInstallDirs\\)\n")
+                   (string-append "include(GNUInstallDirs)\n"
+                                  "  set(GMSH_PY_LIB "
+                                  (site-packages inputs outputs) ")\n"))
+                  (("\\$\\{GMSH\\_PY\\} DESTINATION \\$\\{GMSH\\_LIB\\}")
+                   "${GMSH_PY} DESTINATION ${GMSH_PY_LIB}"))
+                ;; Find the shared library.
+                (let ((libgmsh (string-append #$output
+                                              "/lib/libgmsh.so")))
+                  (substitute* "api/gmsh.py"
+                    (("find_library\\(\"gmsh\"\\)")
+                     (simple-format #f "\"~a\"" libgmsh))))))))))
     (inputs
      (list fltk
            fontconfig
@@ -3676,35 +3707,6 @@ supports the propositional fragment of PDDL2.2.")
            opencascade-occt))
     (native-inputs
      (list python-wrapper))
-    (arguments
-     (list #:configure-flags
-           #~(list "-DENABLE_SYSTEM_CONTRIB:BOOL=ON"
-                   "-DENABLE_BUILD_SHARED:BOOL=ON"
-                   "-DENABLE_BUILD_DYNAMIC:BOOL=ON")
-           #:imported-modules `(,@%cmake-build-system-modules
-                                (guix build python-build-system))
-           #:modules '(((guix build python-build-system) #:select 
(site-packages))
-                       (guix build cmake-build-system)
-                       (guix build utils))
-           #:phases
-           #~(modify-phases %standard-phases
-               (add-after 'unpack 'patch-paths
-                 (lambda* (#:key inputs outputs #:allow-other-keys)
-                   ;; Use the standard Guix site-package path for
-                   ;; installation of the Python API.
-                   (substitute* "CMakeLists.txt"
-                     (("include\\(GNUInstallDirs\\)\n")
-                      (string-append "include(GNUInstallDirs)\n"
-                                     "  set(GMSH_PY_LIB "
-                                     (site-packages inputs outputs) ")\n"))
-                     (("\\$\\{GMSH\\_PY\\} DESTINATION \\$\\{GMSH\\_LIB\\}")
-                      "${GMSH_PY} DESTINATION ${GMSH_PY_LIB}"))
-                   ;; Find the shared library.
-                   (let ((libgmsh (string-append #$output
-                                                 "/lib/libgmsh.so")))
-                     (substitute* "api/gmsh.py"
-                       (("find_library\\(\"gmsh\"\\)")
-                        (simple-format #f "\"~a\"" libgmsh)))))))))
     (home-page "https://gmsh.info/";)
     (synopsis "3D finite element grid generator")
     (description "Gmsh is a 3D finite element grid generator with a built-in

Reply via email to