diff mbox series

[bug#37169] gnu: Add lib3mf.

Message ID CA+xn8YCC24fY73PfTdgh-B7rb8F+BNMd561zH+C28fcj5sGnkg@mail.gmail.com
State Accepted
Headers show
Series [bug#37169] gnu: Add lib3mf. | expand

Commit Message

Steve Sprang Aug. 28, 2019, 9:27 p.m. UTC
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.

Comments

Ludovic Courtès Aug. 31, 2019, 7:02 p.m. UTC | #1
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’.
diff mbox series

Patch

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