From: Paul Garlick <pgarlick@tourbillion-technology.com>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 36615@debbugs.gnu.org
Subject: [bug#36615] [PATCH] gnu: Add opencascade-occt.
Date: Mon, 15 Jul 2019 19:33:20 +0100 [thread overview]
Message-ID: <3458feeb2324ad0285fea2ac4b16330c64e59b99.camel@tourbillion-technology.com> (raw)
In-Reply-To: <87blxydiqk.fsf@gnu.org>
[-- Attachment #1: Type: text/plain, Size: 768 bytes --]
Hi Ludo,
Many thanks for your review. I attach the revised patch.
> I think you should use ‘git-fetch’ instead because generated tarballs
> are notoriously prone to silent change.
'git-fetch' it is. There is a clone-via-https option for OpenCASCADE
so I have updated the 'origin' section accordingly.
> Sometimes CMake-based packages have a configure-time option like
> -DWITH_TESTS=ON. Is there something like that here?
Not in this case, AFAICS. There is a test system that is accessible
after installation, via a shell script, so I have included a comment
and a link to the documentation for that.
This version of OpenCASCADE is the upstream version. In recent times
it has been updated more regularly than the oce version.
Best regards,
Paul.
[-- Attachment #2: Type: text/x-patch, Size: 5332 bytes --]
From 3f50efc7447e7d511cca0ca05ec3539df73838fa Mon Sep 17 00:00:00 2001
From: Paul Garlick <pgarlick@tourbillion-technology.com>
Date: Fri, 12 Jul 2019 10:56:41 +0100
Subject: [PATCH] gnu: Add opencascade-occt.
* gnu/packages/maths.scm (opencascade-occt): New variable.
---
gnu/packages/maths.scm | 91 +++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 90 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 7d2c479..afeac50 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -15,7 +15,7 @@
;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
-;;; Copyright © 2017, 2018 Paul Garlick <pgarlick@tourbillion-technology.com>
+;;; Copyright © 2017, 2018, 2019 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2017 ng0 <ng0@n0.is>
;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
@@ -1618,6 +1618,95 @@ Open CASCADE library.")
license:expat; file src/OpenGl/OpenGl_glext.h
license:bsd-3)))); test framework gtest
+(define-public opencascade-occt
+ (package
+ (name "opencascade-occt")
+ (version "7.3.0p3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.dev.opencascade.org/repos/occt.git")
+ (commit "e1c158598a585694ad769cde5fe705a23dd586f0")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0bdywwxb6mk0ykbiajlvsb37295akqjp0a60y672qjfa67k0ljv4"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Remove files specific to non-free operating systems.
+ (delete-file-recursively "samples/ios")
+ (delete-file-recursively "samples/mfc")
+ (delete-file-recursively "samples/qt/FuncDemo")
+ (delete-file "genconf.bat")
+ (delete-file "gendoc.bat")
+ (delete-file "genproj.bat")
+ (delete-file "upgrade.bat")
+ ;; Remove references to deleted files.
+ (substitute* "dox/FILES_HTML.txt"
+ ((".*standard.*") "" )
+ ((".*UIKitSample.*") ""))
+ #t))))
+ (build-system cmake-build-system)
+ (arguments
+ '(;; There is no test target for make. OCCT provides an
+ ;; 'Automated Testing System', which may be accessed after
+ ;; installation via the draw.sh script. draw.sh is located in
+ ;; the bin directory. For details see:
+ ;; https://www.opencascade.com/doc/occt-7.3.0/overview/html/\
+ ;; occt_dev_guides__tests.html
+ #:tests? #f
+ ;; Configure without freeimage: attempting to link against the
+ ;; freeimage version 3.17 library leads to 'undefined
+ ;; reference' errors.
+ #:configure-flags
+ (list "-DUSE_FREEIMAGE:BOOL=OFF"
+ "-DUSE_TBB:BOOL=ON"
+ "-DUSE_VTK:BOOL=OFF"
+ "-DBUILD_DOC_Overview:BOOL=OFF"
+ "-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON"
+ "-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON"
+ "-UCMAKE_INSTALL_LIBDIR")))
+ (inputs
+ `(("doxygen" ,doxygen)
+ ;("freeimage" ,freeimage)
+ ("freetype" ,freetype)
+ ("glu" ,glu)
+ ("libxext" ,libxext)
+ ("libxi" ,libxi)
+ ("libxmu" ,libxmu)
+ ("mesa" ,mesa)
+ ("tbb" ,tbb)
+ ("tcl" ,tcl)
+ ("tk" ,tk)))
+ ;; TODO: build Overview documentation and add 'doc' output.
+ (home-page "https://www.opencascade.com")
+ (synopsis "Libraries for 3D modeling and numerical simulation")
+ (description
+ "Open CASCADE is a set of libraries for the development of applications
+dealing with 3D CAD data or requiring industrial 3D capabilities. It includes
+C++ class libraries providing services for 3D surface and solid modeling, CAD
+data exchange, and visualization. It is used for development of specialized
+software dealing with 3D models in design (CAD), manufacturing (CAM),
+numerical simulation (CAE), measurement equipment (CMM), and quality
+control (CAQ) domains.
+
+This is the certified version of the Open Cascade Technology (OCCT) library.")
+ (license (list ;; OCCT library:
+ license:lgpl2.1; with an exception for the use of header
+ ; files, see OCCT_LGPL_EXCEPTION.txt.
+ ;; Files src/OpenGl/glext.h, adm/cmake/cotire.cmake and
+ ;; src/OpenGl/OpenGl_HaltonSampler.hxx:
+ license:expat
+ ;; Files src/ExprIntrp/ExprIntrp.tab.* and
+ ;; src/StepFile/step.tab.*:
+ license:gpl3+ ; with Bison 2.2 exception.
+ ;; File src/NCollection/NCollection_UtfIterator.lxx:
+ (license:non-copyleft
+ "https://www.unicode.org/license.html")
+ ;; File src/NCollection/NCollection_StdAllocator.hxx:
+ license:public-domain))))
+
(define-public gmsh
(package
(name "gmsh")
--
1.8.3.1
next prev parent reply other threads:[~2019-07-15 18:34 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-12 10:07 [bug#36615] [PATCH] gnu: Add opencascade-occt Paul Garlick
2019-07-12 21:51 ` Ludovic Courtès
2019-07-15 18:33 ` Paul Garlick [this message]
2019-07-15 19:59 ` Ludovic Courtès
2019-07-16 21:32 ` Paul Garlick
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3458feeb2324ad0285fea2ac4b16330c64e59b99.camel@tourbillion-technology.com \
--to=pgarlick@tourbillion-technology.com \
--cc=36615@debbugs.gnu.org \
--cc=ludo@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).