unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#37169] [PATCH] gnu: Add lib3mf.
@ 2019-08-24  0:12 Steve Sprang
  2019-08-28 16:38 ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Steve Sprang @ 2019-08-24  0:12 UTC (permalink / raw)
  To: 37169

[-- Attachment #1: Type: text/plain, Size: 1 bytes --]



[-- Attachment #2: 0001-gnu-Add-lib3mf.patch --]
[-- Type: text/x-patch, Size: 2352 bytes --]

From 09b40a31d69ca6f6894d9ed33ef519efc64b220b Mon Sep 17 00:00:00 2001
From: Steve Sprang <scs@stevesprang.com>
Date: Fri, 23 Aug 2019 15:23:00 -0700
Subject: [PATCH] gnu: Add lib3mf.

* gnu/packages/engineering.scm (lib3mf): New variable.
---
 gnu/packages/engineering.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index a1f222bed4..778dc6611a 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -12,6 +12,7 @@
 ;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2019 Tim Stahel <swedneck@swedneck.xyz>
 ;;; Copyright © 2019 Jovany Leandro G.C <bit4bit@riseup.net>
+;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2109,3 +2110,37 @@ while keeping the user experience at mind.  Cutter is created by reverse
 engineers for reverse engineers.")
     (license (list license:cc-by-sa3.0  ;the "Iconic" icon set
                    license:gpl3+))))    ;everything else
+
+(define-public lib3mf
+  (package
+    (name "lib3mf")
+    (version "1.8.1")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "https://github.com/3MFConsortium/lib3mf/archive/v"
+			  version ".tar.gz"))
+      (sha256
+       (base32
+	"05wxmsjps0mf5p0gb2wv7zh3b7spvzdslasb3bxs91nar51d2z90"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("googletest-source" ,(package-source googletest))))
+    (inputs
+     `(("libuuid" ,util-linux)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+	 (add-after 'unpack 'unpack-googletest
+	   (lambda* (#:key inputs #:allow-other-keys)
+	     (copy-recursively (assoc-ref inputs "googletest-source")
+			       "UnitTests/googletest")
+	     #t)))))
+    (synopsis "Implementation of the 3D Manufacturing Format (3MF) file standard")
+    (description
+     "Lib3MF is a C++ implementation of the 3D Manufacturing Format (3MF) file
+standard.  It offers a way to integrate 3MF reading and writing capabilities, as
+well as conversion and validation tools for input and output data.  The
+specification can be downloaded at http://3mf.io/specification/.")
+    (home-page "https://3mf.io/")
+    (license license:bsd-2)))
-- 
2.23.0


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

* [bug#37169] [PATCH] gnu: Add lib3mf.
  2019-08-24  0:12 [bug#37169] [PATCH] gnu: Add lib3mf Steve Sprang
@ 2019-08-28 16:38 ` Ludovic Courtès
  2019-08-28 21:27   ` Steve Sprang
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2019-08-28 16:38 UTC (permalink / raw)
  To: Steve Sprang; +Cc: 37169

Steve Sprang <steve.sprang@gmail.com> skribis:

> From 09b40a31d69ca6f6894d9ed33ef519efc64b220b Mon Sep 17 00:00:00 2001
> From: Steve Sprang <scs@stevesprang.com>
> Date: Fri, 23 Aug 2019 15:23:00 -0700
> Subject: [PATCH] gnu: Add lib3mf.
>
> * gnu/packages/engineering.scm (lib3mf): New variable.

Could you address the ‘guix lint’ warnings?  In particular, you’ll have
to use ‘git-fetch’ to get the source.

> +	 (add-after 'unpack 'unpack-googletest
> +	   (lambda* (#:key inputs #:allow-other-keys)
> +	     (copy-recursively (assoc-ref inputs "googletest-source")
> +			       "UnitTests/googletest")

Would it work to simply pass ‘googletest’ as an input?
If not, this approach is fine IMO.

> +     "Lib3MF is a C++ implementation of the 3D Manufacturing Format (3MF) file
> +standard.  It offers a way to integrate 3MF reading and writing capabilities, as
> +well as conversion and validation tools for input and output data.  The
> +specification can be downloaded at http://3mf.io/specification/.")
                                      ^
You can write: @url{http://…}.

Thanks,
Ludo’.

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

* [bug#37169] [PATCH] gnu: Add lib3mf.
  2019-08-28 16:38 ` Ludovic Courtès
@ 2019-08-28 21:27   ` Steve Sprang
  2019-08-31 19:02     ` bug#37169: " Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Steve Sprang @ 2019-08-28 21:27 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 37169

[-- Attachment #1: Type: text/plain, Size: 574 bytes --]

On Wed, Aug 28, 2019 at 9:38 AM Ludovic Courtès <ludo@gnu.org> wrote:

> > +      (add-after 'unpack 'unpack-googletest
> > +        (lambda* (#:key inputs #:allow-other-keys)
> > +          (copy-recursively (assoc-ref inputs "googletest-source")
> > +                            "UnitTests/googletest")
>
> Would it work to simply pass ‘googletest’ as an input?
> If not, this approach is fine IMO.

Unfortunately, no, the build process expects to see the googletest
source in a sub-module directory.

Attached a new patch with the fixes you suggested.

[-- Attachment #2: 0001-gnu-Add-lib3mf.patch --]
[-- Type: text/x-patch, Size: 2503 bytes --]

From a691020809334c94a33a9632c8a7fd75102fd8f2 Mon Sep 17 00:00:00 2001
From: Steve Sprang <scs@stevesprang.com>
Date: Fri, 23 Aug 2019 15:23:00 -0700
Subject: [PATCH] gnu: Add lib3mf.

* gnu/packages/engineering.scm (lib3mf): New variable.
---
 gnu/packages/engineering.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index a1f222bed4..54bf5a7b69 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -12,6 +12,7 @@
 ;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2019 Tim Stahel <swedneck@swedneck.xyz>
 ;;; Copyright © 2019 Jovany Leandro G.C <bit4bit@riseup.net>
+;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2109,3 +2110,38 @@ while keeping the user experience at mind.  Cutter is created by reverse
 engineers for reverse engineers.")
     (license (list license:cc-by-sa3.0  ;the "Iconic" icon set
                    license:gpl3+))))    ;everything else
+
+(define-public lib3mf
+  (package
+    (name "lib3mf")
+    (version "1.8.1")
+    (source
+     (origin
+      (method git-fetch)
+      (uri (git-reference (url "https://github.com/3MFConsortium/lib3mf.git")
+                          (commit (string-append "v" version))))
+      (file-name (git-file-name name version))
+      (sha256
+       (base32
+        "11wpk6n9ga2p57h1dcrp37w77mii0r7r6mlrgmykf7rvii1rzgqd"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("googletest-source" ,(package-source googletest))))
+    (inputs
+     `(("libuuid" ,util-linux)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'unpack-googletest
+           (lambda* (#:key inputs #:allow-other-keys)
+             (copy-recursively (assoc-ref inputs "googletest-source")
+                               "UnitTests/googletest")
+             #t)))))
+    (synopsis "Implementation of the 3D Manufacturing Format (3MF) file standard")
+    (description
+     "Lib3MF is a C++ implementation of the 3D Manufacturing Format (3MF) file
+standard.  It offers a way to integrate 3MF reading and writing capabilities, as
+well as conversion and validation tools for input and output data.  The
+specification can be downloaded at @url{http://3mf.io/specification/}.")
+    (home-page "https://3mf.io/")
+    (license license:bsd-2)))
-- 
2.23.0


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

* bug#37169: [PATCH] gnu: Add lib3mf.
  2019-08-28 21:27   ` Steve Sprang
@ 2019-08-31 19:02     ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2019-08-31 19:02 UTC (permalink / raw)
  To: Steve Sprang; +Cc: 37169-done

Steve Sprang <steve.sprang@gmail.com> skribis:

> From a691020809334c94a33a9632c8a7fd75102fd8f2 Mon Sep 17 00:00:00 2001
> From: Steve Sprang <scs@stevesprang.com>
> Date: Fri, 23 Aug 2019 15:23:00 -0700
> Subject: [PATCH] gnu: Add lib3mf.
>
> * gnu/packages/engineering.scm (lib3mf): New variable.

Applied, thanks!

Ludo’.

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

end of thread, other threads:[~2019-08-31 19:03 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-24  0:12 [bug#37169] [PATCH] gnu: Add lib3mf Steve Sprang
2019-08-28 16:38 ` Ludovic Courtès
2019-08-28 21:27   ` Steve Sprang
2019-08-31 19:02     ` bug#37169: " Ludovic Courtès

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).