From: Anton Gladky Date: Fri, 2 Oct 2026 19:35:16 +0000 (+0200) Subject: Refresh packaging X-Git-Tag: archive/raspbian/3.2+dfsg-5+rpi1^2~15 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=b4ce4213388d8c63e8dc07124706afc4ca721f3a;p=solvespace.git Refresh packaging - Add patch to build with Eigen 5 (CMake config and C++14) - Bump debhelper-compat to 14, apply cme fix dpkg - B-D on libfontconfig-dev instead of libfontconfig1-dev - d/watch: Use GitHub template, fix Dversion-Mangle - d/copyright: Cover cmake/FindCairo.cmake; add d/lrc.config - Add d/salsa-ci.yml - Mark Debian-specific patches Forwarded: not-needed - Update lintian overrides --- diff --git a/debian/changelog b/debian/changelog index acf13aa..cae658e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,19 @@ +solvespace (3.2+dfsg-3) UNRELEASED; urgency=medium + + * Add patch to build with Eigen 5 (CMake config and C++14) + * d/control: Bump debhelper-compat to 14 + * d/control: Build-depend on libfontconfig-dev instead of libfontconfig1-dev + * d/control: Apply cme fix dpkg normalisation + * d/watch: Use GitHub template and fix Dversion-Mangle so the current + version can be found + * d/copyright: Add paragraph for cmake/FindCairo.cmake (BSD-2-clause) + * d/lrc.config: Exclude packaging metadata files from license check + * d/salsa-ci.yml: Add, enable license reconciliation + * d/patches: Mark Debian-specific patches as Forwarded: not-needed + * d/lintian-overrides: Drop unused override, add font embedding override + + -- Anton Gladky Fri, 02 Oct 2026 21:29:18 +0200 + solvespace (3.2+dfsg-2) unstable; urgency=medium * d/watch: Convert to v5 diff --git a/debian/control b/debian/control index 41650d8..a711dc6 100644 --- a/debian/control +++ b/debian/control @@ -1,27 +1,27 @@ Source: solvespace +Standards-Version: 4.7.4 Maintainer: Debian Science Maintainers Uploaders: whitequark , Anton Gladky , Section: graphics Build-Depends: - dpkg-dev (>= 1.22.5), cmake, - debhelper-compat (= 13), + debhelper-compat (= 14), + dpkg-dev (>= 1.22.5), libeigen3-dev, - libfontconfig1-dev, + libfontconfig-dev, libfreetype-dev, libgl-dev, libglew-dev, libglu1-mesa-dev, libgtkmm-3.0-dev, - libmimalloc-dev, libjson-c-dev, + libmimalloc-dev, libpangomm-1.4-dev, libpng-dev, libspnav-dev, zlib1g-dev, -Standards-Version: 4.7.4 Vcs-Browser: https://salsa.debian.org/science-team/solvespace Vcs-Git: https://salsa.debian.org/science-team/solvespace.git Homepage: https://solvespace.com @@ -30,10 +30,10 @@ Package: solvespace Architecture: any Multi-Arch: foreign Depends: - ${misc:Depends}, - ${shlibs:Depends}, libjs-three, unifont, + ${misc:Depends}, + ${shlibs:Depends}, Description: Parametric 2d/3d CAD SolveSpace is a parametric 2d/3d CAD program. Applications include: . @@ -73,8 +73,8 @@ Architecture: any Multi-Arch: same Section: libdevel Depends: - ${misc:Depends}, libslvs1t64 (= ${binary:Version}), + ${misc:Depends}, Description: SolveSpace geometric kernel (development files) SolveSpace is a parametric 2d/3d CAD. libslvs contains the geometric kernel of SolveSpace, built as a library. diff --git a/debian/copyright b/debian/copyright index 5897632..a58f834 100644 --- a/debian/copyright +++ b/debian/copyright @@ -19,6 +19,10 @@ Files: cmake/* Copyright: 2008-2020, Jonathan Westhues and other authors License: GPL-3.0+ +Files: cmake/FindCairo.cmake +Copyright: 2012, Raphael Kubo da Costa +License: BSD-2-clause + Files: debian/* Copyright: 2021-2022, Ryan Pavlik 2016, 2017, 2020, 2021, Anton Gladky @@ -106,6 +110,28 @@ License: other authorization from the GNOME Foundation or Bitstream Inc., respectively. For further information, contact: fonts at gnome dot org. +License: BSD-2-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND ITS CONTRIBUTORS ``AS + IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ITS + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + License: Expat Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/debian/libslvs1t64.lintian-overrides b/debian/libslvs1t64.lintian-overrides deleted file mode 100644 index 9e5a1f3..0000000 --- a/debian/libslvs1t64.lintian-overrides +++ /dev/null @@ -1 +0,0 @@ -libslvs1t64: package-name-doesnt-match-sonames libslvs1 diff --git a/debian/lrc.config b/debian/lrc.config new file mode 100644 index 0000000..dd14af1 --- /dev/null +++ b/debian/lrc.config @@ -0,0 +1,5 @@ +# Packaging metadata only; the license fields/classifiers in these files +# describe the upstream project or Python wheel, not the file itself. +package.json +pkg/snap/snap/snapcraft.yaml +pyproject.toml diff --git a/debian/patches/05-Adjust-extlib-include-path.patch b/debian/patches/05-Adjust-extlib-include-path.patch index c5b519e..99382fe 100644 --- a/debian/patches/05-Adjust-extlib-include-path.patch +++ b/debian/patches/05-Adjust-extlib-include-path.patch @@ -1,6 +1,7 @@ From: Matthias Geiger Date: Wed, 10 Jun 2026 20:57:58 +0200 Subject: Adjust extlib include path +Forwarded: not-needed --- CMakeLists.txt | 2 +- diff --git a/debian/patches/06-Build-with-system-mimalloc.patch b/debian/patches/06-Build-with-system-mimalloc.patch index afbd37b..5ac8bdc 100644 --- a/debian/patches/06-Build-with-system-mimalloc.patch +++ b/debian/patches/06-Build-with-system-mimalloc.patch @@ -1,6 +1,7 @@ From: Matthias Geiger Date: Wed, 10 Jun 2026 21:06:54 +0200 Subject: Build with system mimalloc +Forwarded: not-needed --- CMakeLists.txt | 20 +------------------- diff --git a/debian/patches/07-Support-Eigen-5.patch b/debian/patches/07-Support-Eigen-5.patch new file mode 100644 index 0000000..1f58c52 --- /dev/null +++ b/debian/patches/07-Support-Eigen-5.patch @@ -0,0 +1,34 @@ +From: Anton Gladky +Date: Fri, 2 Oct 2026 12:00:00 +0200 +Subject: Support Eigen 5 + +Eigen >= 5 no longer sets EIGEN3_INCLUDE_DIRS in its CMake package +config and only exports the Eigen3::Eigen target. Take the include +directory from the target so the system Eigen is found. +Eigen >= 5 also requires C++14, so bump the C++ standard. +Forwarded: no +Last-Update: 2026-10-02 +--- +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -13,7 +13,7 @@ endif() + list(APPEND CMAKE_MODULE_PATH + "${CMAKE_SOURCE_DIR}/cmake/") + +-set(CMAKE_CXX_STANDARD 11) ++set(CMAKE_CXX_STANDARD 14) + set(CMAKE_CXX_STANDARD_REQUIRED YES) + + # for /MT on MSVC +@@ -220,6 +220,11 @@ find_package(mimalloc CONFIG) + + if(NOT FORCE_VENDORED_Eigen3) + find_package(Eigen3 CONFIG) ++ # Eigen >= 5 only exports the Eigen3::Eigen target ++ if(NOT EIGEN3_INCLUDE_DIRS AND TARGET Eigen3::Eigen) ++ get_target_property(EIGEN3_INCLUDE_DIRS Eigen3::Eigen ++ INTERFACE_INCLUDE_DIRECTORIES) ++ endif() + endif() + if(FORCE_VENDORED_Eigen3 OR NOT EIGEN3_INCLUDE_DIRS) + message(STATUS "Using in-tree Eigen") diff --git a/debian/patches/series b/debian/patches/series index cca5e35..cb9afd1 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -4,3 +4,4 @@ 04_use_system_unifont.patch 05-Adjust-extlib-include-path.patch 06-Build-with-system-mimalloc.patch +07-Support-Eigen-5.patch diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml new file mode 100644 index 0000000..605ddc0 --- /dev/null +++ b/debian/salsa-ci.yml @@ -0,0 +1,5 @@ +--- +include: + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/recipes/debian.yml +variables: + SALSA_CI_DISABLE_LICENSERECON: 0 diff --git a/debian/solvespace.lintian-overrides b/debian/solvespace.lintian-overrides index d3a530c..0fed2e8 100644 --- a/debian/solvespace.lintian-overrides +++ b/debian/solvespace.lintian-overrides @@ -1,3 +1,6 @@ # These are actually resources used by the application solvespace: package-contains-documentation-outside-usr-share-doc [usr/share/solvespace/banner.txt] solvespace: package-contains-documentation-outside-usr-share-doc [usr/share/solvespace/locales.txt] +# Bundled Bitstream Vera font is only used internally for rendering +# text in the drawing; its license permits redistribution. +solvespace: truetype-font-prohibits-installable-embedding (preview/print only) [usr/share/solvespace/fonts/BitstreamVeraSans-Roman-builtin.ttf] diff --git a/debian/watch b/debian/watch index 14cc1f2..758a2a7 100644 --- a/debian/watch +++ b/debian/watch @@ -1,11 +1,11 @@ Version: 5 -Source: https://github.com/solvespace/solvespace/tags -Matching-Pattern: (?:.*?/)?v?(\d\S+)\.tar\.gz -Dversionmangle: s/\+dfsg\d+$// -Filenamemangle: s/.+\/v?(\d\S*)\.tar\.gz/solvespace-$1.tar.gz/ +Template: GitHub +Owner: solvespace +Project: solvespace +Dversion-Mangle: s/\+dfsg\d*$// +Uversion-Mangle: s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha|b|a)\d*)$/$1~$2/ Repacksuffix: +dfsg -Uversionmangle: s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha|b|a)\d*)$/$1~$2/ Component: libdxfrw Source: https://github.com/solvespace/libdxfrw