diff --git a/graphics/cloudcompare/Makefile b/graphics/cloudcompare/Makefile index 6ea6bc783295..03f2d5de5f4e 100644 --- a/graphics/cloudcompare/Makefile +++ b/graphics/cloudcompare/Makefile @@ -1,92 +1,92 @@ PORTNAME= cloudcompare DISTVERSIONPREFIX= v -DISTVERSION= 2.12.4 -PORTREVISION= 18 +DISTVERSION= 2.13.2 CATEGORIES= graphics -MAINTAINER= ports@FreeBSD.org -COMMENT= 3D point cloud processing software -WWW= https://www.cloudcompare.org/ +MAINTAINER= alven@FreeBSD.org +COMMENT= 3D point cloud (and triangular mesh) editing and processing software +WWW= https://www.cloudcompare.org/ \ + https://github.com/CloudCompare/CloudCompare/ LICENSE= GPLv2+ LGPL20+ LICENSE_COMB= multi -USES= cmake compiler:c++11-lang localbase:ldflags qt:5 +USES= cmake gl qt:5 + USE_GITHUB= yes GH_ACCOUNT= CloudCompare GH_PROJECT= ${GH_ACCOUNT} -GH_TUPLE= CloudCompare:CCCoreLib:f0d5450:CloudCompare/libs/qCC_db/extern/CCCoreLib - -USE_QT= concurrent core gui opengl printsupport widgets buildtools:build qmake:build svg linguisttools:build +GH_TUPLE= CloudCompare:CCCoreLib:a8ce4270:cccorelib/libs/qCC_db/extern/CCCoreLib \ + jlblancoc:nanoflann:2f54b8e:nanoflann/libs/qCC_db/extern/CCCoreLib/extern/nanoflann \ + asmaloney:libE57Format:1914b8ea:libe57format/plugins/core/IO/qE57IO/extern/libE57Format \ + google:googletest:7a7231c:googletest/plugins/core/IO/qE57IO/extern/libE57Format/test/extern/googletest \ + dgirardeau:q3DMASC:4eec6459:q3dmasc/plugins/core/Standard/q3DMASC \ + davisking:dlib:9117bd78:dlib/plugins/core/Standard/qCanupo/contrib/dlib \ + CloudCompare:qJSonRPCPlugin:1ff2dbe4:qjsonrpcplugin/plugins/core/Standard/qJSonRPCPlugin \ + hvs-ait:mplane-plugin:342ef9f5:mplaneplugin/plugins/core/Standard/qMPlane \ + CyberbuildLab:masonry-cc:0c590fb2:masonrycc/plugins/core/Standard/qMasonry \ + cloudcompare:PoissonRecon:d215dbaa:poissonrecon/plugins/core/Standard/qPoissonRecon/extern/PoissonRecon \ + truebelief:cc-treeiso-plugin:fbe6a41a:cctreeisoplugin/plugins/core/Standard/qTreeIso +USE_GL= gl glu USE_LDCONFIG= yes +USE_QT= concurrent core gui opengl printsupport widgets buildtools:build qmake:build svg linguisttools:build -# PDAL support disabled ATM -# plugins/core/IO/qPDALIO/src/LASFilter.cpp:1360:24: error: no member named 'incompatibleSrs' in 'pdal::LasHeader' OPTIONS_DEFINE= DXFLIB GAMEPAD GDAL PLUGINS SHAPELIB OPTIONS_DEFAULT=DXFLIB GAMEPAD GDAL PLUGINS SHAPELIB OPTIONS_SUB= yes DXFLIB_DESC= Enable AutoCAD DXF file support GAMEPAD_DESC= Enable Qt gamepad support GDAL_DESC= Enable raster file support -PDAL_DESC= Enable point cloud data support SHAPELIB_DESC= Enable shape file support DXFLIB_CMAKE_BOOL= OPTION_USE_DXF_LIB GAMEPAD_USE= QT=gamepad GAMEPAD_CMAKE_BOOL= OPTION_SUPPORT_GAMEPADS GDAL_CMAKE_BOOL= OPTION_USE_GDAL GDAL_CMAKE_ON= -DGDAL_INCLUDE_DIR=${PREFIX}/include \ -DGDAL_LIBRARY=${PREFIX}/lib/libgdal.so GDAL_LIB_DEPENDS= libgdal.so:graphics/gdal -PDAL_CMAKE_BOOL= PLUGIN_IO_QPDAL -PDAL_CMAKE_ON= -DJSON_ROOT_DIR=${PREFIX}/include/jsoncpp -PDAL_LIB_DEPENDS= libpdal_base.so:math/pdal - SHAPELIB_CMAKE_BOOL= OPTION_USE_SHAPE_LIB SHAPELIB_LIB_DEPENDS= libshp.so:devel/shapelib -PLUGINS_USES= eigen:3 gl jpeg xorg +PLUGINS_USES= eigen:3 jpeg xorg PLUGINS_CMAKE_BOOL= PLUGIN_STANDARD_QANIMATION \ PLUGIN_STANDARD_QBROOM \ PLUGIN_STANDARD_QCOMPASS \ PLUGIN_STANDARD_QCSF \ PLUGIN_IO_QCSV_MATRIX \ + PLUGIN_IO_QPDAL \ PLUGIN_GL_QEDL \ PLUGIN_STANDARD_QFACETS \ PLUGIN_STANDARD_QHPR \ PLUGIN_STANDARD_QM3C2 \ PLUGIN_STANDARD_QPCV \ PLUGIN_IO_QPHOTOSCAN \ PLUGIN_STANDARD_QRANSAC_SD \ PLUGIN_STANDARD_QSRA \ PLUGIN_GL_QSSAO # plugins requiring rare external libs are left out, TODO maybe add some of them? -PLUGINS_CMAKE_ON= -DEIGEN_ROOT_DIR:BOOL=${LOCALBASE}/include/eigen3 +PLUGINS_CMAKE_ON= -DEIGEN_ROOT_DIR:BOOL=${LOCALBASE}/include/eigen3 -DJSON_ROOT_DIR=${LOCALBASE}/include/jsoncpp PLUGINS_CXXFLAGS= ${PLUGINS_CXXFLAGS_${CHOSEN_COMPILER_TYPE}} PLUGINS_CXXFLAGS_clang= -Wno-narrowing -PLUGINS_CXXFLAGS+= -DEIGEN_DONT_PARALLELIZE # OpenMP is broken in cmake: see bug#223678 -PLUGINS_USE= XORG=ice,sm,x11,xext,xt GL=gl,glu +PLUGINS_USE= XORG=ice,sm,x11,xext,xt PLUGINS_LIB_DEPENDS= libboost_thread.so:devel/boost-libs \ libexpat.so:textproc/expat2 \ libflann_cpp.so:math/flann \ libfreetype.so:print/freetype2 \ + libpdalcpp.so:math/pdal \ libpng.so:graphics/png \ libtiff.so:graphics/tiff \ libvtkCommonCore-${VTK_VER}.so:math/vtk${VTK_VER:R} PLUGINS_IMPLIES= SHAPELIB -pre-configure: - @${REINPLACE_CMD} -e 's,%%PREFIX%%,${PREFIX},1' ${WRKSRC}/snap/gui/ccViewer.desktop ${WRKSRC}/snap/gui/cloudcompare.desktop - post-install: - @${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps - ${INSTALL_DATA} ${WRKSRC}/snap/gui/ccViewer.desktop ${STAGEDIR}${PREFIX}/share/applications - ${INSTALL_DATA} ${WRKSRC}/snap/gui/ccViewer.png ${STAGEDIR}${PREFIX}/share/pixmaps - ${INSTALL_DATA} ${WRKSRC}/snap/gui/cloudcompare.desktop ${STAGEDIR}${PREFIX}/share/applications - ${INSTALL_DATA} ${WRKSRC}/snap/gui/cloudcompare.png ${STAGEDIR}${PREFIX}/share/pixmaps + ${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps + ${INSTALL_DATA} ${FILESDIR}/*.desktop ${STAGEDIR}${PREFIX}/share/applications + ${INSTALL_DATA} ${FILESDIR}/*.png ${STAGEDIR}${PREFIX}/share/pixmaps .include <../../math/vtk9/Makefile.version> .include diff --git a/graphics/cloudcompare/distinfo b/graphics/cloudcompare/distinfo index 4f44fe6e210d..e14730208e57 100644 --- a/graphics/cloudcompare/distinfo +++ b/graphics/cloudcompare/distinfo @@ -1,5 +1,25 @@ -TIMESTAMP = 1659240483 -SHA256 (CloudCompare-CloudCompare-v2.12.4_GH0.tar.gz) = 31c1f4f91efbdb74619cebb36f57f999d6f1a57bb6f87b13e60d21e670c38f68 -SIZE (CloudCompare-CloudCompare-v2.12.4_GH0.tar.gz) = 35685278 -SHA256 (CloudCompare-CCCoreLib-f0d5450_GH0.tar.gz) = 564d3cfa2724580c0344266da0af778621a4e93b49a8f745df7e49de8db45a30 -SIZE (CloudCompare-CCCoreLib-f0d5450_GH0.tar.gz) = 235019 +TIMESTAMP = 1771603908 +SHA256 (CloudCompare-CloudCompare-v2.13.2_GH0.tar.gz) = 1f66785649a611124aeed17c2f5015841664536ee953a7233dae2729bcc96a72 +SIZE (CloudCompare-CloudCompare-v2.13.2_GH0.tar.gz) = 35425558 +SHA256 (CloudCompare-CCCoreLib-a8ce4270_GH0.tar.gz) = 0d4b4ab7e2d8a87611b9575259494d32e746f743ae78e829ac0f4b4b4114b880 +SIZE (CloudCompare-CCCoreLib-a8ce4270_GH0.tar.gz) = 281107 +SHA256 (jlblancoc-nanoflann-2f54b8e_GH0.tar.gz) = ee2ad38be1bd73d1d8713edd5185a1748cff0ae5732ea6d35d532524266d388b +SIZE (jlblancoc-nanoflann-2f54b8e_GH0.tar.gz) = 687439 +SHA256 (asmaloney-libE57Format-1914b8ea_GH0.tar.gz) = 695a20b91ba291858d33e3143551a8b7e4a2a95d5bb7778fa6fe2d389b761d17 +SIZE (asmaloney-libE57Format-1914b8ea_GH0.tar.gz) = 207138 +SHA256 (google-googletest-7a7231c_GH0.tar.gz) = ed48d3016a44bb47f47f9e7999ed5b9b7b5367f7f1ce7981fc4feeebdd326b5f +SIZE (google-googletest-7a7231c_GH0.tar.gz) = 864500 +SHA256 (dgirardeau-q3DMASC-4eec6459_GH0.tar.gz) = 09e4d29dd1962c8101eb25e2b8eff580fa075c2a590e3ff88ec3c7ebea407d92 +SIZE (dgirardeau-q3DMASC-4eec6459_GH0.tar.gz) = 444900 +SHA256 (davisking-dlib-9117bd78_GH0.tar.gz) = 3a2c3bc37356e071a32b0f0043c7bbbe1558565b7ed23f6987e83128cb00cfbe +SIZE (davisking-dlib-9117bd78_GH0.tar.gz) = 10588146 +SHA256 (CloudCompare-qJSonRPCPlugin-1ff2dbe4_GH0.tar.gz) = a027cc90e90dbb8fa1953905027cf78e9100073c2b34ca1fa748419cca591293 +SIZE (CloudCompare-qJSonRPCPlugin-1ff2dbe4_GH0.tar.gz) = 20096 +SHA256 (hvs-ait-mplane-plugin-342ef9f5_GH0.tar.gz) = a9c86d1bedec83a2ac484e9c8dcf7c9b8b2cd16845e161ee187845e0dd96f3fa +SIZE (hvs-ait-mplane-plugin-342ef9f5_GH0.tar.gz) = 2669085 +SHA256 (CyberbuildLab-masonry-cc-0c590fb2_GH0.tar.gz) = a2dbb1c66732d88db7e9843019505f6cc74b286bf2e7fc05d383cbdda03e5408 +SIZE (CyberbuildLab-masonry-cc-0c590fb2_GH0.tar.gz) = 271313 +SHA256 (cloudcompare-PoissonRecon-d215dbaa_GH0.tar.gz) = b4d1be598eb5f58b55f10e3e226ebc7f2d24ee88c417d0f311080483aa97e078 +SIZE (cloudcompare-PoissonRecon-d215dbaa_GH0.tar.gz) = 734098 +SHA256 (truebelief-cc-treeiso-plugin-fbe6a41a_GH0.tar.gz) = 6afc6af9fdd6d35d93bdacdbe5f59e1c1aaedceb876403edd06e5fa5d0a86dda +SIZE (truebelief-cc-treeiso-plugin-fbe6a41a_GH0.tar.gz) = 788967 diff --git a/graphics/cloudcompare/files/ccViewer.desktop b/graphics/cloudcompare/files/ccViewer.desktop new file mode 100644 index 000000000000..9ebe4288cc0c --- /dev/null +++ b/graphics/cloudcompare/files/ccViewer.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Type=Application +Name=CloudCompare Viewer +Comment=3D point cloud and mesh processing software +Exec=ccViewer +Terminal=false +Categories=Graphics; +Icon=ccViewer diff --git a/graphics/cloudcompare/files/ccViewer.png b/graphics/cloudcompare/files/ccViewer.png new file mode 100644 index 000000000000..ff9afbc773b8 Binary files /dev/null and b/graphics/cloudcompare/files/ccViewer.png differ diff --git a/graphics/cloudcompare/files/cloudcompare.desktop b/graphics/cloudcompare/files/cloudcompare.desktop new file mode 100644 index 000000000000..c15987687405 --- /dev/null +++ b/graphics/cloudcompare/files/cloudcompare.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Type=Application +Name=CloudCompare +Comment=3D point cloud and mesh processing software +Exec=CloudCompare +Terminal=false +Categories=Graphics; +Icon=cloudcompare diff --git a/graphics/cloudcompare/files/cloudcompare.png b/graphics/cloudcompare/files/cloudcompare.png new file mode 100644 index 000000000000..1ac3e96d78e6 Binary files /dev/null and b/graphics/cloudcompare/files/cloudcompare.png differ diff --git a/graphics/cloudcompare/files/patch-libs_CCAppCommon_src_ccApplicationBase.cpp b/graphics/cloudcompare/files/patch-libs_CCAppCommon_src_ccApplicationBase.cpp new file mode 100644 index 000000000000..582d56462c5e --- /dev/null +++ b/graphics/cloudcompare/files/patch-libs_CCAppCommon_src_ccApplicationBase.cpp @@ -0,0 +1,11 @@ +--- libs/CCAppCommon/src/ccApplicationBase.cpp.orig 2024-07-06 10:08:06 UTC ++++ libs/CCAppCommon/src/ccApplicationBase.cpp +@@ -213,7 +213,7 @@ void ccApplicationBase::setupPaths() + m_pluginPaths << (appDir.absolutePath() + "/plugins"); + m_shaderPath = (appDir.absolutePath() + "/shaders"); + m_translationPath = (appDir.absolutePath() + "/translations"); +-#elif defined(Q_OS_LINUX) ++#elif defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD) + // Shaders & plugins are relative to the bin directory where the executable is found + QDir theDir = appDir; + diff --git a/graphics/cloudcompare/files/patch-snap_gui_ccViewer.desktop b/graphics/cloudcompare/files/patch-snap_gui_ccViewer.desktop deleted file mode 100644 index cfb98896d44b..000000000000 --- a/graphics/cloudcompare/files/patch-snap_gui_ccViewer.desktop +++ /dev/null @@ -1,13 +0,0 @@ ---- snap/gui/ccViewer.desktop.orig 2018-03-16 21:26:02 UTC -+++ snap/gui/ccViewer.desktop -@@ -2,8 +2,8 @@ - Type=Application - Name=CloudCompare Viewer - Comment=3D point cloud and mesh processing software --Exec=cloudcompare.ccViewer -+Exec=ccViewer - Terminal=false - Categories=Graphics; --Icon=${SNAP}/meta/gui/ccViewer.png -+Icon=/usr/local/share/pixmaps/ccViewer.png - diff --git a/graphics/cloudcompare/files/patch-snap_gui_cloudcompare.desktop b/graphics/cloudcompare/files/patch-snap_gui_cloudcompare.desktop deleted file mode 100644 index 4ac3ffc79326..000000000000 --- a/graphics/cloudcompare/files/patch-snap_gui_cloudcompare.desktop +++ /dev/null @@ -1,13 +0,0 @@ ---- snap/gui/cloudcompare.desktop.orig 2018-03-16 21:26:02 UTC -+++ snap/gui/cloudcompare.desktop -@@ -2,8 +2,8 @@ - Type=Application - Name=CloudCompare - Comment=3D point cloud and mesh processing software --Exec=cloudcompare.CloudCompare -+Exec=CloudCompare - Terminal=false - Categories=Graphics; --Icon=${SNAP}/meta/gui/cloudcompare.png -+Icon=/usr/local/share/pixmaps/cloudcompare.png - diff --git a/graphics/cloudcompare/pkg-descr b/graphics/cloudcompare/pkg-descr index 56bd4cae0d50..e757818ef3c2 100644 --- a/graphics/cloudcompare/pkg-descr +++ b/graphics/cloudcompare/pkg-descr @@ -1,7 +1,14 @@ -CloudCompare is a 3D point cloud (and triangular mesh) processing software. It -was originally designed to perform comparison between two 3D points 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 was also meant to deal with huge point clouds -(typically more than 10 millions points, and up to 120 millions with 2 Gb of -memory). +CloudCompare is a 3D point cloud (and triangular mesh) editing and processing +software. + +It has been designed to perform direct comparison between dense 3D point +clouds. It relies on a specific octree structure that enables great performances +when performing this kind of task. As most point clouds now are acquired by +terrestrial laser scanners, CloudCompare is able to deal with huge point clouds +- typically tens of millions of points. A comparison between a point cloud and a +triangular mesh is also supported. So are many other point cloud processing +algorithms (registration, resampling, color/normal vectors/scalar fields +management, statistics computation, sensor management, interactive or automatic +segmentation, etc.) as well as display enhancement tools (custom color ramps, +color & normal vectors handling, calibrated pictures handling, OpenGL shaders, +plugins, etc.). diff --git a/graphics/cloudcompare/pkg-plist b/graphics/cloudcompare/pkg-plist index ea37c6e0ec29..58bb64064552 100644 --- a/graphics/cloudcompare/pkg-plist +++ b/graphics/cloudcompare/pkg-plist @@ -1,49 +1,53 @@ bin/CloudCompare bin/ccViewer lib/cloudcompare/libCCAppCommon.so lib/cloudcompare/libCCCoreLib.so lib/cloudcompare/libCCPluginAPI.so lib/cloudcompare/libCC_FBO_LIB.so lib/cloudcompare/libQCC_DB_LIB.so lib/cloudcompare/libQCC_GL_LIB.so lib/cloudcompare/libQCC_IO_LIB.so %%PLUGINS%%lib/cloudcompare/plugins/libQANIMATION_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQBROOM_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQCOMPASS_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQCORE_IO_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQCSF_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQCSV_MATRIX_IO_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQEDL_GL_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQFACETS_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQHPR_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQM3C2_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQPCV_PLUGIN.so +%%PLUGINS%%lib/cloudcompare/plugins/libQPDAL_IO_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQPHOTOSCAN_IO_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQRANSAC_SD_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQSRA_PLUGIN.so %%PLUGINS%%lib/cloudcompare/plugins/libQSSAO_GL_PLUGIN.so share/applications/ccViewer.desktop share/applications/cloudcompare.desktop %%DATADIR%%/CHANGELOG.md %%DATADIR%%/global_shift_list_template.txt %%DATADIR%%/license.txt %%DATADIR%%/shaders/Bilateral/bilateral.frag %%DATADIR%%/shaders/Bilateral/bilateral.vert %%DATADIR%%/shaders/ColorRamp/color_ramp.frag +%%DATADIR%%/shaders/DrawNormals/DrawNormals.fs +%%DATADIR%%/shaders/DrawNormals/DrawNormals.gs +%%DATADIR%%/shaders/DrawNormals/DrawNormals.vs %%PLUGINS%%%%DATADIR%%/shaders/EDL/edl_mix.frag %%PLUGINS%%%%DATADIR%%/shaders/EDL/edl_mix.vert %%PLUGINS%%%%DATADIR%%/shaders/EDL/edl_shade.frag %%PLUGINS%%%%DATADIR%%/shaders/EDL/edl_shade.vert %%PLUGINS%%%%DATADIR%%/shaders/SSAO/ssao.frag %%PLUGINS%%%%DATADIR%%/shaders/SSAO/ssao.vert %%DATADIR%%/translations/CloudCompare_chs.qm %%DATADIR%%/translations/CloudCompare_de.qm %%DATADIR%%/translations/CloudCompare_es_AR.qm %%DATADIR%%/translations/CloudCompare_fr.qm %%DATADIR%%/translations/CloudCompare_ja.qm -%%DATADIR%%/translations/CloudCompare_kr.qm +%%DATADIR%%/translations/CloudCompare_ko.qm %%DATADIR%%/translations/CloudCompare_pt.qm %%DATADIR%%/translations/CloudCompare_ru.qm %%DATADIR%%/translations/CloudCompare_zh.qm share/pixmaps/ccViewer.png share/pixmaps/cloudcompare.png