[PATCH] gnu: Add xschem

DoneSubmitted by Konstantinos Agiannis.
Details
2 participants
  • Konstantinos Agiannis
  • Ludovic Courtès
Owner
unassigned
Severity
normal
K
K
Konstantinos Agiannis wrote on 26 Apr 13:27 +0200
(address . guix-patches@gnu.org)
20220426112751.630090-1-agiannis.kon@gmail.com
---
gnu/packages/engineering.scm | 46 ++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)

Toggle diff (70 lines)
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 1c945eb07b..ec58a92451 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2022 Olivier Dion <olivier.dion@polymtl.ca>
 ;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
 ;;; Copyright © 2022 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
+;;; Copyright © 2022 Konstantinos Agiannis <agiannis.kon@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -78,6 +79,7 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cpp)
   #:use-module (gnu packages curl)
+  #:use-module (gnu packages gawk)
   #:use-module (gnu packages dejagnu)
   #:use-module (gnu packages digest)
   #:use-module (gnu packages docbook)
@@ -3659,3 +3661,47 @@ python bindings.  It belongs to the Cura project from Ultimaker.")
     (description "Cura is a slicing software from Ultimaker.  A @emph{slicer}
 generates G-Code for 3D printers.")
     (license license:lgpl3+)))
+
+(define-public xschem
+  (let ((commit "f574539e21b297fa3bcebd52114555e162a5fc56")
+        (revision "1"))
+    (package
+      (name "xschem")
+      (version (git-version "3.0.0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/StefanSchippers/xschem")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "129kj8m3wcf62plp74kml6pqwld4lnfmxy070a82lvj0rfiy77hb"))))
+      (native-inputs (list flex bison pkg-config))
+      (inputs (list gawk
+                    tcl
+                    tk
+                    libxpm
+                    cairo
+                    libxrender
+                    libxcb)) ; Last 3 are optional, but good to have.
+      (build-system gnu-build-system)
+      (arguments
+       `(#:tests? #f
+         #:phases
+         (modify-phases %standard-phases
+           (delete 'configure)
+           (add-before 'build 'setenv
+             (lambda _
+               (setenv "CC"
+                       ,(cc-for-target))
+               (invoke "./configure"
+                       (string-append "--prefix="
+                                      (assoc-ref %outputs "out"))) #t)))))
+      (synopsis "Hierarchical schematic editor")
+      (description
+       "Xschem is an X11 schematic editor written in C and focused on
+hierarchical and parametric design. It can generate VHDL, Verilog or Spice
+netlists from the drawn schematic, allowing the simulation of the circuit.")
+      (home-page "https://xschem.sourceforge.io/stefan/index.html")
+      (license license:gpl2+))))
-- 
2.30.2
L
L
Ludovic Courtès wrote on 2 May 18:02 +0200
(name . Konstantinos Agiannis)(address . agiannis.kon@gmail.com)(address . 55129-done@debbugs.gnu.org)
87bkwfsz1b.fsf@gnu.org
Hi,

Konstantinos Agiannis <agiannis.kon@gmail.com> skribis:

Toggle quote (4 lines)
> ---
> gnu/packages/engineering.scm | 46 ++++++++++++++++++++++++++++++++++++
> 1 file changed, 46 insertions(+)

Pushed with a commit log and the cosmetic changes below.

Thanks!

Ludo’.
Toggle diff (20 lines)
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 9d06b77c27..0ef1870a50 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -3692,12 +3692,11 @@ (define-public xschem
          (modify-phases %standard-phases
            (delete 'configure)
            (add-before 'build 'setenv
-             (lambda _
-               (setenv "CC"
-                       ,(cc-for-target))
+             (lambda* (#:key outputs #:allow-other-keys)
+               (setenv "CC" ,(cc-for-target))
                (invoke "./configure"
                        (string-append "--prefix="
-                                      (assoc-ref %outputs "out"))) #t)))))
+                                      (assoc-ref outputs "out"))))))))
       (synopsis "Hierarchical schematic editor")
       (description
        "Xschem is an X11 schematic editor written in C and focused on
Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 55129@debbugs.gnu.org