[3dprinter-general] Bug#979826: slic3r-prusa: Embeddeding a code copy of catch2
Tobias Frost
tobi at debian.org
Mon Jan 11 18:19:57 GMT 2021
Package: prusa-slicer
Version: 2.2.0+dfsg1-3
Severity: normal
Tags: patch
Justification: Policy 4.13
Dear Maintainer,
slic3r-prusa embeds catch2, and a quite old one, too.*
Policy ยง4.13 asks to not use convienience copies, especially when
it has been packaged already.
The attached patch uses the packaged one (and make that a sure thing by removing the embedded code copy.
(As you are already dfsg-repacking, you probably want to add it to Files-Excluded with the next new upstream version;
this is _not_ in my patch)
--
Cheers
tobi
* convenience copy: 2.9.2 g2c869e1; Debian archive: 2.13.4
PS: Thanks for maintaining prusa-slicer; I use it regularily :)
-- System Information:
Debian Release: bullseye/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 5.9.0-4-amd64 (SMP w/12 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages prusa-slicer depends on:
ii fonts-noto-hinted 20201109-1
ii libboost-chrono1.71.0 1.71.0-7+b1
ii libboost-filesystem1.71.0 1.71.0-7+b1
ii libboost-locale1.71.0 1.71.0-7+b1
ii libboost-log1.71.0 1.71.0-7+b1
ii libboost-regex1.71.0 [libboost-regex1.71.0-icu67] 1.71.0-7+b1
ii libboost-thread1.71.0 1.71.0-7+b1
ii libc6 2.31-4
ii libcurl3-gnutls 7.72.0-1
ii libexpat1 2.2.10-1
ii libgcc-s1 10.2.0-19
ii libgl1 1.3.2-1
ii libglew2.1 2.1.0-4+b1
ii libglu1-mesa [libglu1] 9.0.1-1
ii libgmp10 2:6.2.1+dfsg-1
ii libilmbase25 2.5.3-2
ii libmpfr6 4.1.0-3
ii libnlopt0 2.7.0-4+b2
ii libopenvdb7.1 7.1.0-2+b3
ii libstdc++6 10.2.0-19
ii libtbb2 2020.3-1
ii libwxbase3.0-0v5 3.0.5.1+dfsg-2
ii libwxgtk3.0-gtk3-0v5 3.0.5.1+dfsg-2
prusa-slicer recommends no packages.
prusa-slicer suggests no packages.
-- no debconf information
-------------- next part --------------
diff -Naur archive/slic3r-prusa-2.2.0+dfsg1/debian/clean slic3r-prusa-2.2.0+dfsg1/debian/clean
--- archive/slic3r-prusa-2.2.0+dfsg1/debian/clean 1970-01-01 01:00:00.000000000 +0100
+++ slic3r-prusa-2.2.0+dfsg1/debian/clean 2021-01-11 19:05:11.022641604 +0100
@@ -0,0 +1,2 @@
+cmake/modules/Catch2/Catch.cmake
+tests/catch2/*
diff -Naur archive/slic3r-prusa-2.2.0+dfsg1/debian/control slic3r-prusa-2.2.0+dfsg1/debian/control
--- archive/slic3r-prusa-2.2.0+dfsg1/debian/control 2020-09-27 19:13:24.000000000 +0200
+++ slic3r-prusa-2.2.0+dfsg1/debian/control 2021-01-11 19:05:45.907515936 +0100
@@ -4,6 +4,7 @@
Maintainer: Debian 3-D Printing Packages <3dprinter-general at lists.alioth.debian.org>
Uploaders: Chow Loong Jin <hyperair at debian.org>
Build-Depends: debhelper (>= 9.20120312),
+ catch2,
cmake,
help2man,
libboost-all-dev,
diff -Naur archive/slic3r-prusa-2.2.0+dfsg1/debian/patches/series slic3r-prusa-2.2.0+dfsg1/debian/patches/series
--- archive/slic3r-prusa-2.2.0+dfsg1/debian/patches/series 2020-09-27 19:13:24.000000000 +0200
+++ slic3r-prusa-2.2.0+dfsg1/debian/patches/series 2021-01-11 19:17:25.653044397 +0100
@@ -1,2 +1,3 @@
Move-Slic3r-data-to-usr-share-slic3r-prusa.patch
Install-XS-files-into-usr-lib-slic3r-prusa3d.patch
+use-packaged-catch2.patch
diff -Naur archive/slic3r-prusa-2.2.0+dfsg1/debian/patches/use-packaged-catch2.patch slic3r-prusa-2.2.0+dfsg1/debian/patches/use-packaged-catch2.patch
--- archive/slic3r-prusa-2.2.0+dfsg1/debian/patches/use-packaged-catch2.patch 1970-01-01 01:00:00.000000000 +0100
+++ slic3r-prusa-2.2.0+dfsg1/debian/patches/use-packaged-catch2.patch 2021-01-11 19:06:42.160925422 +0100
@@ -0,0 +1,29 @@
+--- 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 @@
+ 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()
More information about the 3dprinter-general
mailing list