diff options
author | shtrophic | 2025-03-25 13:37:54 +0100 |
---|---|---|
committer | shtrophic | 2025-03-25 13:37:54 +0100 |
commit | bef4bf033af727f19ceba78541be10fb68eaa810 (patch) | |
tree | d1d263a047a004df23cb3aa85fb147572da78ba4 | |
parent | 09ab609bb93a1aeb39fa4041d085703662fdd81c (diff) | |
download | aur-bef4bf033af727f19ceba78541be10fb68eaa810.tar.gz |
upgpkg: 3dtk-svn r2415-1
fix 3dtk with recent boost versions
-rw-r--r-- | .SRCINFO | 9 | ||||
-rw-r--r-- | PKGBUILD | 18 | ||||
-rw-r--r-- | cacheManager.patch | 22 | ||||
-rw-r--r-- | cpp14.patch | 39 |
4 files changed, 79 insertions, 9 deletions
@@ -1,12 +1,13 @@ pkgbase = 3dtk-svn pkgdesc = 3D Toolkit with algorithms and methods to process 3D point clouds - pkgver = r2412 - pkgrel = 5 + pkgver = r2415 + pkgrel = 1 url = https://slam6d.sourceforge.io arch = x86_64 license = GPL-3.0-only makedepends = subversion makedepends = cmake + makedepends = ninja depends = findutils depends = boost depends = opencv @@ -31,10 +32,14 @@ pkgbase = 3dtk-svn source = 3dtk-svn::svn+https://svn.code.sf.net/p/slam6d/code/trunk source = helper.patch source = apriltag.patch + source = cpp14.patch + source = cacheManager.patch source = 3dtk.sh sha512sums = SKIP sha512sums = c9eeaea91de364d3abb39558e30bbd16e232bdd969d96dbd06a6ab2ed398b4c9b42a8724281f1ad16a6368285f23065bbf2ebea74ee6aaa56ede16636c73834d sha512sums = e664ac962c1be443d64e6c385eee0c47429439a091407357e169fbfd4c7ca10a63e04f88f760c9f48450b83400f75d0fdd9a3da4e5c3d9d0b58c3b38d783efc9 + sha512sums = b55788c7fd074980a4d4814b8a29b5f70c097cd201db59248edc2c012cc4ea0bf55af1da2165dcf20865b61f86f2d8a2888ac445381bfaaa3f4f54b5cac540be + sha512sums = a4987e473e86c77b85b6e71bfff4149c8e8fd63574dba1a66afbe70dd849cdeff27055d17025c3487ce5fc48ee7acefa1cfd7600c0d40a3d688c06daf3bc29af sha512sums = e352631c55938430af765948ef73a16c855f2147b5cab9ec33cbdc438ee0f28bb32cd96f4f2ff96f773de153de72d3b8ff0f51f5076227e181db9eac653b9e36 pkgname = 3dtk-svn @@ -2,15 +2,14 @@ _pkgname=3dtk pkgname="$_pkgname-svn" -pkgver=r2412 -pkgrel=5 +pkgver=r2415 +pkgrel=1 pkgdesc='3D Toolkit with algorithms and methods to process 3D point clouds' url='https://slam6d.sourceforge.io' license=(GPL-3.0-only) arch=(x86_64) provides=("$_pkgname") -makedepends=(subversion - cmake) +makedepends=(subversion cmake ninja) depends=(findutils boost opencv @@ -34,10 +33,14 @@ optdepends=(newmat source=("$pkgname::svn+https://svn.code.sf.net/p/slam6d/code/trunk" helper.patch apriltag.patch + cpp14.patch + cacheManager.patch 3dtk.sh) sha512sums=('SKIP' 'c9eeaea91de364d3abb39558e30bbd16e232bdd969d96dbd06a6ab2ed398b4c9b42a8724281f1ad16a6368285f23065bbf2ebea74ee6aaa56ede16636c73834d' 'e664ac962c1be443d64e6c385eee0c47429439a091407357e169fbfd4c7ca10a63e04f88f760c9f48450b83400f75d0fdd9a3da4e5c3d9d0b58c3b38d783efc9' + 'b55788c7fd074980a4d4814b8a29b5f70c097cd201db59248edc2c012cc4ea0bf55af1da2165dcf20865b61f86f2d8a2888ac445381bfaaa3f4f54b5cac540be' + 'a4987e473e86c77b85b6e71bfff4149c8e8fd63574dba1a66afbe70dd849cdeff27055d17025c3487ce5fc48ee7acefa1cfd7600c0d40a3d688c06daf3bc29af' 'e352631c55938430af765948ef73a16c855f2147b5cab9ec33cbdc438ee0f28bb32cd96f4f2ff96f773de153de72d3b8ff0f51f5076227e181db9eac653b9e36') pkgver() { @@ -49,8 +52,9 @@ pkgver() { prepare() { cd "$pkgname" - svn patch "$srcdir/helper.patch" - svn patch "$srcdir/apriltag.patch" + for f in "$srcdir"/*.patch; do + svn patch "$f" + done # set package binary paths to /opt/3dtk in every included script sed -i 's,\([^/]\)bin/,\1/opt/3dtk/,g' bin/*.sh @@ -59,7 +63,7 @@ prepare() { build() { cd "$srcdir" - cmake -B build \ + cmake -B build -G Ninja \ -DWITH_WXWIDGETS=OFF \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ diff --git a/cacheManager.patch b/cacheManager.patch new file mode 100644 index 000000000000..1e19de751721 --- /dev/null +++ b/cacheManager.patch @@ -0,0 +1,22 @@ +diff --git a/src/scanserver/cache/cacheManager.cc b/src/scanserver/cache/cacheManager.cc +index e17db726..60ccc2e9 100644 +--- a/src/scanserver/cache/cacheManager.cc ++++ b/src/scanserver/cache/cacheManager.cc +@@ -96,7 +96,7 @@ unsigned char* CacheManager::allocateCacheObject(CacheObject* obj, unsigned int + return reinterpret_cast<unsigned char*>(m_msm->get_address_from_handle(obj->m_handle)); + } else { + // reset CO +- m_msm->destroy_ptr(m_msm->get_address_from_handle(obj->m_handle)); ++ m_msm->destroy_ptr(reinterpret_cast<unsigned char*>(m_msm->get_address_from_handle(obj->m_handle))); + obj->m_size = 0; + obj->m_handle = 0; + } +@@ -136,7 +136,7 @@ void CacheManager::invalidateCacheObject(CacheObject* obj) + // remove its data + if(obj->m_handle != 0) { + // reset CO +- m_msm->destroy_ptr(m_msm->get_address_from_handle(obj->m_handle)); ++ m_msm->destroy_ptr(reinterpret_cast<unsigned char *>(m_msm->get_address_from_handle(obj->m_handle))); + obj->m_size = 0; + obj->m_handle = 0; + } diff --git a/cpp14.patch b/cpp14.patch new file mode 100644 index 000000000000..6c94b42b19c7 --- /dev/null +++ b/cpp14.patch @@ -0,0 +1,39 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 57af9375..f41a8367 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -370,7 +370,7 @@ else() + # https://youtu.be/bsXLMQ6WgIk). + # By using CMAKE_CXX_STANDARD we also avoid having to implement + # compiler specific command line arguments. +- set(CMAKE_CXX_STANDARD 11) ++ set(CMAKE_CXX_STANDARD 14) + # do not fall back to a previous standard + set(CMAKE_CXX_STANDARD_REQUIRED ON) + # enable compiler extensions like -std=gnu++11 on gcc +diff --git a/src/spherical_quadtree/spherical_quadtree.cc b/src/spherical_quadtree/spherical_quadtree.cc +index 6b7c08bd..c7e3f38d 100644 +--- a/src/spherical_quadtree/spherical_quadtree.cc ++++ b/src/spherical_quadtree/spherical_quadtree.cc +@@ -6,21 +6,6 @@ + + std::mt19937 gen(0); + +-#ifndef _MSC_VER +-// needed until we compile with C++14 +-#if __cplusplus >= 201402L +-#error remove definition of make_unique +-#endif +-namespace std +-{ +-template <typename T, typename... Args> +-std::unique_ptr<T> make_unique(Args &&... args) +-{ +- return std::unique_ptr<T>(new T(std::forward<Args>(args)...)); +-} +-} // namespace std +-#endif +- + static void circumcircle(const double *v1, const double *v2, const double *v3, + double *p, double *theta) + { |