summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO32
-rw-r--r--PKGBUILD74
-rw-r--r--vtk_jsoncpp.patch98
3 files changed, 171 insertions, 33 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 2c2d87fb8558..5ea1dde6730a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = cloudcompare
pkgdesc = A 3D point cloud (and triangular mesh) processing software
- pkgver = 2.12.4
+ pkgver = 2.13.0
pkgrel = 3
url = http://www.danielgm.net/cc/
arch = i686
@@ -13,32 +13,39 @@ pkgbase = cloudcompare
makedepends = laz-perf
makedepends = libharu
makedepends = ninja
- makedepends = pcl
makedepends = proj
makedepends = python
- makedepends = nlohmann-json
depends = cgal
- depends = dlib
depends = fbx-sdk
depends = ffmpeg4.4
depends = glew
depends = glu
depends = mesa
depends = mpir
+ depends = pcl
depends = pdal
+ depends = laszip
depends = qt5-base
depends = qt5-tools
depends = qt5-svg
+ depends = qt5-websockets
depends = shapelib
depends = tbb
+ depends = opencascade
+ depends = opencv
depends = gdal
depends = openmpi
- optdepends = pcl
- source = cloudcompare::git+https://github.com/CloudCompare/CloudCompare.git#tag=v2.12.4
+ depends = nlohmann-json
+ depends = fmt
+ depends = jsoncpp
+ depends = utf8cpp
+ depends = fast_float
+ source = cloudcompare::git+https://github.com/CloudCompare/CloudCompare.git#tag=v2.13
source = cloudcompare-cork::git+https://github.com/CloudCompare/cork.git
source = CloudCompare.desktop
source = ccViewer.desktop
- source = tbb.2021.patch
+ source = vtk_jsoncpp.patch
+ source = nanoflann::git+https://github.com/jlblancoc/nanoflann
source = libE57Format::git+https://github.com/asmaloney/libE57Format
source = CCCoreLib::git+https://github.com/CloudCompare/CCCoreLib
source = PoissonRecon::git+https://github.com/cloudcompare/PoissonRecon
@@ -47,11 +54,18 @@ pkgbase = cloudcompare
source = masonry-cc::git+https://github.com/CyberbuildLab/masonry-cc
source = JSonRPCPlugin::git+https://gitlab.com/theadib/JSonRPCPlugin
source = dlib::git+https://github.com/davisking/dlib
- sha256sums = SKIP
+ source = cc-treeiso-plugin::git+https://github.com/truebelief/cc-treeiso-plugin
+ source = q3DMASC::git+https://github.com/dgirardeau/q3DMASC
+ source = googletest::git+https://github.com/google/googletest
+ sha256sums = df02d30895845ce67cf1736edfb1b9e4e87f480d14781dd63eea7b6f59d15835
sha256sums = SKIP
sha256sums = 14096df9cf7aca3099d5df1585d1cf669544e9b10754dce3d2507100dd7034fe
sha256sums = 821ac2540e1196774e26f8033946ce7b36223dae7a2a7c78f4a901b4177f68cc
- sha256sums = f10ac084b1ec626c7a9c51e09faf87054edd0c069f4114334d9b1ed664a16ff1
+ sha256sums = ce48e2816ebb5d388283396b12cdb94272b3fd3eb1655845eacbf226ad918969
+ sha256sums = SKIP
+ sha256sums = SKIP
+ sha256sums = SKIP
+ sha256sums = SKIP
sha256sums = SKIP
sha256sums = SKIP
sha256sums = SKIP
diff --git a/PKGBUILD b/PKGBUILD
index 59ca2742e3f7..e897d8f2ae2e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,27 +6,34 @@
# shellcheck disable=SC2034,SC2154 # allow unused/uninitialized variables.
name=cloudcompare
-_fragment="#tag=v2.12.4"
+_fragment="#tag=v2.13"
pkgname=${name}
-pkgver="${_fragment###tag=v}"
+pkgver="${_fragment###tag=v}.0"
pkgrel=3
pkgdesc="A 3D point cloud (and triangular mesh) processing software"
arch=('i686' 'x86_64')
url="http://www.danielgm.net/cc/"
license=('GPL2')
-depends=('cgal' 'dlib' 'fbx-sdk' 'ffmpeg4.4' 'glew' 'glu' 'mesa' 'mpir' 'pdal' 'qt5-base' 'qt5-tools' 'qt5-svg' 'shapelib' 'tbb' 'gdal' 'openmpi')
-makedepends=('clang' 'cmake' 'doxygen' 'git' 'laz-perf' 'libharu' 'ninja' 'pcl' 'proj' 'python' 'nlohmann-json')
-optdepends=('pcl')
+depends=('cgal' 'fbx-sdk' 'ffmpeg4.4' 'glew' 'glu' 'mesa' 'mpir' 'pcl' 'pdal' 'laszip' 'qt5-base' 'qt5-tools' 'qt5-svg' 'qt5-websockets' 'shapelib' 'tbb' 'opencascade' 'opencv' 'gdal')
+#fix pcl:>vtk:>vtkm:>openmp missing deps
+depends+=(openmpi)
+depends+=(nlohmann-json fmt jsoncpp)
+depends+=(utf8cpp fast_float)
+makedepends=('clang' 'cmake' 'doxygen' 'git' 'laz-perf' 'libharu' 'ninja' 'proj' 'python')
source=("${name}::git+https://github.com/CloudCompare/CloudCompare.git${_fragment}"
"${name}-cork::git+https://github.com/CloudCompare/cork.git"
CloudCompare.desktop
ccViewer.desktop
- tbb.2021.patch)
-sha256sums=('SKIP'
+ vtk_jsoncpp.patch)
+sha256sums=('df02d30895845ce67cf1736edfb1b9e4e87f480d14781dd63eea7b6f59d15835'
'SKIP'
'14096df9cf7aca3099d5df1585d1cf669544e9b10754dce3d2507100dd7034fe'
'821ac2540e1196774e26f8033946ce7b36223dae7a2a7c78f4a901b4177f68cc'
- 'f10ac084b1ec626c7a9c51e09faf87054edd0c069f4114334d9b1ed664a16ff1'
+ 'ce48e2816ebb5d388283396b12cdb94272b3fd3eb1655845eacbf226ad918969'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
'SKIP'
'SKIP'
'SKIP'
@@ -38,30 +45,27 @@ sha256sums=('SKIP'
prepare() {
prepare_submodule
+ git -C "${srcdir}"/cloudcompare apply -v "${srcdir}"/vtk_jsoncpp.patch
# sed "/CXX_STANDARD/s/14/17/" -i "${srcdir}/${name}"/cmake/CMakeSetCompilerOptions.cmake
- sed '35i #include <cstdint>' -i "${srcdir}/${name}"/plugins/core/IO/qE57IO/extern/libE57Format/include/E57Format.h
- git -C "${srcdir}/${name}" apply -v "${srcdir}"/tbb.2021.patch
}
build() {
export CCACHE_BASEDIR="$srcdir"
# shellcheck disable=SC2191
- CMAKE_FLAGS=(
+ CMAKE_FLAGS+=(
-Wno-dev
+ -DPCL_QHULL_REQUIRED_TYPE=SHARED
-DCMAKE_CXX_STANDARD=14
-DCMAKE_CXX_FLAGS="$CXXFLAGS -fpermissive -DSUPPORT_TOPO_STREAM_OPERATORS -Wno-deprecated-declarations"
-DCMAKE_INSTALL_PREFIX=/usr
-DCMAKE_INSTALL_LIBDIR=lib
-DCMAKE_BUILD_TYPE=Release
- -DCCCORELIB_USE_CGAL:BOOL=ON
- -DCCCORELIB_USE_TBB:BOOL=OFF
- -DQANIMATION_WITH_FFMPEG_SUPPORT:BOOL=ON
- -DFFMPEG_INCLUDE_DIR:PATH=/usr/include/ffmpeg4.4
- -DFFMPEG_LIBRARY_DIR:PATH=/usr/lib/ffmpeg4.4
+ -DCCCORELIB_USE_CGAL=ON
+ -DCCCORELIB_USE_TBB=ON
-DPOISSON_RECON_WITH_OPEN_MP:BOOL=ON
- -DPLUGIN_EXAMPLE_GL:BOOL=ON
- -DPLUGIN_EXAMPLE_IO:BOOL=ON
- -DPLUGIN_EXAMPLE_STANDARD:BOOL=ON
+ -DPLUGIN_EXAMPLE_GL:BOOL=OFF # no need to bundle examples
+ -DPLUGIN_EXAMPLE_IO:BOOL=OFF
+ -DPLUGIN_EXAMPLE_STANDARD:BOOL=OFF
-DPLUGIN_GL_QEDL:BOOL=ON
-DPLUGIN_GL_QSSAO:BOOL=ON
-DPLUGIN_IO_QADDITIONAL:BOOL=ON
@@ -71,16 +75,19 @@ build() {
-DPLUGIN_IO_QFBX:BOOL=ON # requires update of AUR/fbx-sdk (https://www.autodesk.com/content/dam/autodesk/www/adn/fbx/2020-1-1/fbx202011_fbxsdk_linux.tar.gz)
-DFBX_SDK_INCLUDE_DIR:PATH=/usr/include
-DFBX_SDK_LIBRARY_FILE:FILEPATH=/usr/lib/libfbxsdk.so
- -DPLUGIN_IO_QPDAL:BOOL=ON
+ -DPLUGIN_IO_QLAS:BOOL=ON
-DPLUGIN_IO_QPHOTOSCAN:BOOL=ON
-DPLUGIN_IO_QRDB:BOOL=OFF # requires rdblib (package for AUR from http://www.riegl.com/products/software-packages/rdblib/)
- -DPLUGIN_STANDARD_QANIMATION:BOOL=ON
- -DPLUGIN_STANDARD_QBROOM:BOOL=ON
- -DPLUGIN_STANDARD_QCANUPO:BOOL=ON # requires dlib
+ -DPLUGIN_IO_QSTEP=ON # requires opencascade
+ -DOPENCASCADE_INC_DIR="/usr/include/opencascade"
+ -DOPENCASCADE_LIB_DIR="/usr/lib"
+ -DPLUGIN_STANDARD_QCANUPO:BOOL=ON
-DPLUGIN_STANDARD_QCOMPASS:BOOL=ON
-DPLUGIN_STANDARD_QCORK:BOOL=ON # require mpir, cork (cork-git is not enough)
-DMPIR_INCLUDE_DIR:PATH=/usr/include # required by qcork plugin
-DCORK_INCLUDE_DIR:PATH="${srcdir}/${name}-cork/src" # required by qcork plugin
+ -DFFMPEG_INCLUDE_DIR:PATH=/usr/include/ffmpeg4.4 # required by qAnimation plugin
+ -DFFMPEG_LIBRARY_DIR:PATH=/usr/lib/ffmpeg4.4 # required by qAnimation plugin
-DCORK_RELEASE_LIBRARY_FILE:FILEPATH="${srcdir}/${name}-cork/lib/libcork.a" # required by qcork plugin
-DMPIR_RELEASE_LIBRARY_FILE:FILEPATH=/usr/lib/libmpir.so # require by qcork plugin
-DPLUGIN_STANDARD_QCSF:BOOL=ON
@@ -96,7 +103,18 @@ build() {
-DPLUGIN_STANDARD_QRANSAC_SD:BOOL=ON
-DPLUGIN_STANDARD_QSRA:BOOL=ON
-DOPTION_USE_DXF_LIB:BOOL=ON # required by qsra plugin
+ -DPLUGIN_STANDARD_MASONRY_QAUTO_SEG=ON
+ -DPLUGIN_STANDARD_MASONRY_QMANUAL_SEG=ON
+ -DPLUGIN_STANDARD_QANIMATION=ON
+ -DQANIMATION_WITH_FFMPEG_SUPPORT=ON
+ -DPLUGIN_STANDARD_QBROOM=ON
+ -DPLUGIN_STANDARD_QCANUPO=ON
+ -DPLUGIN_STANDARD_QCOLORIMETRIC_SEGMENTER=ON
+ -DPLUGIN_STANDARD_QJSONRPC=ON
+ -DPLUGIN_STANDARD_QMPLANE=ON
-DEIGEN_ROOT_DIR=/usr/include/eigen3
+ -DJsonCpp_INCLUDE_DIR=/usr/include
+ -DJsonCpp_LIBRARY=/usr/lib
)
msg2 "Build Cork lib"
make -C "${srcdir}/${name}-cork" CXXFLAGS="$CXXFLAGS -DSUPPORT_TOPO_STREAM_OPERATORS -fPIC"
@@ -125,6 +143,7 @@ package() {
# Call prepare_submodule in prepare() function
prepare_submodule() {
+ git -C "$srcdir/CCCoreLib" config submodule.extern/nanoflann.url "$srcdir/nanoflann"
git -C "$srcdir/cloudcompare" config submodule.plugins/core/IO/qE57IO/extern/libE57Format.url "$srcdir/libE57Format"
git -C "$srcdir/cloudcompare" config submodule.extern/CCCoreLib.url "$srcdir/CCCoreLib"
git -C "$srcdir/cloudcompare" config submodule.plugins/core/Standard/qPoissonRecon/extern/PoissonRecon.url "$srcdir/PoissonRecon"
@@ -133,9 +152,13 @@ prepare_submodule() {
git -C "$srcdir/cloudcompare" config submodule.plugins/core/Standard/qMasonry.url "$srcdir/masonry-cc"
git -C "$srcdir/cloudcompare" config submodule.plugins/core/Standard/qJSonRPCPlugin.url "$srcdir/JSonRPCPlugin"
git -C "$srcdir/cloudcompare" config submodule.plugins/core/Standard/qCanupo/contrib/dlib.url "$srcdir/dlib"
- git -C "$srcdir/cloudcompare" -c protocol.file.allow=always submodule update --init
+ git -C "$srcdir/cloudcompare" config submodule.plugins/core/Standard/cc-treeiso-plugin.url "$srcdir/cc-treeiso-plugin"
+ git -C "$srcdir/cloudcompare" config submodule.plugins/core/Standard/q3DMASC.url "$srcdir/q3DMASC"
+ git -C "$srcdir/libE57Format" config submodule.test/extern/googletest.url "$srcdir/googletest"
+ git -C "$srcdir/cloudcompare" -c protocol.file.allow=always submodule update --init --recursive
}
source+=(
+ "nanoflann::git+https://github.com/jlblancoc/nanoflann"
"libE57Format::git+https://github.com/asmaloney/libE57Format"
"CCCoreLib::git+https://github.com/CloudCompare/CCCoreLib"
"PoissonRecon::git+https://github.com/cloudcompare/PoissonRecon"
@@ -144,5 +167,8 @@ source+=(
"masonry-cc::git+https://github.com/CyberbuildLab/masonry-cc"
"JSonRPCPlugin::git+https://gitlab.com/theadib/JSonRPCPlugin"
"dlib::git+https://github.com/davisking/dlib"
+ "cc-treeiso-plugin::git+https://github.com/truebelief/cc-treeiso-plugin"
+ "q3DMASC::git+https://github.com/dgirardeau/q3DMASC"
+ "googletest::git+https://github.com/google/googletest"
)
# vim:set sw=2 ts=2 et:
diff --git a/vtk_jsoncpp.patch b/vtk_jsoncpp.patch
new file mode 100644
index 000000000000..39e01ea020c1
--- /dev/null
+++ b/vtk_jsoncpp.patch
@@ -0,0 +1,98 @@
+Submodule plugins/core/Standard/qMasonry contains modified content
+diff --git a/plugins/core/Standard/qMasonry/qAutoSeg/CMakeLists.txt b/plugins/core/Standard/qMasonry/qAutoSeg/CMakeLists.txt
+index 9865f33..b6b0d42 100644
+--- a/plugins/core/Standard/qMasonry/qAutoSeg/CMakeLists.txt
++++ b/plugins/core/Standard/qMasonry/qAutoSeg/CMakeLists.txt
+@@ -6,7 +6,7 @@ option( PLUGIN_STANDARD_MASONRY_QAUTO_SEG "Check to install QAutoSeg plugin" OFF
+ if ( PLUGIN_STANDARD_MASONRY_QAUTO_SEG )
+
+ project( QAUTO_SEG_PLUGIN )
+-
++
+ AddPlugin( NAME ${PROJECT_NAME} )
+
+ target_sources( ${PROJECT_NAME}
+@@ -26,12 +26,14 @@ if ( PLUGIN_STANDARD_MASONRY_QAUTO_SEG )
+ # Find Packages
+ # Find PCL
+ #set( PCL_DIR "C:/Program Files/PCL 1.9.1") #DGM: can't do that as it will obviously conflict with most of the users settings ;)
++ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} /usr/lib/cmake/vtk )
++ find_package( JsonCpp REQUIRED )
+ find_package( PCL 1.9.1 REQUIRED )
+
+ # Find OpenCV
+ #set( OpenCV_DIR "C:/opencv/build" ) #DGM: can't do that as it will obviously conflict with most of the users settings ;)
+ find_package( OpenCV REQUIRED )
+-
++
+ if (WIN32)
+ # We need to copy the OpenCV "World" DLL file next to CloudCompare.exe
+ set( OpenCV_WORLD_DLL "" CACHE FILEPATH "Opencv 'World' DLL file path" )
+@@ -48,7 +50,7 @@ if ( PLUGIN_STANDARD_MASONRY_QAUTO_SEG )
+ # [C/C++]>[Preprocessor]>[Preprocessor Definitions]
+ add_definitions( ${PCL_DEFINITIONS} )
+
+- # For Use Not PreCompiled Features
++ # For Use Not PreCompiled Features
+ #add_definitions( -DPCL_NO_PRECOMPILE )
+
+ # [Linker]>[General]>[Additional Library Directories]
+@@ -67,7 +69,7 @@ if ( PLUGIN_STANDARD_MASONRY_QAUTO_SEG )
+ copy_files("${OpenCV_WORLD_DEBUG_DLL}" ${CLOUDCOMPARE_DEST_FOLDER} 2)
+ endif()
+ endif()
+-
++
+ endif()
+-
++
+ endif()
+diff --git a/plugins/core/Standard/qMasonry/qManualSeg/CMakeLists.txt b/plugins/core/Standard/qMasonry/qManualSeg/CMakeLists.txt
+index 1c13d67..79ff351 100644
+--- a/plugins/core/Standard/qMasonry/qManualSeg/CMakeLists.txt
++++ b/plugins/core/Standard/qMasonry/qManualSeg/CMakeLists.txt
+@@ -6,7 +6,7 @@ option( PLUGIN_STANDARD_MASONRY_QMANUAL_SEG "Check to install qManualSeg plugin"
+ if ( PLUGIN_STANDARD_MASONRY_QMANUAL_SEG )
+
+ project( QMANUAL_SEG_PLUGIN )
+-
++
+ AddPlugin( NAME ${PROJECT_NAME} )
+
+
+@@ -20,10 +20,12 @@ if ( PLUGIN_STANDARD_MASONRY_QMANUAL_SEG )
+ PRIVATE
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ )
+-
++
+ # Find Packages
+ # Find PCL
+ #set( PCL_DIR "C:/Program Files/PCL 1.9.1") #DGM: can't do that as it will obviously conflict with most of the users settings ;)
++ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} /usr/lib/cmake/vtk )
++ find_package( JsonCpp REQUIRED )
+ find_package( PCL 1.9.1 REQUIRED )
+
+ # Find OpenCV
+@@ -46,7 +48,7 @@ if ( PLUGIN_STANDARD_MASONRY_QMANUAL_SEG )
+ # [C/C++]>[Preprocessor]>[Preprocessor Definitions]
+ add_definitions( ${PCL_DEFINITIONS} )
+
+- # For Use Not PreCompiled Features
++ # For Use Not PreCompiled Features
+ #add_definitions( -DPCL_NO_PRECOMPILE )
+
+ # [Linker]>[General]>[Additional Library Directories]
+diff --git a/plugins/core/Standard/qPCL/PclUtils/CMakeLists.txt b/plugins/core/Standard/qPCL/PclUtils/CMakeLists.txt
+index a78dd7129..5b5c1e2af 100644
+--- a/plugins/core/Standard/qPCL/PclUtils/CMakeLists.txt
++++ b/plugins/core/Standard/qPCL/PclUtils/CMakeLists.txt
+@@ -2,6 +2,8 @@ project( QPCL_PLUGIN_UTILS_LIB )
+
+ find_package( Qt5 COMPONENTS Widgets REQUIRED )
+
++set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} /usr/lib/cmake/vtk )
++find_package( JsonCpp REQUIRED )
+ find_package( PCL 1.9 REQUIRED )
+
+ add_library( ${PROJECT_NAME} STATIC )