From patchwork Fri Feb 28 14:26:49 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mattia Bunel X-Patchwork-Id: 39440 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id A392827BBEA; Fri, 28 Feb 2025 14:28:39 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.3 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,PDS_OTHER_BAD_TLD,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H2,RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL, RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS,URIBL_BLOCKED,URIBL_SBL_A autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id C870227BBE2 for ; Fri, 28 Feb 2025 14:28:35 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1to1LX-00033p-1d; Fri, 28 Feb 2025 09:28:11 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1to1LQ-00032p-WC for guix-patches@gnu.org; Fri, 28 Feb 2025 09:28:06 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1to1LQ-0001uY-Mr for guix-patches@gnu.org; Fri, 28 Feb 2025 09:28:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:Date:References:In-Reply-To:From:To:Subject; bh=6AKW/QpRO3/lcR5K0xhRO4/rYj0QfrDHe6jYEdk0jNA=; b=KIOIwq6HSGj6vcN/cQSRDCBfT7pD1N5H2fcizf7SAzUc2Hh3GNjxgUIODFHcESwG/3U3J627ZL/GDoDY+kRf5mxg57xJcsdTU+Y971M5xD5eAGKB2O4CJ8ygsMNbf7nfVHzPh22QX0myRiYTqlp8x6cPROZ7NzRXgZYBXiPrPfbxSzQyY5HLMYkbhwsYGADN+BgwFOwwRtwow9qrJ8KnRxkaOAxsYiCb3we64eYSMzNkhCGZLtO7/ZUZ5bLYrLGnSc8nriF+TJ312uJIjae9npDQasZtu4Nh5GT0DGpkTxRNlNxBmIcOXxk9LYzfT4nIKa95OJpylX16/DiJLP9GOg==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1to1LP-0004Ff-G9 for guix-patches@gnu.org; Fri, 28 Feb 2025 09:28:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#73934] [v2] Add CloudCompare 2.13 Resent-From: Mattia Bunel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 28 Feb 2025 14:28:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 73934 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo patch To: Andreas Enge Cc: Sharlatan Hellseher , 73934@debbugs.gnu.org, Eric Bavier Received: via spool by 73934-submit@debbugs.gnu.org id=B73934.174075282716097 (code B ref 73934); Fri, 28 Feb 2025 14:28:03 +0000 Received: (at 73934) by debbugs.gnu.org; 28 Feb 2025 14:27:07 +0000 Received: from localhost ([127.0.0.1]:47763 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1to1KU-0004BU-Gw for submit@debbugs.gnu.org; Fri, 28 Feb 2025 09:27:07 -0500 Received: from drosera-smtp.ehess.fr ([193.48.45.73]:57778 helo=drosera.ehess.fr) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1to1KP-0004AW-VL for 73934@debbugs.gnu.org; Fri, 28 Feb 2025 09:27:04 -0500 Received: from smtp-ehess-auth.ehess.fr (smtp-ehess-auth.ehess.fr [193.48.45.113]) by drosera.ehess.fr (Postfix) with ESMTP id 5F1A9140010; Fri, 28 Feb 2025 15:26:55 +0100 (CET) Received: from localhost (91-168-67-244.subs.proxad.net [91.168.67.244]) by smtp-ehess-auth.ehess.fr (Postfix) with ESMTPSA id 2AF3F220088; Fri, 28 Feb 2025 15:26:55 +0100 (CET) In-Reply-To: References: Date: Fri, 28 Feb 2025 15:26:49 +0100 Message-ID: <87jz9ap2l2.fsf@kaiju.mail-host-address-is-not-set> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Mattia Bunel X-ACL-Warn: , Mattia Bunel via Guix-patches X-Patchwork-Original-From: Mattia Bunel via Guix-patches via From: Mattia Bunel Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches Hello, Thanks for your corrections to these two patches, and for integrating the ~libe57format~ package. For the ~cloudcompare~ package, I was also surprised by the joint use of qt6 and qt5. I've just checked, it's an error on my part, the package does compile with ~qtlocation-5~ input. I am attaching a corrected version of this package. As for the rest, I agree with you. It be better to replace the submodules and external dependencies integrated in the sources. But I don't really know how to do that. I did find some examples in other packages, but it seems necessary to patch the ~cmake~ files, which I don't really know how to do. Mattia Andreas Enge writes: > Hello Mattia, > > apologies for the exceptionally long delay in treating your patches, > which are very nice and well prepared. > > I have slightly adapted libe57format. For the license, I kept only > boost1.0, as this is given in the licence file and also in a few headers > I checked. I have tried to make the tests work - it is possible to add > the external test data in a separate origin, but even then there are > complaints about googletest not working. So I have updated the > explanations, removed the googletest native input and kept the tests > disabled. > > This one is pushed. > > For cloudcompare, please find a v2 attached. The git tag did not > correspond to the version, and the licence is gpl2+ ("or later"). > > I wonder whether the recursive git download is the way to go, or whether > it does not pull bundled libraries that we had better unbundle? A few of > the submodules contain "extern" in their name. For instance, it looks as > if there is a second copy of libe57format that is downloaded. > > I also wonder whether the mixture of qt@5 and qt@6 packages is a good > idea. > > In any case, the package compiles, and the binary starts. > > What do you think? > > Andreas > > From 5a42727e4625470406a47650e525a1667f9b7514 Mon Sep 17 00:00:00 2001 > Message-ID: <5a42727e4625470406a47650e525a1667f9b7514.1738786951.git.andreas@enge.fr> > From: Mattia Bunel > Date: Wed, 5 Feb 2025 20:01:36 +0100 > Subject: [PATCH] gnu: Add cloudcompare. > > * gnu/packages/geo.scm (cloudcompare): New variable. > > Change-Id: If7ec6bc74ade4df662e5e66eda13979efa53161b > Signed-off-by: Andreas Enge > --- > gnu/packages/geo.scm | 96 ++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 96 insertions(+) > > diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm > index 368ea01ca17..0dd5ca921cc 100644 > --- a/gnu/packages/geo.scm > +++ b/gnu/packages/geo.scm > @@ -3725,3 +3725,99 @@ (define-public libe57format > attributes associated with 3D point data (color and intensity), > and 2D images (photos taken using a 3D imaging system).") > (license license:boost1.0))) > + > +(define-public cloudcompare > + (package > + (name "cloudcompare") > + (version "2.13.2") > + (source > + (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/CloudCompare/CloudCompare") > + (commit "v2.13.2") > + (recursive? #t))) > + (file-name (git-file-name name version)) > + (sha256 > + (base32 "0wck05zbfkw7cg8h6fjiinjzrsk55858qg0k2m5rmr9dfdzjbzbb")))) > + (inputs (list qtbase-5 > + qtsvg-5 > + qtlocation > + qttools-5 > + gdal > + laszip > + xerces-c > + libe57format > + zlib)) > + (build-system cmake-build-system) > + (arguments > + (list > + #:configure-flags #~(list > + ;; Options > + "-DOPTION_BUILD_CCVIEWER=NO" > + "-DBUILD_TESTING=ON" > + "-DOPTION_USE_SHAPE_LIB=YES" > + "-DOPTION_USE_DXF_LIB=YES" > + "-DOPTION_USE_GDAL=YES" > + ;; Shaders > + ;; At least a shader is needed > + "-DPLUGIN_GL_QEDL=YES" > + "-DPLUGIN_GL_QSSAO=YES" > + ;; IO > + "-DPLUGIN_IO_QCORE=YES" > + "-DPLUGIN_IO_QADDITIONAL=NO" > + "-DPLUGIN_IO_QCSV_MATRIX=NO" > + ;; No guix package for DRACO > + "-DPLUGIN_IO_QDRACO=NO" > + "-DPLUGIN_IO_QE57=YES" > + ;; No guix package for FBX > + "-DPLUGIN_IO_QFBX=NO" > + ;; laszip will replace PDAL in CloudCompare 2.13 > + "-DPLUGIN_IO_QLAS=YES" > + "-DPLUGIN_IO_QPDAL=NO" > + "-DPLUGIN_IO_QPHOTOSCAN=YES" > + ;; No guix package for Riegl RDBlib > + "-DPLUGIN_IO_QRDB=NO" > + "-DPLUGIN_IO_QSTEP=NO" > + ;; Plugins > + "-DPLUGIN_STANDARD_QANIMATION=YES" > + "-DQANIMATION_WITH_FFMPEG_SUPPORT=NO" > + "-DPLUGIN_STANDARD_QBROOM=YES" > + ;; Compilation error > + "-DPLUGIN_STANDARD_QCANUPO=YES" > + "-DPLUGIN_STANDARD_QCLOUDLAYERS=YES" > + "-DPLUGIN_STANDARD_QCOLORIMETRIC_SEGMENTER=YES" > + "-DPLUGIN_STANDARD_QCOMPASS=YES" > + ;; Only for Windows at the moment > + "-DPLUGIN_STANDARD_QCORK=NO" > + "-DPLUGIN_STANDARD_QCSF=YES" > + "-DPLUGIN_STANDARD_QFACETS=YES" > + ;; Error with eigen > + "-DPLUGIN_STANDARD_QHOUGH_NORMALS=NO" > + "-DPLUGIN_STANDARD_QHPR=YES" > + ;; Need qtWebSocket engine > + "-DPLUGIN_STANDARD_QJSONRPC=NO" > + "-DPLUGIN_STANDARD_QM3C2=YES" > + ;; Need PCL lib > + "-DPLUGIN_STANDARD_MASONRY_QAUTO_SEG=NO" > + "-DPLUGIN_STANDARD_MASONRY_QMANUAL_SEG=NO" > + "-DPLUGIN_STANDARD_QPCL=NO" > + ;; Need CGAL > + "-DPLUGIN_STANDARD_QMESH_BOOLEAN=NO" > + "-DPLUGIN_STANDARD_QMPLANE=YES" > + "-DPLUGIN_STANDARD_QPCV=NO" > + "-DPLUGIN_STANDARD_QPOISSON_RECON=YES" > + "-DPLUGIN_STANDARD_QRANSAC_SD=YES" > + "-DPLUGIN_STANDARD_QSRA=YES") > + #:build-type "Release" > + #:tests? #f)) > + (home-page "https://cloudcompare.org/") > + (synopsis "Point cloud processing software") > + (description > + "CloudCompare is a 3D point cloud (and triangular mesh) processing > +software. It was originally designed to perform comparison between two > +3D point clouds (such as the ones obtained with a laser scanner) or between > +a point cloud and a triangular mesh. It relies on an octree structure that > +is highly optimized for this particular use-case. It is also meant to deal > +with huge point clouds.") > + (license license:gpl2+))) > > base-commit: cc2b236e3777c0f7c758805289f42b3932668c57 > prerequisite-patch-id: 0289950ff5d75c0e49094995eef252869b9b875f > -- > 2.48.1 > From 179250234c0fa4fbb62b879d7601cb351f0bd41b Mon Sep 17 00:00:00 2001 Message-ID: <179250234c0fa4fbb62b879d7601cb351f0bd41b.1740752522.git.mattia.bunel@ehess.fr> From: Mattia Bunel Date: Wed, 5 Feb 2025 20:01:36 +0100 Subject: [PATCH] gnu: Add cloudcompare. * gnu/packages/geo.scm (cloudcompare): New variable. --- gnu/packages/geo.scm | 96 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index 54f96fef2b..379ff0025e 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -4001,3 +4001,99 @@ (define-public libe57format attributes associated with 3D point data (color and intensity), and 2D images (photos taken using a 3D imaging system).") (license license:boost1.0))) + +(define-public cloudcompare + (package + (name "cloudcompare") + (version "2.13.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/CloudCompare/CloudCompare") + (commit "v2.13.2") + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0wck05zbfkw7cg8h6fjiinjzrsk55858qg0k2m5rmr9dfdzjbzbb")))) + (inputs (list qtbase-5 + qtsvg-5 + qtlocation-5 + qttools-5 + gdal + laszip + xerces-c + libe57format + zlib)) + (build-system cmake-build-system) + (arguments + (list + #:configure-flags #~(list + ;; Options + "-DOPTION_BUILD_CCVIEWER=NO" + "-DBUILD_TESTING=ON" + "-DOPTION_USE_SHAPE_LIB=YES" + "-DOPTION_USE_DXF_LIB=YES" + "-DOPTION_USE_GDAL=YES" + ;; Shaders + ;; At least a shader is needed + "-DPLUGIN_GL_QEDL=YES" + "-DPLUGIN_GL_QSSAO=YES" + ;; IO + "-DPLUGIN_IO_QCORE=YES" + "-DPLUGIN_IO_QADDITIONAL=NO" + "-DPLUGIN_IO_QCSV_MATRIX=NO" + ;; No guix package for DRACO + "-DPLUGIN_IO_QDRACO=NO" + "-DPLUGIN_IO_QE57=YES" + ;; No guix package for FBX + "-DPLUGIN_IO_QFBX=NO" + ;; laszip will replace PDAL in CloudCompare 2.13 + "-DPLUGIN_IO_QLAS=YES" + "-DPLUGIN_IO_QPDAL=NO" + "-DPLUGIN_IO_QPHOTOSCAN=YES" + ;; No guix package for Riegl RDBlib + "-DPLUGIN_IO_QRDB=NO" + "-DPLUGIN_IO_QSTEP=NO" + ;; Plugins + "-DPLUGIN_STANDARD_QANIMATION=YES" + "-DQANIMATION_WITH_FFMPEG_SUPPORT=NO" + "-DPLUGIN_STANDARD_QBROOM=YES" + ;; Compilation error + "-DPLUGIN_STANDARD_QCANUPO=YES" + "-DPLUGIN_STANDARD_QCLOUDLAYERS=YES" + "-DPLUGIN_STANDARD_QCOLORIMETRIC_SEGMENTER=YES" + "-DPLUGIN_STANDARD_QCOMPASS=YES" + ;; Only for Windows at the moment + "-DPLUGIN_STANDARD_QCORK=NO" + "-DPLUGIN_STANDARD_QCSF=YES" + "-DPLUGIN_STANDARD_QFACETS=YES" + ;; Error with eigen + "-DPLUGIN_STANDARD_QHOUGH_NORMALS=NO" + "-DPLUGIN_STANDARD_QHPR=YES" + ;; Need qtWebSocket engine + "-DPLUGIN_STANDARD_QJSONRPC=NO" + "-DPLUGIN_STANDARD_QM3C2=YES" + ;; Need PCL lib + "-DPLUGIN_STANDARD_MASONRY_QAUTO_SEG=NO" + "-DPLUGIN_STANDARD_MASONRY_QMANUAL_SEG=NO" + "-DPLUGIN_STANDARD_QPCL=NO" + ;; Need CGAL + "-DPLUGIN_STANDARD_QMESH_BOOLEAN=NO" + "-DPLUGIN_STANDARD_QMPLANE=YES" + "-DPLUGIN_STANDARD_QPCV=NO" + "-DPLUGIN_STANDARD_QPOISSON_RECON=YES" + "-DPLUGIN_STANDARD_QRANSAC_SD=YES" + "-DPLUGIN_STANDARD_QSRA=YES") + #:build-type "Release" + #:tests? #f)) + (home-page "https://cloudcompare.org/") + (synopsis "Point cloud processing software") + (description + "CloudCompare is a 3D point cloud (and triangular mesh) processing +software. It was originally designed to perform comparison between two +3D point clouds (such as the ones obtained with a laser scanner) or between +a point cloud and a triangular mesh. It relies on an octree structure that +is highly optimized for this particular use-case. It is also meant to deal +with huge point clouds.") + (license license:gpl2+))) base-commit: a76708a872e65230931f3c5c3b079d0a39d5cb84 -- 2.48.1