Date: Saturday, November 5, 2022 @ 21:50:18
Author: svenstaro
Revision: 1342551
archrelease: copy trunk to community-testing-x86_64
Added:
prusa-slicer/repos/community-testing-x86_64/
prusa-slicer/repos/community-testing-x86_64/PKGBUILD
(from rev 1342550, prusa-slicer/trunk/PKGBUILD)
prusa-slicer/repos/community-testing-x86_64/use-system-catch2.patch
(from rev 1342550, prusa-slicer/trunk/use-system-catch2.patch)
-------------------------+
PKGBUILD | 109 ++++++++++++++++++++++++++++++++++++++++++++++
use-system-catch2.patch | 40 ++++++++++++++++
2 files changed, 149 insertions(+)
Copied: prusa-slicer/repos/community-testing-x86_64/PKGBUILD (from rev 1342550,
prusa-slicer/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD (rev 0)
+++ community-testing-x86_64/PKGBUILD 2022-11-05 21:50:18 UTC (rev 1342551)
@@ -0,0 +1,109 @@
+# Maintainer: Bruno Pagani <[email protected]>
+
+pkgbase=prusa-slicer
+pkgname=(prusa-slicer slicer-udev)
+pkgver=2.5.0
+pkgrel=1
+pkgdesc="G-code generator for 3D printers (Prusa fork of Slic3r)"
+arch=(x86_64)
+url="https://github.com/prusa3d/PrusaSlicer"
+license=(AGPL3)
+# wx 3.2 is not supported yet
https://github.com/prusa3d/PrusaSlicer/issues/8299
+depends=(boost-libs curl glew mpfr nlopt tbb qhull openvdb
+ gtk3 libjpeg-turbo opencascade) # wxwidgets-gtk3
+makedepends=(cmake boost cereal cgal eigen expat gtest libpng systemd
+ gst-plugins-base glu webkit2gtk libnotify) # libigl not detected?
+checkdepends=(catch2)
+replaces=(slic3r-prusa3d)
+# prusa-slicer uses a patched wxWidgets and does not work with upstream,
commit pinned in
+#
https://github.com/prusa3d/PrusaSlicer/blob/version_${pkgver}/deps/wxWidgets/wxWidgets.cmake
+_wxcommit=489f6118256853cf5b299d595868641938566cdb
+source=(${url}/archive/version_${pkgver}/${pkgname}-${pkgver}.tar.gz
+
https://github.com/prusa3d/wxWidgets/archive/${_wxcommit}/wxWidgets-${_wxcommit}.tar.gz
+
${pkgname}-fix-lcereal-p1.patch::${url}/commit/0ffcfd8393457fd035576436752267c9a1e6bbcc.patch
+
${pkgname}-fix-lcereal-p2.patch::${url}/commit/cc788ebb643b6d4048f3550235ac3e9d3697ada0.patch
+
${pkgname}-boost-1.79-p1.patch::${url}/commit/408e56f0390f20aaf793e0aa0c70c4d9544401d4.patch
+
${pkgname}-boost-1.79-p2.patch::${url}/commit/926ae0471800abd1e5335e251a5934570eb8f6ff.patch
+
${pkgname}-boost-1.79-p3.patch::${url}/commit/436a454b2e5dc823c6a878b836f82f56922e8834.patch
+ use-system-catch2.patch)
+sha256sums=('dbbf3e10c812d1dc7bae4bd6879e60f864d763b2738b099dd34b9636d0e5eb6a'
+ 'b4f0f6aea13b779e87c227dd7a062a6c2af4cad2f4e92b1272e43e2d45eedf51'
+ 'fcccc601d893fc1988081e05fefe30f5561f1ef47aaf516295b31127326a4ae0'
+ '0c1084277bc6b9f0e7c28d0e47f98a3a195cdfbb3f0fe973dcb22bf4e6b24670'
+ 'a1cddcfb276f2da60cd91226e09ba9869b861cab3108425c9d5c1851e8009e41'
+ 'c84babe994db99856abdc62be65f7cd1ff546bebffd928c0b79a434952ec4a6d'
+ '0158f5e22face6174992e9d4bfbf90ca8d79100fdc230f5540c6f01d1bebf6a0'
+ '3639dc2d290dc9a7d16259e0b421f8d21f16fb4abe46bbb3fab9328930fc5758')
+
+prepare() {
+ cd PrusaSlicer-version_${pkgver}
+ sed -i "s/7.6.2/7.6.3/" src/occt_wrapper/CMakeLists.txt # Hack for
opencascade 7.6.3
+ patch -p1 < ../use-system-catch2.patch # Borrowed from Debian
+ patch -p1 < ../${pkgname}-fix-lcereal-p1.patch
+ patch -p1 < ../${pkgname}-fix-lcereal-p2.patch
+ patch -p1 < ../${pkgname}-boost-1.79-p1.patch
+ patch -p1 < ../${pkgname}-boost-1.79-p2.patch
+ patch -p1 < ../${pkgname}-boost-1.79-p3.patch || true
+}
+
+build() {
+ cmake -B deps -S wxWidgets-${_wxcommit} \
+ -DCMAKE_INSTALL_PREFIX="${srcdir}"/deps/destdir/usr/local \
+ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
+ -DBUILD_SHARED_LIBS=OFF \
+ -DwxBUILD_TOOLKIT=gtk3 \
+ -DwxUSE_MEDIACTRL=OFF \
+ -DwxUSE_DETECT_SM=OFF \
+ -DwxUSE_UNICODE=ON \
+ -DwxUSE_UNICODE_UTF8=ON \
+ -DwxUSE_OPENGL=ON \
+ -DwxUSE_LIBPNG=sys \
+ -DwxUSE_ZLIB=sys \
+ -DwxUSE_REGEX=builtin \
+ -DwxUSE_LIBJPEG=sys \
+ -DwxUSE_LIBTIFF=sys \
+ -DwxUSE_EXPAT=sys \
+ -DwxUSE_LIBLZMA=sys \
+ -DwxUSE_LIBSDL=OFF \
+ -DwxUSE_XTEST=OFF
+ cmake --build deps
+ cmake --install deps
+ cmake -B build -S PrusaSlicer-version_${pkgver} \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DOPENVDB_FIND_MODULE_PATH=/usr/lib/cmake/OpenVDB \
+ -DSLIC3R_FHS=ON \
+ -DSLIC3R_PCH=OFF \
+ -DSLIC3R_GTK=3 \
+ -DwxWidgets_USE_STATIC=ON \
+ -DCMAKE_PREFIX_PATH="${srcdir}"/deps/destdir/usr/local
+ make -C build
+}
+
+check() {
+ cd build
+
+ # Run tests but ignore some failing tests.
+ ctest -E "fff_print_tests" -v
+}
+
+package_prusa-slicer() {
+ optdepends=('slicer-udev: 3D printer connection rules')
+
+ make -C build DESTDIR="${pkgdir}" install
+
+ # Desktop icons
+ mkdir -p "${pkgdir}"/usr/share/icons/hicolor/scalable/apps/
+ ln -s /usr/share/PrusaSlicer/icons/PrusaSlicer.svg
"${pkgdir}"/usr/share/icons/hicolor/scalable/apps/PrusaSlicer.svg
+ ln -s /usr/share/PrusaSlicer/icons/PrusaSlicer-gcodeviewer.svg
"${pkgdir}"/usr/share/icons/hicolor/scalable/apps/PrusaSlicer-gcodeviewer.svg
+
+ # Split udev rule
+ mv "${pkgdir}"/usr/lib/udev/ .
+}
+
+package_slicer-udev() {
+ depends=() # Reset dependencies
+
+ install -d "${pkgdir}"/usr/lib/
+ mv udev "${pkgdir}"/usr/lib/
+}
Copied: prusa-slicer/repos/community-testing-x86_64/use-system-catch2.patch
(from rev 1342550, prusa-slicer/trunk/use-system-catch2.patch)
===================================================================
--- community-testing-x86_64/use-system-catch2.patch
(rev 0)
+++ community-testing-x86_64/use-system-catch2.patch 2022-11-05 21:50:18 UTC
(rev 1342551)
@@ -0,0 +1,40 @@
+From: Tobias Frost <[email protected]>
+Date: Mon, 20 Dec 2021 02:29:22 +0800
+Subject: Use packaged catch2 library
+
+Bug-Debian: https://bugs.debian.org/979826
+---
+ tests/CMakeLists.txt | 13 +++----------
+ 1 file changed, 3 insertions(+), 10 deletions(-)
+
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index b91f75b..1322cab 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -4,15 +4,8 @@
+ set(TEST_DATA_DIR ${CMAKE_CURRENT_SOURCE_DIR}/data)
+ file(TO_NATIVE_PATH "${TEST_DATA_DIR}" TEST_DATA_DIR)
+
+-add_library(Catch2 INTERFACE)
+-list (APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake/modules/Catch2)
+-target_include_directories(Catch2 INTERFACE ${CMAKE_CURRENT_LIST_DIR})
+-add_library(Catch2::Catch2 ALIAS Catch2)
+-if (APPLE)
+- # OSX builds targeting OSX 10.9 do not support new
std::uncought_exception()
+- # see https://github.com/catchorg/Catch2/issues/1218
+- target_compile_definitions(Catch2 INTERFACE
-DCATCH_CONFIG_NO_CPP17_UNCAUGHT_EXCEPTIONS)
+-endif()
++find_package(Catch2 REQUIRED)
++
+ include(Catch)
+
+ set(CATCH_EXTRA_ARGS "" CACHE STRING "Extra arguments for catch2 test
suites.")
+@@ -20,7 +13,7 @@ set(CATCH_EXTRA_ARGS "" CACHE STRING "Extra arguments for
catch2 test suites.")
+ add_library(test_common INTERFACE)
+ target_compile_definitions(test_common INTERFACE
TEST_DATA_DIR=R"\(${TEST_DATA_DIR}\)" CATCH_CONFIG_FAST_COMPILE)
+ target_link_libraries(test_common INTERFACE Catch2::Catch2)
+-
++target_include_directories(test_common INTERFACE ${CMAKE_CURRENT_LIST_DIR})
+ if (APPLE)
+ target_link_libraries(test_common INTERFACE "-liconv -framework IOKit"
"-framework CoreFoundation" -lc++)
+ endif()