all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#36352] [PATCH] gnu: Add solvespace.
@ 2019-06-24 12:27 Myles English
  2019-06-25 20:35 ` swedebugia
  2019-07-02 22:30 ` Ludovic Courtès
  0 siblings, 2 replies; 7+ messages in thread
From: Myles English @ 2019-06-24 12:27 UTC (permalink / raw)
  To: 36352; +Cc: Myles English

* gnu/packages/game-development.scm (solvespace): New variable and
dependencies on gnu package modules.
---
 gnu/packages/engineering.scm | 70 ++++++++++++++++++++++++++++++++++++
 1 file changed, 70 insertions(+)

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 7d48414889..7fc06a6730 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -11,6 +11,7 @@
 ;;; Copyright © 2018, 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
 ;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2019 Tim Stahel <swedneck@swedneck.xyz>
+;;; Copyright © 2019 Myles English <myles@tdma.co>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -80,6 +81,7 @@
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages serialization)
   #:use-module (gnu packages swig)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages texinfo)
@@ -87,6 +89,8 @@
   #:use-module (gnu packages tex)
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages wxwidgets)
+  #:use-module (gnu packages web)
+  #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg))
 
 (define-public librecad
@@ -2062,3 +2066,69 @@ purpose circuit simulator and can perform DC and transient analyses, fourier
 analysis and AC analysis.  The engine is designed to do true mixed-mode
 simulation.")
     (license license:gpl3+)))
+
+(define-public solvespace-3
+  (let ((commit "5df53fc59e7f31e265fabd4c15e6601bd3032833")
+	(revision "1"))
+    (package
+      (name "solvespace")
+      (version (git-version "3.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/solvespace/solvespace.git")
+               (commit commit)
+               (recursive? #t)))
+         (sha256
+          (base32
+           "0kps2rgakdrbm9f6gwkb7za5ikkc4m6y2x162y3c53ixg5snmlr1"))
+         (file-name (git-file-name name version))
+         (modules '((guix build utils)))
+         (snippet
+          '(begin
+             ;; delete some recursive submodules in order to use guix packages
+             (delete-file-recursively "extlib/zlib")
+             (delete-file-recursively "extlib/libpng")
+             (delete-file-recursively "extlib/freetype")
+             ;; pixman only needed for tests?
+             (delete-file-recursively "extlib/pixman")
+             (delete-file-recursively "extlib/cairo")
+             (delete-file-recursively "extlib/flatbuffers")
+             #t))))
+      (build-system cmake-build-system)
+      (arguments
+       `(#:configure-flags
+         (list "-DCMAKE_BUILD_TYPE=Release"
+               (string-append
+                "-DFLATC="
+                (assoc-ref %build-inputs "flatbuffers") "/bin/flatc"))
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'set-git-commit-hash
+             (lambda* (#:key inputs #:allow-other-keys)
+               (substitute* "CMakeLists.txt"
+                 (("include\\(GetGitCommitHash\\)")
+                  "#include(GetGitCommitHash)")
+                 (("\\# set\\(GIT_COMMIT_HASH
+                                    0000000000000000000000000000000000000000\\)")
+                  (string-append "set(GIT_COMMIT_HASH " ,commit ")"))
+                 (("message\\(STATUS \\\"Using in-tree flatbuffers\\\"\\)")
+                  "message(STATUS \"Using guix flatbuffers\")")
+                 (("add_subdirectory\\(extlib/flatbuffers EXCLUDE_FROM_ALL\\)")
+                  "#add_subdirectory(extlib/flatbuffers EXCLUDE_FROM_ALL)"))
+               #t)))))
+      (native-inputs
+       `(("pkg-config" ,pkg-config)))
+      (inputs
+       `(("git" ,git)
+         ("json-c" ,json-c)
+         ("glu" ,glu)
+         ("gtkmm" ,gtkmm)
+         ("flatbuffers" ,flatbuffers)))
+      (home-page "http://solvespace.com")
+      (synopsis "Parametric 2D/3D CAD tool")
+      (description "Parametric 2D/3D computer aided design (CAD) tool and
+constraint-based parametric modeler with simple mechanical simulation
+capabilities.")
+      (license license:gpl3+))))
-- 
2.22.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-06-20 21:29 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-24 12:27 [bug#36352] [PATCH] gnu: Add solvespace Myles English
2019-06-25 20:35 ` swedebugia
2019-07-02 22:30 ` Ludovic Courtès
2019-09-02 13:24   ` Ludovic Courtès
2019-09-03  0:28     ` Myles English
2019-09-03  9:19       ` Ludovic Courtès
2023-06-20 21:28         ` bug#36352: " Jelle Licht

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.