From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:59693) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hn5nY-0000rs-Cn for guix-patches@gnu.org; Mon, 15 Jul 2019 14:34:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hn5nW-0006ze-QO for guix-patches@gnu.org; Mon, 15 Jul 2019 14:34:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:40248) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hn5nW-0006zO-Jv for guix-patches@gnu.org; Mon, 15 Jul 2019 14:34:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hn5nW-0005mW-Fm for guix-patches@gnu.org; Mon, 15 Jul 2019 14:34:02 -0400 Subject: [bug#36615] [PATCH] gnu: Add opencascade-occt. Resent-Message-ID: Message-ID: <3458feeb2324ad0285fea2ac4b16330c64e59b99.camel@tourbillion-technology.com> From: Paul Garlick Date: Mon, 15 Jul 2019 19:33:20 +0100 In-Reply-To: <87blxydiqk.fsf@gnu.org> References: <1562926068-5497-1-git-send-email-pgarlick@tourbillion-technology.com> <87blxydiqk.fsf@gnu.org> Content-Type: multipart/mixed; boundary="=-R6sr3mL9cvdpIYd6MwbN" Mime-Version: 1.0 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 36615@debbugs.gnu.org --=-R6sr3mL9cvdpIYd6MwbN Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit 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. --=-R6sr3mL9cvdpIYd6MwbN Content-Type: text/x-patch; name="0001-gnu-Add-opencascade-occt.patch"; charset="UTF-8" Content-Description: Content-Disposition: inline; filename="0001-gnu-Add-opencascade-occt.patch" Content-Transfer-Encoding: 8bit >From 3f50efc7447e7d511cca0ca05ec3539df73838fa Mon Sep 17 00:00:00 2001 From: Paul Garlick 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 ;;; Copyright © 2016 Leo Famulari ;;; Copyright © 2016, 2017 Thomas Danckaert -;;; Copyright © 2017, 2018 Paul Garlick +;;; Copyright © 2017, 2018, 2019 Paul Garlick ;;; Copyright © 2017 ng0 ;;; Copyright © 2017 Ben Woodcroft ;;; Copyright © 2017 Theodoros Foradis @@ -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 --=-R6sr3mL9cvdpIYd6MwbN--