From: Tobias Frost Date: Sat, 25 May 2024 14:11:03 +0000 (+0200) Subject: freecad (0.21.2+dfsg1-3) unstable; urgency=medium X-Git-Tag: archive/raspbian/0.21.2+dfsg1-3+rpi1~1^2~12 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=fe4a6322b35e1019cfe0667ccde4320e2b875524;p=freecad.git freecad (0.21.2+dfsg1-3) unstable; urgency=medium * Team upload. * Rework autopkgtest script, update available tests and block TestPathApp also for i386. [dgit import unpatched freecad 0.21.2+dfsg1-3] --- fe4a6322b35e1019cfe0667ccde4320e2b875524 diff --cc debian/changelog index 00000000,00000000..5e0288b8 new file mode 100644 --- /dev/null +++ b/debian/changelog @@@ -1,0 -1,0 +1,1268 @@@ ++freecad (0.21.2+dfsg1-3) unstable; urgency=medium ++ ++ * Team upload. ++ * Rework autopkgtest script, update available tests and block ++ TestPathApp also for i386. ++ ++ -- Tobias Frost Sat, 25 May 2024 16:11:03 +0200 ++ ++freecad (0.21.2+dfsg1-2) unstable; urgency=medium ++ ++ * Team upload. ++ * Fix FTBFS with opencascade 7.8.1 (Closes: #1071283), and B-D on new ++ opencascade. ++ ++ -- Tobias Frost Fri, 24 May 2024 21:17:26 +0200 ++ ++freecad (0.21.2+dfsg1-1) unstable; urgency=medium ++ ++ * Team upload. ++ * New upstream version. (Closes: #1043104) ++ - Remove upstream applied patches: ++ - 0000-numpy-1.24 ++ - 0010-arch-tutorial ++ - 0030-fix-1014875-arm-FTBFS ++ - 0040-python3-interpreter ++ - 0050-appstream-meta-launcable ++ - 0060-bug-993089-dxf-support-desktop-file ++ - 0070-python3-interpreter ++ - 0080-fix-s390x-test-fail-skip-load-old-file ++ - 0090-gcc13-fix ++ - 0100-opencamlib-new-import ++ - 1110-path-g49-move-0.20.patch ++ - Remove obsolete Patch: 1010-opencascade74 - upstream removed raytracing ++ functionality. ++ - Refreshed paches: ++ - 0110-desktop-extra-categories.patch ++ - 1100-run_single-instance.patch ++ - New patch: 2040-ftbfs-macappbundle.patch, to avoid that CMake ++ is not missing the removed MacAppBundle directory. ++ - New B-Ds on libfmt-dev python3-pivy ++ * Remove override for dh_installchangelogs, upstream does no longer ship an ++ Changelog. ++ * Override dh_strip_nondeterminism, as it chokes on the corrupted zip ++ file used in a unit test. ++ * Add gmock/gtest to d/not-installed. ++ * Remove B-D on libqtwebkit5-dev, as upstream stopped support ++ for it. This results that freecad will be built without the "Web ++ Workbench", on architectures that do not have qtwebengine5-dev. ++ (all except amd64, arm64, armhf, i386 and mipsel64) ++ ++ -- Tobias Frost Mon, 18 Dec 2023 18:28:59 +0100 ++ ++freecad (0.20.2+dfsg1-10) unstable; urgency=medium ++ ++ * Team upload. ++ ++ [ Petter Reinholdtsen ] ++ * Added 1120-desktop-extra-categories.patch to include X-CNC category ++ to XDG desktop meny entry. ++ ++ [ Bas Couwenberg ] ++ * Drop unused libproj-dev build dependency. ++ ++ [ Petter Reinholdtsen ] ++ * Added recommend and patched code to find find new opencamlib package. ++ ++ -- Petter Reinholdtsen Mon, 04 Sep 2023 15:53:04 +0200 ++ ++freecad (0.20.2+dfsg1-9) unstable; urgency=medium ++ ++ * Team upload. ++ ++ * Added 0090-gcc13-fix.patch to fix GCC 13 build problem (Closes: #1037664). ++ ++ -- Petter Reinholdtsen Wed, 26 Jul 2023 23:14:08 +0200 ++ ++freecad (0.20.2+dfsg1-8) unstable; urgency=medium ++ ++ * Team upload. ++ ++ * Updated patch metadata for patches now applied upstream. ++ * Added 1110-path-g49-move-0.20.patch avoiding dangerous G-code ++ from Path (Closes: #1040426). ++ ++ -- Petter Reinholdtsen Tue, 11 Jul 2023 17:29:12 +0200 ++ ++freecad (0.20.2+dfsg1-7) unstable; urgency=medium ++ ++ * Team upload. ++ ++ * Moved patches upstream to 0xxx patch sequence. ++ * Corrected patch metadata for *opencascade74.patch. ++ * Added new 1160-python3-interpreter.patch to fix more ++ lintian warnings. ++ * Dropped superfluous file patterns pointing to non-existing files ++ from d/copyright. ++ * Remove unused dh-exec from debian/freecad-common.install. ++ ++ -- Petter Reinholdtsen Thu, 06 Jul 2023 08:25:20 +0200 ++ ++freecad (0.20.2+dfsg1-6) unstable; urgency=medium ++ ++ * Team upload. ++ ++ * Removed 1000-fix-occt-7.5.2.patch now applied upstream. ++ * Sent patches upstream and updated metadata to relect this. ++ * Removed cruft from metadata of two patches. ++ * Classified *fix-1017598.patch as Debian specific, in line with ++ its description. ++ * Renamed and added patch metadata to *python3.8-syntax.patch. ++ * Added 1160-python3-interpreter.patch to fix lintian warning ++ unusual-interpreter. ++ * Added 0010-arch-tutorial.patch to get arch tutorials working ++ with Python >= 3.11 (Closes: #1031566). ++ ++ -- Petter Reinholdtsen Sat, 01 Jul 2023 08:44:13 +0200 ++ ++freecad (0.20.2+dfsg1-5) unstable; urgency=medium ++ ++ * Team upload. ++ ++ * Changed upstream URL from https://freecadweb.org/ to ++ https://freecad.org/ (Closes: #1031830). ++ * Updated Standards-Version from 4.6.1 to 4.6.2. No changes needed. ++ * Corrected typos and metadata in several patch files. ++ * Standardised Author information in patch files, preferred ++ @debian.org addresses. ++ * Restructured patches into upstreamable and debian specific groups. ++ * Removed obsolete NEWS.debian. ++ * Added 1150-appstream-meta-launcable.patch trying to fix Appstream ++ generator warning. ++ ++ -- Petter Reinholdtsen Fri, 30 Jun 2023 08:02:21 +0200 ++ ++freecad (0.20.2+dfsg1-4) unstable; urgency=medium ++ ++ * Team upload. ++ * Apply work-around for crash when started with --single-instance, ++ e.g. using the .desktop file (Closes: #1029846) ++ ++ -- Tobias Frost Sat, 04 Feb 2023 14:01:18 +0100 ++ ++freecad (0.20.2+dfsg1-3) unstable; urgency=medium ++ ++ * [c522953] Remove redundant `freecadcmd --console` in autopkgtest ++ * [0bef48d] Add patch for numpy 1.24 ++ ++ -- Kurt Kremitzki Tue, 10 Jan 2023 11:08:11 -0600 ++ ++freecad (0.20.2+dfsg1-2) unstable; urgency=medium ++ ++ * [3bfb4a5] Add arch-specific Qt WebKit fallback ++ ++ -- Kurt Kremitzki Mon, 09 Jan 2023 19:15:33 -0600 ++ ++freecad (0.20.2+dfsg1-1) unstable; urgency=medium ++ ++ [ Tobias Frost ] ++ * [7556687] Add several supported MIME types to the .desktop file. ++ (Closes: #993089) ++ ++ [ Kurt Kremitzki ] ++ * [69cb156] Switch from Qt WebKit to WebEngine ++ * [bdc52cd] New upstream version 0.20.2+dfsg1 (Closes: #1028171) ++ * [1e3598e] Refresh patches ++ ++ -- Kurt Kremitzki Mon, 09 Jan 2023 17:00:02 -0600 ++ ++freecad (0.20.1+dfsg1-2) unstable; urgency=medium ++ ++ * Team upload. ++ * autopkgtest: Disable test TestPathApp on s390x. ++ ++ -- Tobias Frost Fri, 09 Sep 2022 17:01:54 +0200 ++ ++freecad (0.20.1+dfsg1-1) unstable; urgency=medium ++ ++ * New upstream release. ++ ++ -- Tobias Frost Fri, 26 Aug 2022 23:58:01 +0200 ++ ++freecad (0.20+dfsg1-6) unstable; urgency=medium ++ ++ * Revert running freecad in the autopkgtest, this needs more work. ++ ++ -- Tobias Frost Thu, 18 Aug 2022 21:30:34 +0200 ++ ++freecad (0.20+dfsg1-5) unstable; urgency=medium ++ ++ * Team upload. ++ * Disable test femtest.app.test_solver_calculix.TestSolverCalculix, as ++ this test is currently broken on some archs. Closes: #1017598. ++ * Run freecad (gui executeable) test suite also in the autopkgtest, ++ in the hope that missing libraries will be caught too (see #1013881). ++ ++ -- Tobias Frost Thu, 18 Aug 2022 12:38:22 +0200 ++ ++freecad (0.20+dfsg1-4) unstable; urgency=medium ++ ++ * Team upload. ++ * Fix FTBFS on armel and armhf, GL_PROJECTION not declared in this scope ++ with patch fix-1014875-arm-FTBFS.patch (Closes: #1014875) ++ ++ -- Tobias Frost Tue, 09 Aug 2022 18:37:51 +0200 ++ ++freecad (0.20+dfsg1-3) UNRELEASED; urgency=medium ++ ++ * d/u/metadata: Added SciCrunch RRID:SCR_022535 ++ ++ -- Steffen Moeller Tue, 05 Jul 2022 21:17:32 +0200 ++ ++freecad (0.20+dfsg1-2) unstable; urgency=medium ++ ++ * Team upload. ++ * More verbose description. ++ ++ -- Steffen Moeller Tue, 05 Jul 2022 02:16:00 +0200 ++ ++freecad (0.20+dfsg1-1) unstable; urgency=medium ++ ++ * Team upload. ++ * New upstream version. (Closes: #1007013) ++ * Removed surface_extended_patch.patch - already found upstream ++ * Removed remove_doc-files.patch - no longer applicable/needed ++ * Removed fix_vtk9.patch - addressed upstream ++ * Standards-Version: 4.6.1 (routine-update) ++ * Extended runtime dependencies on python Qt modules as instructed ++ upon execution of freecad. ++ ++ -- Steffen Moeller Mon, 04 Jul 2022 15:29:38 +0200 ++ ++freecad (0.19.4+dfsg1-1) unstable; urgency=medium ++ ++ * Team upload. ++ ++ * New upstream version - a bug-fix release ++ Release notes: https://github.com/FreeCAD/FreeCAD/releases/tag/0.19.4 ++ - Fixes CVE-2021-45844 (Closes: #1005747) ++ - Fixes CVE-2021-45845 ++ * Added link-time optimization ++ ++ -- Steffen Moeller Fri, 04 Mar 2022 16:01:45 +0100 ++ ++freecad (0.19.3+dfsg1-2) unstable; urgency=medium ++ ++ * Team upload. ++ ++ [ Håvard Flaget Aasen ] ++ * Move files from /usr/share/freecad/share/* to /usr/share/* ++ * Move appstream files from freecad-common to freecad, specifically ++ /usr/share/applications/*, /usr/share/metainfo/* and /usr/share/mime/*. ++ This will make sofware relying on appstream to install correct package. ++ (Closes: #981175) ++ * Don't install .xpm icon. ++ * Prefer upstream version of desktop and sharedmimeinfo files. ++ * Explicitly list folders to install in freecad-common. ++ * Add patch to include previous set option in desktop file. ++ Making freecad only run as single instance. ++ ++ [ Tobias Frost ] ++ * Fix filename of SurfaceExtend icon (Closes: #992715) ++ ++ -- Steffen Moeller Fri, 25 Feb 2022 14:04:59 +0100 ++ ++freecad (0.19.3+dfsg1-1) unstable; urgency=medium ++ ++ * Team upload. ++ ++ [ Tobias Frost ] ++ * Tighten dependencies on metapackage, so that the right version ++ of all packages will be pulled on update. (Closes: #980474) ++ ++ [ Steffen Moeller ] ++ * Remove trailing whitespace in debian/copyright (routine-update) ++ * Add salsa-ci file (routine-update) ++ * watch file standard 4 (routine-update) ++ * patch/python3.8 adopted upstream ++ * improved d/rules clean target for repeated builds ++ ++ -- Tobias Frost Fri, 22 Oct 2021 12:45:02 +0200 ++ ++freecad (0.19.2+dfsg1-3) unstable; urgency=medium ++ ++ * Team upload. ++ * [6e8d7af] Compile against vtk9 instead of vtk7 ++ ++ -- Anton Gladky Sat, 25 Sep 2021 09:52:47 +0200 ++ ++freecad (0.19.2+dfsg1-2) unstable; urgency=medium ++ ++ * [bc42245] Add patch for OpenCASCADE >= 7.5.2 ++ * [acc44a0] Add Rules-Requires-Root: no ++ * [8a24737] Add DEP-3 headers to document OpenCASCADE 7.4.0 patch ++ * [cafc615] Update to Standards-Version 4.6.0 (no changes required) ++ ++ -- Kurt Kremitzki Mon, 06 Sep 2021 19:13:40 -0500 ++ ++freecad (0.19.2+dfsg1-1) unstable; urgency=medium ++ ++ * [9a27ec0] New upstream version 0.19.2+dfsg1 ++ * [cbf49b1] Refresh fix-s390x-test-fail-skip-load-old-file.patch ++ ++ -- Kurt Kremitzki Sat, 04 Sep 2021 15:44:21 -0500 ++ ++freecad (0.19.1+dfsg1-2) unstable; urgency=medium ++ ++ * Team upload. ++ * [aed47c1] Fix whitespaces in previous commit from Christian Ehrhardt, ++ breaking python autopkgtests ++ ++ -- Gianfranco Costamagna Tue, 16 Mar 2021 17:55:02 +0100 ++ ++freecad (0.19.1+dfsg1-1) unstable; urgency=medium ++ ++ [ Christian Ehrhardt ] ++ * [fbc90b2] skip self test open_de9b3fb438 on s390x as it goes OOM ++ (LP: #1918474)(Closes: #984952) ++ ++ [ Kurt Kremitzki ] ++ * [3ae55a4] New upstream version 0.19.1+dfsg1 ++ * [bc2242e] Drop fix-fem-crash.patch, included in 0.19.1 ++ ++ -- Kurt Kremitzki Mon, 15 Mar 2021 21:00:32 -0500 ++ ++freecad (0.19+dfsg1-2) unstable; urgency=medium ++ ++ * [e19be27] Add patch to fix crash in FEM Constraint::getDirection ++ (Closes: #983590) ++ ++ -- Kurt Kremitzki Sun, 28 Feb 2021 03:36:37 -0600 ++ ++freecad (0.19+dfsg1-1) unstable; urgency=medium ++ ++ * [40577ea] New upstream version 0.19+dfsg1 ++ * [f346346] Add python3-matplotlib build dependency ++ ++ -- Kurt Kremitzki Thu, 25 Feb 2021 11:53:32 -0600 ++ ++freecad (0.19~pre1+git20210207.a3fb41502b+dfsg-1) unstable; urgency=medium ++ ++ * [fc00a73] New upstream version 0.19~pre1+git20210207.a3fb41502b+dfsg ++ * [b1f38b0] Refresh patches ++ ++ -- Kurt Kremitzki Sun, 07 Feb 2021 18:46:40 -0600 ++ ++freecad (0.19~pre1+git20210109.afd1470202+dfsg1-2) unstable; urgency=medium ++ ++ * [bcad731] Add python3-yaml runtime dep ++ * [4f5dd12] Set FREECAD_USER_HOME for autopkgtest ++ ++ -- Kurt Kremitzki Wed, 20 Jan 2021 10:49:37 -0600 ++ ++freecad (0.19~pre1+git20210109.afd1470202+dfsg1-1) unstable; urgency=medium ++ ++ * [1395c4c] Update freecad-common symlinks (Closes: #980292) ++ * [154c84e] New upstream version 0.19~pre1+git20210109.afd1470202+dfsg1 ++ ++ -- Kurt Kremitzki Mon, 18 Jan 2021 12:48:25 -0600 ++ ++freecad (0.19~pre1+git20201221.3b449e1ce9+dfsg1-2) unstable; urgency=medium ++ ++ * [2ce772e] Add Breaks+Replaces for libfreecad-python3-0.19 over 0.18 ++ (Closes: #976430) ++ * [0046d46] Always only --list-missing ++ ++ -- Kurt Kremitzki Thu, 24 Dec 2020 06:54:50 -0600 ++ ++freecad (0.19~pre1+git20201221.3b449e1ce9+dfsg1-1) unstable; urgency=medium ++ ++ * [921e9bc] New upstream version 0.19~pre1+git20201221.3b449e1ce9+dfsg1 ++ * [ea5594a] Refresh python3.8.patch ++ ++ -- Kurt Kremitzki Mon, 21 Dec 2020 11:23:53 -0600 ++ ++freecad (0.19~pre1+git20201123.8d73c8f0+dfsg1-1) experimental; urgency=medium ++ ++ * [ede52e5] New upstream version 0.19~pre1+git20201123.8d73c8f0+dfsg1 ++ * [b8be794] Refresh patches ++ * [5b061b9] Update packaging for 0.19 ++ ++ -- Kurt Kremitzki Sun, 29 Nov 2020 03:20:11 -0600 ++ ++freecad (0.18.4+dfsg2-6) unstable; urgency=medium ++ ++ * Team upload. ++ * [63b9bcf] Fix compilation against boost and python3.9. ++ (Closes: #975267, #973285) ++ * [5773c7e] Use secure URI in Homepage field. ++ * [ffb3bbb] Set debhelper-compat version in Build-Depends. ++ * [15de038] Set upstream metadata fields: Repository, Repository-Browse. ++ * [afe02a4] Fix day-of-week for changelog entry 0.7.1031-1. ++ * [159b458] Update standards version to 4.5.0, no changes needed. ++ ++ -- Anton Gladky Thu, 19 Nov 2020 20:50:53 +0100 ++ ++freecad (0.18.4+dfsg2-5) unstable; urgency=medium ++ ++ * [6ef07803] cherry-pick upstream commits: ++ - 17ed2b196a58afbbc3cc1bb99f6eb76060171ad2 ++ - 1666b28836baa79b26b707afb1e97c2a0855eb1f ++ - 1bca53917db942aa8e0639c8e2c2f33b2e09c1b0 ++ and drop new-pyside2.patch patch ++ * [ 1b8737ca ]Drop depends on python3-pyside2uic, ++ dropped by pyside2 (experimental), and add ++ pyqt5-dev-tools for new pyrcc5 tool ++ ++ -- Gianfranco Costamagna Sun, 07 Jun 2020 14:39:33 +0200 ++ ++freecad (0.18.4+dfsg2-4) unstable; urgency=medium ++ ++ * Team upload ++ ++ [ Gianfranco Costamagna ] ++ * [224b2c8a] Drop unused libboost-signals-dev (Closes: #962086) ++ ++ [ Graham Inggs ] ++ * [e3aa33cd] Fix TaperedHole test for OCCT 7.4 (Closes: #961131) ++ ++ -- Gianfranco Costamagna Sat, 06 Jun 2020 12:07:18 +0200 ++ ++freecad (0.18.4+dfsg2-3) unstable; urgency=medium ++ ++ * [a1d5760] Disable netgen builds for now ++ * [cbbde84] Add patch for OCCT 7.4 regression test case ++ ++ -- Kurt Kremitzki Wed, 20 May 2020 03:48:36 -0500 ++ ++freecad (0.18.4+dfsg2-2) unstable; urgency=medium ++ ++ [ Tobias Frost ] ++ * [b742def] Import Ubuntu patches to fix Python 3.8 FTBFS (Closes: #953721). ++ This also includes some other patches from Ubuntu that are worth as they ++ are fixing crashes. Thanks to Gianfranco for his work in Ubuntu. ++ ++ [ Kurt Kremitzki ] ++ * [d56ac71] Correct line ending issue with patch ++ * [599ea99] Add opencascade74.patch (Closes: #956543) ++ ++ -- Kurt Kremitzki Tue, 19 May 2020 04:24:52 -0500 ++ ++freecad (0.18.4+dfsg2-1) unstable; urgency=medium ++ ++ * [e8be3d7] New upstream version 0.18.4+dfsg2 ++ * [5fefd1a] Don't hardcode Python 3 version (Closes: #950137) ++ ++ -- Kurt Kremitzki Tue, 11 Feb 2020 06:26:08 -0600 ++ ++freecad (0.18.4+dfsg1-2) unstable; urgency=medium ++ ++ [ Kurt Kremitzki ] ++ * [1e38838] Revert dwz override after upstream fix ++ ++ [ Gianfranco Costamagna ] ++ * Team upload ++ * [84844f5] Tweak rules file to make it use with Python3.7 ++ (Closes: #945314), the one used during pyside build ++ ++ -- Gianfranco Costamagna Mon, 30 Dec 2019 11:04:13 +0100 ++ ++freecad (0.18.4+dfsg1-1) unstable; urgency=medium ++ ++ * [3928e77] New upstream version 0.18.4+dfsg1 ++ * [55b8edd] Update version display patch for 0.18.4 ++ ++ -- Kurt Kremitzki Sun, 03 Nov 2019 13:26:10 -0600 ++ ++freecad (0.18.3+dfsg1-4) unstable; urgency=medium ++ ++ * [e768789] Add dh_dwz override for i386, mipsel, and s390x due to upstream ++ regression ++ ++ -- Kurt Kremitzki Wed, 30 Oct 2019 22:43:14 -0500 ++ ++freecad (0.18.3+dfsg1-3) unstable; urgency=medium ++ ++ * [c78f8e9] Revert enabling Netgen/Pybind11 builds ++ ++ -- Kurt Kremitzki Tue, 17 Sep 2019 11:00:11 -0500 ++ ++freecad (0.18.3+dfsg1-2) unstable; urgency=medium ++ ++ * [898fd80] Migrate to Python 3 only, Netgen-enabled build (Closes: ++ #936552) ++ * [2c077ab] Bump compat level to 12 ++ * [276a12e] Bump Standards-Version to 4.4.0 (no changes needed) ++ ++ -- Kurt Kremitzki Sun, 08 Sep 2019 17:35:08 -0500 ++ ++freecad (0.18.3+dfsg1-1) unstable; urgency=medium ++ ++ * [5f5b5c2] New upstream version 0.18.3+dfsg1 ++ * [6c43d54] Update set_about_freecad.patch for new version ++ ++ -- Kurt Kremitzki Thu, 18 Jul 2019 20:12:46 -0500 ++ ++freecad (0.18.2+dfsg1-1) unstable; urgency=medium ++ ++ * [bc5f8c2] New upstream version 0.18.2+dfsg1 ++ * [f6afef9] Remove upstream-bugfixes.patch (obsoleted by 0.18.2) ++ * [bb1b36e] Don't save in non-user-writable location by default ++ * [ce51375] Fix missing document icons ++ ++ -- Kurt Kremitzki Fri, 07 Jun 2019 22:31:06 -0500 ++ ++freecad (0.18.1+dfsg1-2) unstable; urgency=medium ++ ++ * [5cd3fce] Add missing pyside2 deps ++ * [fd92cc2] Fix breaks+replaces relations (Closes: #926251) ++ * [c61fe87] Add upstream bugfixing patch ++ * [f95e30a] Fix FEM autopkgtest (Closes: #926304 #920535) ++ ++ -- Kurt Kremitzki Sat, 27 Apr 2019 19:06:02 -0500 ++ ++freecad (0.18.1+dfsg1-1) unstable; urgency=medium ++ ++ * [cab285b] Correct suggested packages ++ * [576bf03] New upstream version 0.18.1+dfsg1 ++ * [7cec221] Update rules for 0.18.1 ++ * [39bac84] Add patch to display 0.18.1 version ++ ++ -- Kurt Kremitzki Sat, 06 Apr 2019 13:52:45 -0500 ++ ++freecad (0.18+dfsg1-1) unstable; urgency=medium ++ ++ * [64167ef] New upstream version 0.18+dfsg1 ++ * [8c882c8] Remove upstreamed patches fix-start-workbench and ++ fix_qt-5.11_build ++ * [7d77b28] Add NEWS file to announce Python 3 switch ++ ++ -- Kurt Kremitzki Thu, 14 Mar 2019 21:43:55 -0500 ++ ++freecad (0.18~pre1+dfsg1-5) unstable; urgency=medium ++ ++ * [e91ae47] Fix update-alternatives problem (Closes: #923465 #923412) ++ * [a7f46c7] Update OpenCASCADE path ++ * [958e27f] Add patch to fix Start WB ++ * [ba149a5] Add lintian override for freecad virtual package ++ ++ -- Kurt Kremitzki Sat, 02 Mar 2019 03:42:57 -0600 ++ ++freecad (0.18~pre1+dfsg1-4) unstable; urgency=medium ++ ++ * [7865394] Use libqt5opengl5-dev instead of -desktop-dev for armel/armhf ++ builds ++ ++ -- Kurt Kremitzki Fri, 15 Feb 2019 14:15:18 -0600 ++ ++freecad (0.18~pre1+dfsg1-3) unstable; urgency=medium ++ ++ * [f852948] Re-add allow-stderr restriction on autopkgtest ++ ++ -- Kurt Kremitzki Mon, 11 Feb 2019 13:59:14 -0600 ++ ++freecad (0.18~pre1+dfsg1-2) unstable; urgency=medium ++ ++ * [4f80ffc] Undo accidental autopkgtest reversion ++ ++ -- Kurt Kremitzki Sun, 10 Feb 2019 16:48:53 -0600 ++ ++freecad (0.18~pre1+dfsg1-1) unstable; urgency=medium ++ ++ * [e648c8e] Add Breaks+Conflicts+Replaces to smooth upgrade ++ ++ -- Kurt Kremitzki Sat, 09 Feb 2019 17:56:53 -0600 ++ ++freecad (0.18~pre1+dfsg1-1~exp1) experimental; urgency=medium ++ ++ * [f52bb1e] Update packaging for 0.18 ++ * [0b830f4] New upstream version 0.18~pre1+dfsg1 ++ * [9b83d5c] Update lintian overrides for 0.18 ++ ++ -- Kurt Kremitzki Sun, 27 Jan 2019 19:42:09 -0600 ++ ++freecad (0.17+dfsg1-8) unstable; urgency=medium ++ ++ * [9d6a8a1] Add allow-stderr restriction on autopkgtest (Closes: #920525) ++ ++ -- Kurt Kremitzki Sat, 26 Jan 2019 18:04:22 -0600 ++ ++freecad (0.17+dfsg1-7) unstable; urgency=medium ++ ++ * [86c1410] Fix autopkgtest command (Closes: #918479) ++ * [d5ee7ff] Update VTK dep to v7 ++ ++ -- Kurt Kremitzki Fri, 25 Jan 2019 20:33:35 -0600 ++ ++freecad (0.17+dfsg1-6) unstable; urgency=medium ++ ++ * [af5bdfa] Update coin/pivy deps for Coin transition ++ ++ -- Kurt Kremitzki Fri, 21 Dec 2018 08:11:47 -0600 ++ ++freecad (0.17+dfsg1-5) unstable; urgency=medium ++ ++ * Upload to unstable ++ ++ -- Kurt Kremitzki Thu, 11 Oct 2018 08:14:49 -0500 ++ ++freecad (0.17+dfsg1-4) experimental; urgency=medium ++ ++ * [07492c4] Update dependency to use libqt5opengl5-desktop-dev & exclude ++ armel/armhf ++ ++ -- Kurt Kremitzki Thu, 11 Oct 2018 00:37:53 -0500 ++ ++freecad (0.17+dfsg1-3) experimental; urgency=medium ++ ++ * [44d99e3] Remove fail-missing to handle arch-specific builds ++ ++ -- Kurt Kremitzki Wed, 10 Oct 2018 02:38:11 -0500 ++ ++freecad (0.17+dfsg1-2) experimental; urgency=medium ++ ++ * [04e05c3] Downgrade VTK dependency back to VTK6 ++ * [6f91417] Enable Qt5 builds (Closes: #874877) ++ * [741aae7] Add patch for Qt 5.11 build support ++ * [0939941] Add Breaks+Replaces for FreeCAD < 0.17 (Closes: #906110) ++ ++ -- Kurt Kremitzki Mon, 08 Oct 2018 01:32:52 -0500 ++ ++freecad (0.17+dfsg1-1) experimental; urgency=medium ++ ++ * New upstream version 0.17+dfsg1 ++ * Update OpenCASCADE dependency to use OCCT instead of OCE ++ * Update VTK dependency to VTK7 ++ * Update d/copyright's Files-Excluded section and clean up per lintian ++ warnings ++ * Update Uploaders: add Kurt Kremitzki ++ * Switch default workbench from Start to Part Design due to Qt 4 Webkit ++ deprecation, to be reverted after Qt 5 switch is complete ++ * Removed patches fixed upstream or no longer relevant in 0.17: ++ - fix-836983.patch ++ - fix_FTBFS_on_precise.patch ++ - use_share.patch ++ * Refreshed all other patches including: ++ - remove_webkit.patch: Since this breaks the default Start Workbench, ++ I have updated it to default to Part Design, the new premier WB ++ for this upstream version (i.e. PartDesign Next) ++ * Added lintian override for hardening false positives ++ ++ -- Kurt Kremitzki Thu, 07 Jun 2018 17:32:47 -0500 ++ ++freecad (0.16.6712+dfsg1-3) unstable; urgency=medium ++ ++ * Team upload ++ * Close Teemu's bug in previous changelog entry ++ * Fix autopkgtest on architectures where char is unsigned by default, ++ thanks Frédéric Bonnard (Closes: #836983) ++ * Install copies of icons since AppStream does not recognize symlinks ++ (Closes: #850965) ++ * Update Uploaders: add Sebastian Kuzminsky ++ remove Adam C. Powell, IV ++ ++ -- Graham Inggs Mon, 28 May 2018 08:55:04 +0000 ++ ++freecad (0.16.6712+dfsg1-2) unstable; urgency=medium ++ ++ * Team upload. ++ ++ [ Teemu Ikonen ] ++ * [a1ddb98] Remove myself from Uploaders. (Closes: #892617) ++ ++ [ Anton Gladky ] ++ * [705f952] Update VCS-fields to the salsa-migration ++ * [ddc6548] Set Standards-Version to 4.1.4 ++ * [3313fe7] Remove myself from uploaders ++ * [a3ef1ba] Switch to compat-level 11 ++ * [6a5a3cb] Remove deprecated Testsuite-field in the d/control ++ ++ -- Anton Gladky Wed, 23 May 2018 22:35:29 +0200 ++ ++freecad (0.16.6712+dfsg1-1) unstable; urgency=medium ++ ++ * [c631550] New upstream version 0.16.6712+dfsg1 ++ * [70d3ebc] Refresh patches ++ * [c2f67a5] Remove dependency on Qt4 Webkit. (Closes: #784464) ++ * [31d5630] Set Standards-Version: 4.1.0 ++ * [85cc9d9] Change priority to optional ++ * [dc32b52] Set maximal hardening option ++ * [c56abf6] Drop "alpha" from description. (Closes: #868727) ++ ++ -- Anton Gladky Fri, 08 Sep 2017 22:55:20 +0200 ++ ++freecad (0.16+dfsg2-3) unstable; urgency=medium ++ ++ [ Graham Inggs ] ++ * [06c5066] Use PNG and SVG icons instead of XPM (Closes: #850965) ++ * [d40a6a3] Drop debian/menu and do not install XPM icon, see #741573 ++ * [d616835] Add Suggests on graphviz and povray (Closes: #849644) ++ * [e25f6a6] Switch to debhelper 10 ++ * [f02e70f] Add debian/clean to fix FTBFSx2 ++ ++ [ Anton Gladky ] ++ * [245dccf] Fix d/copyright. ++ * [3f389af] Apply cme fix dpkg. ++ ++ -- Anton Gladky Fri, 20 Jan 2017 20:05:18 +0100 ++ ++freecad (0.16+dfsg2-2) unstable; urgency=medium ++ ++ * Team upload. ++ [ Anton Gladky ] ++ * Remove freecad-doc from suggests. (Closes: #827734) ++ ++ [ Nobuhiro Iwamatsu ] ++ * Fix FTBFS with opencv 3.1. (Closes: #841416) ++ ++ -- Anton Gladky Wed, 23 Nov 2016 05:20:31 +0900 ++ ++freecad (0.16+dfsg2-1) unstable; urgency=medium ++ ++ * [4f08de5] Remove data/examples. (Closes: #745237) ++ * [7434cc4] Imported Upstream version 0.16+dfsg2 ++ ++ -- Anton Gladky Sun, 15 May 2016 12:29:42 +0200 ++ ++freecad (0.16+dfsg1-1) unstable; urgency=medium ++ ++ * [9e69a23] Update d/watch. ++ * [bf22c89] Drop copying of Version.h explicitly. ++ * [010b5c8] Refresh/Remove patches. ++ * [24a4f7d] Update d/copyright. ++ * [0547be9] Apply cme fix dpkg-control. ++ * [fc9b859] Update d/copyright. ++ * [6e5df4d] Imported Upstream version 0.16+dfsg1. (Closes: #823816) ++ * [06ed39b] Remove freecad-dev and freecad-doc binaries. ++ * [94c3ac2] Update d/copyright. (Closes: #726805 #745237) ++ ++ -- Anton Gladky Thu, 12 May 2016 20:48:30 +0200 ++ ++freecad (0.15.4671+dfsg1-4) unstable; urgency=medium ++ ++ * [a934100] Add strict dependency on oce>=0.17.1. (Closes: #802517) ++ ++ -- Anton Gladky Fri, 29 Jan 2016 13:10:48 +0100 ++ ++freecad (0.15.4671+dfsg1-3) unstable; urgency=medium ++ ++ [ Abdullah Tahiri ] ++ * [f4d259b] Fix Sketcher: Solver: FullPivLU::compute for Eigen-3.3. ++ (Closes: #811239) ++ ++ -- Anton Gladky Sun, 17 Jan 2016 13:44:36 +0100 ++ ++freecad (0.15.4671+dfsg1-2) unstable; urgency=medium ++ ++ * [0c78ef5] Remove EIGEN2_SUPPORT. (Closes: #786356) ++ ++ -- Anton Gladky Sun, 25 Oct 2015 18:51:47 +0100 ++ ++freecad (0.15.4671+dfsg1-1) unstable; urgency=medium ++ ++ * [4b6e554] Update d/copyright. ++ * [dd370f0] Update d/watch. ++ * [a70bba6] Imported Upstream version 0.15.4671+dfsg1. (Closes: #789105) ++ * [80ccaac] Refresh patches. ++ * [c868df9] Add pyside-tools as dependency. ++ * [ab8015b] Drop the load of news-page. (Closes: #787948) ++ ++ -- Anton Gladky Thu, 27 Aug 2015 22:54:47 +0200 ++ ++freecad (0.14.3702+dfsg-4) unstable; urgency=medium ++ ++ [ Anton Gladky ] ++ * [7dbbdb6] Set Standards-Version: 3.9.6. No changes. ++ * [99c5e82] Apply cme fix dpkg-control. ++ ++ [ Martin Pitt ] ++ * [91ef5e9] Work around Qt4 not being compatible with boost+gcc5. ++ (Closes: #795069) ++ ++ -- Anton Gladky Wed, 12 Aug 2015 20:34:02 +0200 ++ ++freecad (0.14.3702+dfsg-3) unstable; urgency=medium ++ ++ [ Yorik van Havre ] ++ * [9ddbf15] Disable automatic DXF library download. (Closes: #764814) ++ ++ -- Anton Gladky Fri, 24 Oct 2014 18:59:03 +0200 ++ ++freecad (0.14.3702+dfsg-2) unstable; urgency=medium ++ ++ [ Anton Gladky ] ++ * [aafcc31] Remove libswscale-dev from BD. (Closes: #757282) ++ * [81d4b6e] Fix installing of som Mods. (Closes: #736273) ++ * [1a4492e] Remove deprecated lines from d/copyright. (Closes: #745237) ++ ++ [ Alexander ] ++ * [efc7d53] Fix compilation with clang. (Closes: #755305) ++ ++ -- Anton Gladky Sun, 24 Aug 2014 08:12:43 +0200 ++ ++freecad (0.14.3702+dfsg-1) unstable; urgency=medium ++ ++ * [7fc727b] Imported Upstream version 0.14.3702 ++ * [3edf0de] Refresh patches. ++ * [077b63a] Redirect unittest output into stdout. Fixes autopkgtests. ++ ++ -- Anton Gladky Tue, 22 Jul 2014 20:15:18 +0200 ++ ++freecad (0.13.3637-dfsg-1) unstable; urgency=medium ++ ++ * [ddeee1c] Imported Upstream version 0.13.3637-dfsg ++ * [0fe87be] Update/remove patches. ++ * [60ad7cc] Update install files, dependencies. ++ * [9f9cca3] Add autopkgtest. ++ ++ -- Anton Gladky Sun, 25 May 2014 19:05:13 +0200 ++ ++freecad (0.13.2935-dfsg-1.1) unstable; urgency=low ++ ++ * Non-maintainer upload. ++ * Update xerces build dependency to libxerces-c-dev. (Closes: #733072) ++ ++ -- Jay Berkenbilt Wed, 15 Jan 2014 12:19:37 -0500 ++ ++freecad (0.13.2935-dfsg-1) unstable; urgency=medium ++ ++ * [824153f] Move python-collada and python-ply from Recommends to Depends. ++ * [3047a6b] Imported Upstream version 0.13.2935-dfsg ++ * [36a4082] Bump Standards-Version: 3.9.5. No changes. ++ ++ -- Anton Gladky Wed, 01 Jan 2014 20:29:15 +0100 ++ ++freecad (0.13.2800-dfsg-1) unstable; urgency=low ++ ++ * [e051565] Imported Upstream version 0.13.2800-dfsg. (Closes: #730952) ++ * [a2f0187] Update debian/copyright. (Closes: #726805) ++ ++ -- Anton Gladky Mon, 02 Dec 2013 22:11:10 +0100 ++ ++freecad (0.13.2580-dfsg-2) unstable; urgency=low ++ ++ * [2aab6f0] Update and re-enable disable_memory_check.patch. ++ * [4d36847] Use wrap-and-sort. ++ ++ -- Anton Gladky Mon, 30 Sep 2013 18:49:23 +0200 ++ ++freecad (0.13.2580-dfsg-1) unstable; urgency=low ++ ++ [ Anton Gladky ] ++ * [1190215] Update get_git_orig_src.sh. ++ * [077e969] Build against BSD-version of soqt. (Closes: #617613) ++ * [37d60d0] Update patches, remove some of them. ++ * [b4801bc] Simplify debian/rules. ++ * [40ddd86] Imported Upstream version 0.13.2580-dfsg ++ * [61e7426] Minor fix in installation files. ++ * [fcaeb91] Fix syntax error in importOCA.py. ++ * [429db74] Ignore quilt dir ++ * [ffccc7d] Unapply patches after build ++ ++ [ Sebastian Hoogen ] ++ * [aa8ab82] Use packaged version of python-ply. ++ ++ -- Anton Gladky Fri, 27 Sep 2013 19:56:46 +0200 ++ ++freecad (0.13.1830-dfsg-3) unstable; urgency=low ++ ++ [ Simon Ruderich ] ++ * [71fd1c2] Hardening CPPFLAGS and LDFLAGS. (Closes: #711243) ++ ++ [ Peter Michael Green ] ++ * [36d7879] Fix build failures with new oce by forcing occ include directory. ++ (Closes: 718545, 717034) ++ * [7fa3e69] Remove some stuff left behind by build process in clean target ++ to prevent errors from dpkg-source when building multiple times ++ in a row. ++ - obj-* ++ - src/Mod/Start/Gui/share ++ - src/Mod/Drawing/App/share ++ ++ [ Anton Gladky ] ++ * [5906d0e] Update debian-copyright-file. ++ * [07d04d1] Move python-collada from Depends to Recommends-section. ++ * [cf6cb9f] Add python-collada to Depends. ++ * [36b4bc0] Add versioned dependency on libsoqt4-20. (Closes: #711812) ++ * [32738be] Use canonical VCS. ++ ++ -- Anton Gladky Wed, 07 Aug 2013 23:43:36 +0200 ++ ++freecad (0.13.1830-dfsg-2) unstable; urgency=low ++ ++ * [800a2d9] Compile freecad against libcoin80. (Closes: #617613) ++ * [abee4e5] Compile against fltk1.3 instead of fltk1.1 ++ * [23916ae] Raise the minimal version of soqt4-dev due to coin80. ++ * [87207ba] Update homepage. ++ * [224f12d] Add versioned dependency on python-pivy. ++ ++ -- Anton Gladky Thu, 30 May 2013 19:48:30 +0200 ++ ++freecad (0.13.1830-dfsg-1) unstable; urgency=low ++ ++ [ Boris Pek ] ++ * [fbdfc08] Update debian/rules: use src/Build/Version.h provided by upstream. ++ (Closes: #706578) ++ * [eb29048] Update scripts/get_git_orig_src.sh: - change version format. ++ ++ -- Anton Gladky Thu, 02 May 2013 23:05:20 +0200 ++ ++freecad (0.13.1830-dfsg-1~exp1) experimental; urgency=low ++ ++ * [0175d6f] Add python-matplotlib to depends-section. ++ * [eb9bc9a] Imported Upstream version 0.13.1830-dfsg ++ * [e2ec220] Use Standards-Version: 3.9.4. No changes. ++ * [25815b6] Remove obsolete DM-Upload-Allowed flag. ++ * [24f4cd0] Update dates in copyright-file. ++ ++ -- Anton Gladky Mon, 04 Feb 2013 22:11:12 +0100 ++ ++freecad (0.13~20130106.gitafb3355-exp1) experimental; urgency=low ++ ++ * [0efcf90] Imported Upstream version 0.13~20130106.gitafb3355 ++ * [a5ddc03] Install missing usr/share. (Closes: #697573) ++ ++ -- Anton Gladky Thu, 10 Jan 2013 18:45:11 +0100 ++ ++freecad (0.13~20121120.git5082ae2-2~exp2) experimental; urgency=low ++ ++ * [bcc4f2e] Enable dir_as_string.patch. ++ * [41e4a4e] Fix python-warning during install. ++ ++ -- Anton Gladky Fri, 23 Nov 2012 22:11:25 +0100 ++ ++freecad (0.13~20121120.git5082ae2-1) experimental; urgency=low ++ ++ [ Sandro Knauß ] ++ * [3d64502] Adding libode-dev, libspnav-dev to Builddeps. ++ Remove all autotool Builddeps. ++ * [c432199] use more debianize directories in debian/rules. ++ * [0a1599d] Add debian/patches/dir_as_string.patch. ++ * [217ec7c] Add debian/patches/use_install_rpath.patch. ++ * [36766ed] Add debian/patches/use_share.pach. ++ ++ [ Anton Gladky ] ++ * [96fc2ed] Use cmake for git-version of freecad. ++ * [581b23b] Prepare for 0.13rc ++ * [d9b01ef] Fix compilation. ++ * [197b945] Add script for getting freecad from git-repo. ++ * [ebae551] Imported Upstream version 0.13~20121120.git5082ae2 ++ ++ -- Anton Gladky Tue, 20 Nov 2012 19:22:23 +0100 ++ ++freecad (0.12.5284-dfsg-7) unstable; urgency=low ++ ++ * [b420ea0] Add -fpermissive to cpp, c-flags to fix FTBFS with gcc-4.7. ++ ++ -- Anton Gladky Mon, 14 May 2012 19:32:10 +0200 ++ ++freecad (0.12.5284-dfsg-6) unstable; urgency=low ++ ++ * [d31cbf4] Disable python-pivy depends on powerpc. ++ ++ -- Anton Gladky Thu, 12 Apr 2012 21:05:36 +0200 ++ ++freecad (0.12.5284-dfsg-5) unstable; urgency=low ++ ++ * [4d3e1c0] Do not build freecad parallel, it causes FTBFS sometimes ( -j5). ++ * [d749637] Fix FTBFS during compiling against oce-0.9.1. ++ Thanks to Denis Barbier. (Closes: #664207) ++ * [28cb8ba] Fix bug of identifying SWIG version. ++ Thanks to Werner Mayer . ++ (Closes: #646374) ++ * [fde200f] Use Standards-Version 3.9.3. No changes. ++ * [595a19e] Minor update of copyright file due to released DEP-5. ++ * [65ef554] Enable HAVE_SWIG option. ++ * [1af4c8a] Fix crash in Help->About menu. (Closes: #663704) ++ ++ -- Anton Gladky Sun, 18 Mar 2012 08:51:19 +0100 ++ ++freecad (0.12.5284-dfsg-4) unstable; urgency=low ++ ++ * [84c5407] Add needed #include. Fix compilation on Ubuntu Precise. ++ * [7b3d15a] Move python-pivy from recommends to depends section. ++ (Closes: #646374) ++ * [9136519] Update homepage section. ++ * [da53f03] Raise dh-compat to version 8. ++ ++ -- Anton Gladky Fri, 17 Feb 2012 19:59:20 +0100 ++ ++freecad (0.12.5284-dfsg-3) unstable; urgency=low ++ ++ * [da3974a] Switch from opencascade to oce. (Closes: #659133) ++ ++ -- Anton Gladky Thu, 09 Feb 2012 20:55:05 +0100 ++ ++freecad (0.12.5284-dfsg-2) unstable; urgency=low ++ ++ * [125b5f6] Add libeigen3-dev to "depends" in freecad-dev. ++ * Rebuild due to opencv-transition. ++ ++ -- Anton Gladky Sun, 22 Jan 2012 20:07:21 +0100 ++ ++freecad (0.12.5284-dfsg-1) unstable; urgency=low ++ ++ * [99b66f2] Imported Upstream version 0.12.5284-dfsg ++ * [dc52b9c] Remove patch (gcc-4.6 compilation), hopefully applied by upstream. ++ * [f66ef5d] Remove patch (typo). ++ * [ce862a0] Update copyright file (add data-files). ++ * [91d5731] Use eigen3 instead of eigen2. ++ ++ -- Anton Gladky Mon, 09 Jan 2012 21:29:18 +0100 ++ ++freecad (0.11.4446-dfsg-4) unstable; urgency=low ++ ++ * [d3ec609] Make a line in changelog shorter. Fix lintian-warning. ++ * [df77453] Fix (hopefully) FTBFS on Armel. Thanks to Paul Brook. ++ (Closes: #623559) ++ ++ -- Anton Gladky Fri, 28 Oct 2011 20:25:21 +0200 ++ ++freecad (0.11.4446-dfsg-3) unstable; urgency=low ++ ++ * [12d6b55] Add -lrt key in LDFLAGS to configure properly opencascade on ++ kfreebsd. ++ * [bbd8acc] Remove .la files from -dev binary. ++ * [8932ee7] Disable memory check in SMDS. (Closes: #623560). ++ ++ -- Anton Gladky Sat, 24 Sep 2011 16:35:30 +0200 ++ ++freecad (0.11.4446-dfsg-2) unstable; urgency=low ++ ++ * [93347cc] Switch off SWIG to fix FTBFS. (Closes: #632348) ++ ++ -- Anton Gladky Tue, 05 Jul 2011 22:41:21 +0200 ++ ++freecad (0.11.4446-dfsg-1) unstable; urgency=low ++ ++ [ Teemu Ikonen ] ++ * [58f7907] Copyright: Update. ++ ++ [ Anton Gladky ] ++ * [f5d9322] Imported Upstream version 0.11.4446-dfsg. (Closes: #576653). ++ * [aeacc72] Add DM-Upload-Allowed field. ++ * [b08f851] Add changes to debian/rules as suggested by Werner Mayer. ++ * [c82751a] Delete old patches. ++ * [e71109f] Add libopencascade-ocaf-dev to BD. ++ * [9746063] Import patch to fix compilation error with GCC-4.6. ++ * [175e959] Update watch file. ++ * [7989aa6] Update debian/rules to dh 7, thanks to Bernhard R. Link. ++ ++ -- Anton Gladky Thu, 09 Jun 2011 21:27:03 +0200 ++ ++freecad (0.11.3729.dfsg-2) unstable; urgency=low ++ ++ * Add gfortran and libopencascade-visualization-dev to BD ++ to fix FTBFS (closes: #622694) ++ * Add libqtwebkit-dev to BD (closes: #618241) ++ * Delete quilt from BD and corresponding changes in rules. ++ * Add description to freecad-occ650.patch ++ * Delete encoding string from .desktop ++ * Fix some spelling errors, pointed out by lintian. ++ ++ -- Anton Gladky Thu, 14 Apr 2011 10:23:25 +0100 ++ ++freecad (0.11.3729.dfsg-1) unstable; urgency=low ++ ++ [ Denis Barbier ] ++ * Merge OpenCASCADE 6.5.0 compatibility patch (closes: #617545). ++ ++ [ Adam C. Powell, IV ] ++ * New upstream (closes: #622213, #618241). ++ * Changed to source format 3.0 (quilt). ++ * Added patch target which forces autotools to run, and automake and autoconf ++ are now in Build-Depends (closes: #607181). ++ * Set aside src/Build/Version.h to prevent build problems. ++ * Does not install .la files (closes: #621298). ++ * Boost 1.46 compatibility patch (closes: #621877). ++ * Set aside files which autotools modifies so clean works. ++ * Added libtool to Build-Depends (thanks: PICCA Frédéric-Emmanuel). ++ * Bumped Standards-Version, no changes needed. ++ ++ -- "Adam C. Powell, IV" Tue, 12 Apr 2011 23:40:30 -0400 ++ ++freecad (0.10.3247.dfsg-2) unstable; urgency=low ++ ++ * control: ++ - Update to standars-version 3.9.0. ++ - Remove libblas-dev, libatlas-dev from build-deps. ++ * Add debian/shlibs.local file containing the the correct binary dep ++ to libsoqt4-20 (closes: #575239). ++ * copyright: Add a verbatim copy of Tiddlywiki BSD license. Fixes ++ the lintian warning copyright-refers-to-deprecated-bsd-license-file. ++ * Add kFreeBSD portability fixes. Thanks to Petr Salinger ++ for the patch (closes: #592461). ++ ++ -- Teemu Ikonen Wed, 18 Aug 2010 19:34:36 +0200 ++ ++freecad (0.10.3247.dfsg-1) unstable; urgency=low ++ ++ * New upstream version (closes: #582627) ++ * Add debian/source/format file with contents "1.0". ++ * Use freecad.xpm as icon in menu and desktop files. ++ * copyright: Add licensing information for new files in this release. ++ * src/Base/Makefile.in, src/Gui/Makefile.in: Do not remove *.tab.c files ++ in make distclean target. ++ * control: ++ - Add build-dep to libeigen2-dev. ++ - Update to standards-version 3.8.4. ++ ++ -- Teemu Ikonen Mon, 05 Jul 2010 15:07:49 +0200 ++ ++freecad (0.9.2646.5.dfsg-1) unstable; urgency=low ++ ++ * Add 'dfsg' extension to upstream version, upstream sources are unchanged. ++ * Remove libgl1-mesa-dev build-dep, rely on libcoin to pull in GL libraries. ++ * Change build-dep libatlas-headers to libatlas-dev (closes: #577309). ++ ++ -- Teemu Ikonen Fri, 14 May 2010 17:20:35 +0200 ++ ++freecad (0.9.2646.5-1) unstable; urgency=low ++ ++ * New upstream version (closes: #561696). ++ * Added swig to Build-Depends (closes: #563523, #563772). ++ * Removed python-opencv from Build-Depends and Recommends (closes: #560768). ++ ++ -- "Adam C. Powell, IV" Mon, 11 Jan 2010 08:48:33 -0500 ++ ++freecad (0.9.2646.4-1) unstable; urgency=low ++ ++ * New upstream version (closes: #559849, #559846). ++ ++ -- "Adam C. Powell, IV" Fri, 11 Dec 2009 20:21:32 -0500 ++ ++freecad (0.9.2646.3-1) unstable; urgency=low ++ ++ * New upstream version. Removes TiddlySaver.jar, fixes help problems. ++ ++ -- Teemu Ikonen Thu, 03 Dec 2009 19:39:27 +0100 ++ ++freecad (0.9.2646-1) unstable; urgency=low ++ ++ [ Werner Mayer ] ++ * New upstream release ++ * In-source copy of PyCXX has been dropped (closes: #547936) ++ * In-source copy of zipios++ has been dropped (closes: #547941) ++ * Change build-dependency on python2.5-dev to python-dev ++ * Add freecad-doc binary package ++ * Remove Suggestion of a chm viewer, suggest freecad-doc instead ++ ++ [ Teemu Ikonen ] ++ * Add override to dh_compress ++ * Add versioned build-deb to debhelper (>= 7.0.50) ++ * Add build-deps to libzipios++-dev and python-cxx-dev. ++ ++ -- Teemu Ikonen Tue, 17 Nov 2009 14:22:00 +0100 ++ ++freecad (0.8.2237-2) unstable; urgency=low ++ ++ * Added libboost-python-dev to Build-Depends (closes: #549738). ++ * Added myself to uploaders list. ++ * Bumped Standards-Version. ++ ++ -- "Adam C. Powell, IV" Thu, 12 Nov 2009 12:02:42 -0500 ++ ++freecad (0.8.2237-1) unstable; urgency=low ++ ++ * New Upstream release ++ ++ -- Teemu Ikonen Thu, 16 Jul 2009 18:37:41 +0200 ++ ++freecad (0.7.1658-1) UNRELEASED; urgency=low ++ ++ * New upstream release ++ ++ -- Teemu Ikonen Mon, 20 Oct 2008 15:35:58 +0200 ++ ++freecad (0.7.1514-1) UNRELEASED; urgency=low ++ ++ * New upstream version ++ * Add more stuff to the copyright file ++ * control: add build-dep to python-central ++ ++ -- Teemu Ikonen Wed, 06 Aug 2008 18:25:02 +0200 ++ ++freecad (0.7.1350-1hardy1) UNRELEASED; urgency=low ++ ++ * Package for Ubuntu 8.04 (Hardy Heron) ++ ++ -- Werner Mayer Thu, 29 May 2008 11:11:20 +0200 ++ ++freecad (0.7.1350-1gutsy1) UNRELEASED; urgency=low ++ ++ * Backport to Ubuntu 7.10 (Gutsy Gibbon) ++ ++ -- Werner Mayer Sat, 24 May 2008 01:54:39 +0200 ++ ++freecad (0.7.1350-1feisty1) UNRELEASED; urgency=low ++ ++ * Backport to Ubuntu 7.04 (Feisty Fawn) ++ ++ -- Werner Mayer Sat, 24 May 2008 00:09:08 +0200 ++ ++freecad (0.7.1350-1) UNRELEASED; urgency=low ++ ++ * New upstream release from sf.net ++ * Import to debian-science repository at git.debian.org ++ * control: ++ - Update to standards-version 3.7.3 ++ - Add Vcs-* fields pointing to git.debian.org ++ - Improve descriptions ++ * Convert copyright to (pseudo) machine readable format, audit source ++ * Fix categories in .desktop file ++ * Change Section to Science/Engineering in .doc-base and menu files ++ * rules: do not ignore errors on clean target, add dh_desktop call ++ -- Teemu Ikonen Tue, 05 Aug 2008 18:58:07 +0200 ++ ++freecad (0.7.1344-1ubuntu2) UNRELEASED; urgency=low ++ ++ * New package with fixed self-dependency problem ++ ++ -- Werner Mayer Thu, 22 May 2008 15:34:34 +0200 ++ ++freecad (0.7.1344-1ubuntu1) UNRELEASED; urgency=low ++ ++ * New debian package for Feisty ++ ++ -- Werner Mayer Thu, 22 May 2008 11:04:06 +0200 ++ ++freecad (0.7.1344-1) UNRELEASED; urgency=low ++ ++ * Write patch file to make builds with OpenCASCADE libs inside but with no ++ dependency to libopencascade6.2 ++ ++ -- Werner Mayer Wed, 21 May 2008 10:06:07 +0200 ++ ++freecad (0.7.1343-1) UNRELEASED; urgency=low ++ ++ * Embed required OpenCASCADE libs into this package as long as no official ++ Debian package is available ++ ++ -- Werner Mayer Tue, 20 May 2008 00:40:39 +0200 ++ ++freecad (0.7.1342-1) UNRELEASED; urgency=low ++ ++ * Switch to new versioning scheme of OpenCASCADE packages ++ ++ -- Werner Mayer Mon, 19 May 2008 23:55:31 +0200 ++ ++freecad (0.7.1316-1) UNRELEASED; urgency=low ++ ++ * Support of pivy (Python binding for Coin/SoQt) ++ * Support of PyQt4 ++ * General support of SWIG modules ++ ++ -- Werner Mayer Sat, 26 Apr 2008 13:51:25 +0200 ++ ++freecad (0.7.1031-1) UNRELEASED; urgency=low ++ ++ * Qt4 port finished ++ * Support of Python binding for Qt4 ++ * Support of Python binding for Coin ++ * Support of entirely in Python written modules ++ * Added support of model driven architecture for Python binding ++ * Use boost's signal/slot mechanism to update data ++ ++ -- Werner Mayer Fri, 04 Jan 2008 13:50:37 +0200 ++ ++freecad (0.7.645-1) UNRELEASED; urgency=low ++ ++ * Qt4 port started ++ ++ -- Werner Mayer Tue, 24 Jul 2007 13:04:37 +0200 ++ ++freecad (0.6.472-1) UNRELEASED; urgency=low ++ ++ * Initial Release ++ ++ -- Werner Mayer Tue, 26 Sep 2006 16:55:15 +0200 diff --cc debian/clean index 00000000,00000000..c1ca8b36 new file mode 100644 --- /dev/null +++ b/debian/clean @@@ -1,0 -1,0 +1,2 @@@ ++src/Tools/generateBase/*.pyc ++src/Tools/generateTemplates/*.pyc diff --cc debian/control index 00000000,00000000..5580e68e new file mode 100644 --- /dev/null +++ b/debian/control @@@ -1,0 -1,0 +1,182 @@@ ++Source: freecad ++Maintainer: Debian Science Maintainers ++Uploaders: Sebastian Kuzminsky , ++ Kurt Kremitzki ++Section: science ++Priority: optional ++Build-Depends: cmake, ++ debhelper-compat (= 13), ++ dh-exec, ++ dh-python, ++ libboost-date-time-dev, ++ libboost-dev, ++ libboost-filesystem-dev, ++ libboost-graph-dev, ++ libboost-iostreams-dev, ++ libboost-program-options-dev, ++ libboost-python-dev, ++ libboost-regex-dev, ++ libboost-serialization-dev, ++ libboost-thread-dev, ++ libcoin-dev, ++ libdouble-conversion-dev, ++ libfmt-dev, ++ libglew-dev, ++ liblz4-dev, ++ libopencv-dev, ++ libeigen3-dev, ++ libgts-bin, ++ libgts-dev, ++ libkdtree++-dev, ++ libmedc-dev, ++ libmetis-dev, ++ libocct-data-exchange-dev (>= 7.8.1+dfsg1), ++ libocct-ocaf-dev (>= 7.8.1+dfsg1), ++ libocct-visualization-dev (>= 7.8.1+dfsg1), ++ libpyside2-dev, ++ libqt5opengl5-dev, ++ libqt5svg5-dev, ++ libqt5xmlpatterns5-dev, ++ libqt5x11extras5-dev, ++ libshiboken2-dev, ++ libspnav-dev, ++ libvtk9-dev, ++ libx11-dev, ++ libxerces-c-dev, ++ libzipios++-dev, ++ lsb-release, ++ occt-draw, ++ pybind11-dev, ++ pyqt5-dev-tools, ++ pyside2-tools, ++ python3-dev, ++ python3-matplotlib, ++ python3-pivy, ++ python3-ply, ++ python3-pyside2.qtcore, ++ python3-pyside2.qtgui, ++ python3-pyside2.qtsvg, ++ python3-pyside2.qtuitools, ++ python3-pyside2.qtwidgets, ++ python3-pyside2.qtxml, ++ python3-requests, ++ qtbase5-dev, ++ qttools5-dev, ++ qtwebengine5-dev [amd64 arm64 armhf i386 mips64el], ++ swig ++Build-Depends-Indep: doxygen ++Standards-Version: 4.6.2 ++Vcs-Browser: https://salsa.debian.org/science-team/freecad ++Vcs-Git: https://salsa.debian.org/science-team/freecad.git ++Homepage: https://freecad.org/ ++Rules-Requires-Root: no ++ ++Package: freecad ++Architecture: all ++Depends: freecad-python3 (>= ${source:Version}), ++ freecad-python3 (<< ${source:Version}.1~), ++ ${misc:Depends}, ++ ${shlibs:Depends} ++Recommends: calculix-ccx, ++ graphviz, ++ python3-opencamlib, ++Suggests: povray ++Breaks: freecad (<< 0.18) ++Replaces: freecad (<< 0.18) ++Description: Extensible Open Source CAx program ++ For 3D printing, CNC milling or for the manual assembly of complicated ++ constructs one needs a formal specification of the workpiece, i.e., ++ its parts and how these come together. The process to get there is ++ called Computer-Aided Design (CAD). The process to transform a CAD ++ model into a series of instructions that can be performed on a machine ++ is called Computer-Aided Manufacturing (CAM). FreeCAD can do both, the ++ prior yet a bit better than the latter. ++ . ++ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python. ++ It features some key concepts like macro recording, workbenches, ability ++ to run as a server and dynamically loadable application extensions and ++ it is designed to be platform independent. ++ . ++ Currently, FreeCAD can import and display CAD models in IGES, STEP, and ++ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats. ++ Editing and modeling features are currently somewhat limited. ++ . ++ This is a metapackage of FreeCAD component packages. ++ ++Package: freecad-python3 ++Architecture: any ++Depends: freecad-common (= ${source:Version}), ++ python3-matplotlib, ++ python3-pivy, ++ python3-ply, ++ python3-pyside2.qtcore, ++ python3-pyside2.qtgui, ++ python3-pyside2.qtnetwork, ++ python3-pyside2.qtsvg, ++ python3-pyside2.qtuitools, ++ python3-pyside2.qtwidgets, ++ python3-pyside2.qtxml, ++ python3-yaml, ++ libfreecad-python3-0.20 (= ${binary:Version}), ++ ${misc:Depends}, ++ ${python3:Depends}, ++ ${shlibs:Depends} ++Recommends: python3-pyside2.qtwebchannel, ++ python3-pyside2.qtwebengine, ++ python3-pyside2.qtwebenginecore, ++ python3-pyside2.qtwebenginewidgets ++Breaks: libfreecad-python2-0.17 ++Replaces: libfreecad-python2-0.17 ++Description: Extensible Open Source CAx program - Python 3 binaries ++ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python. ++ It features some key concepts like macro recording, workbenches, ability ++ to run as a server and dynamically loadable application extensions and ++ it is designed to be platform independent. ++ . ++ Currently, FreeCAD can import and display CAD models in IGES, STEP, and ++ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats. ++ Editing and modeling features are currently somewhat limited. ++ . ++ This package contains the FreeCAD binaries built against Python 3. ++ ++Package: freecad-common ++Architecture: all ++Depends: ${misc:Depends}, ++ ${shlibs:Depends} ++Breaks: freecad (<< 0.18), ++ freecad-python2 (<< 0.18), ++ freecad-runtime (<< 0.20) ++Replaces: freecad (<< 0.18), ++ freecad-python2 (<< 0.18), ++ freecad-runtime (<< 0.20) ++Multi-Arch: foreign ++Description: Extensible Open Source CAx program - common files ++ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python. ++ It features some key concepts like macro recording, workbenches, ability ++ to run as a server and dynamically loadable application extensions and ++ it is designed to be platform independent. ++ . ++ Currently, FreeCAD can import and display CAD models in IGES, STEP, and ++ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats. ++ Editing and modeling features are currently somewhat limited. ++ . ++ This package contains FreeCAD common files and resources. ++ ++Package: libfreecad-python3-0.20 ++Architecture: any ++Section: libs ++Depends: ${misc:Depends}, ++ ${shlibs:Depends} ++Breaks: libfreecad-python3-0.18,libfreecad-python3-0.19 ++Replaces: libfreecad-python3-0.18,libfreecad-python3-0.19 ++Description: Extensible Open Source CAx program - Python 3 library files ++ FreeCAD is an Open Source CAx RAD based on OpenCasCade, Qt and Python. ++ It features some key concepts like macro recording, workbenches, ability ++ to run as a server and dynamically loadable application extensions and ++ it is designed to be platform independent. ++ . ++ Currently, FreeCAD can import and display CAD models in IGES, STEP, and ++ BRep formats and meshes in STL, BMS, AST and Wavefront OBJ formats. ++ Editing and modeling features are currently somewhat limited. ++ . ++ This package contains shared library files for FreeCAD built against Python 3. diff --cc debian/copyright index 00000000,00000000..00a25322 new file mode 100644 --- /dev/null +++ b/debian/copyright @@@ -1,0 -1,0 +1,255 @@@ ++Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ ++Upstream-Name: FreeCAD ++Upstream-Contact: Werner Mayer ++Source: https://github.com/freecad/freecad ++Files-Excluded: ++ data/examples ++ data/tests/*.fcstd ++ src/Doc/freecad.qch.part* ++ src/Doc/freecad.qhc ++ src/MacAppBundle ++ src/Tools/_TEMPLATE_ ++ src/3rdParty/libkdtree ++ ++Files: * ++Copyright: 2001-2016 Jürgen Riegel , ++ Werner Mayer ++License: LGPL-2+ ++ ++Files: src/3rdParty/salomesmesh/* ++Copyright: 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, ++ EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS ++ 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE ++License: LGPL-2.1 ++ ++Files: src/3rdParty/salomesmesh/src/MEFISTO2/* ++Copyright: 2006 Laboratoire J.-L. Lions UPMC Paris ++License: LGPL-2.1 ++ ++Files: src/Base/Base64.* ++Copyright: 2004-2008 Rene Nyffenegger ++License: other ++ This source code is provided 'as-is', without any express or implied ++ warranty. In no event will the author be held liable for any damages ++ arising from the use of this software. ++ . ++ Permission is granted to anyone to use this software for any purpose, ++ including commercial applications, and to alter it and redistribute it ++ freely, subject to the following restrictions: ++ . ++ 1. The origin of this source code must not be misrepresented; you must not ++ claim that you wrote the original source code. If you use this source code ++ in a product, an acknowledgment in the product documentation would be ++ appreciated but is not required. ++ . ++ 2. Altered source versions must be plainly marked as such, and must not be ++ misrepresented as being the original source code. ++ . ++ 3. This notice may not be removed or altered from any source distribution. ++ ++Files: src/Base/fdstream.hpp ++Copyright: 2001 Nicolai M. Josuttis ++License: other-josuttis ++ Permission to copy, use, modify, sell and distribute this software ++ is granted provided this copyright notice appears in all copies. ++ This software is provided "as is" without express or implied ++ warranty, and with no claim as to its suitability for any purpose. ++ ++Files: src/Base/gzstream.* ++Copyright: 2001 Deepak Bandyopadhyay, Lutz Kettner ++License: LGPL-2.1 ++ ++Files: src/Base/PyTools.* ++Copyright: 1996-2000 Mark Lutz, and O'Reilly and Associates. ++License: other-lutz ++ Permission to use, copy, modify, and distribute this software ++ for any purpose and without fee is hereby granted. This software ++ is provided on an as is basis, without warranties of any kind. ++ ++Files: src/Base/BoundBox.h src/Base/Swap.* src/Base/Vector3D.* src/Base/ViewProj.h src/Base/Matrix.* src/Base/Tools2D.* src/Mod/Mesh/App/Core/* ++Copyright: 2005 Imetric 3D GmbH ++License: GPL-2+ ++ On Debian systems, the complete text of the GNU General Public ++ License version 2 can be found in `/usr/share/common-licenses/GPL-2'. ++ ++Files: src/Mod/Draft/importAirfoilDAT.py ++Copyright: 2010 Heiko Jakob ++License: LGPL-2+ ++ ++Files: src/Mod/Mesh/App/Core/Builder.h ++ src/Mod/Mesh/App/Core/SetOperations.* ++ src/Mod/Mesh/BuildRegularGeoms.py ++Copyright: 2005 Berthold Grupp ++License: LGPL-2+ ++ ++Files: src/Mod/Image/App/ImageBase.* src/Mod/Image/Gui/ImageView.* src/Mod/Image/Gui/XpmImages.h ++Copyright: 2004 Imetric 3D GmbH ++License: LGPL-2+ ++ ++Files: src/Mod/Mesh/App/Core/tritritest.h ++Copyright: 1997 Tomas Moller ++License: other-moller ++ tritritest.h has no licensing information, but Tomas Moller replied ++ the following, when asked about it: ++ . ++ The code is free to use for anyone and any projects, but I give no ++ warranties. ++ ++Files: src/Mod/Mesh/App/WildMagic4/* ++Copyright: 1998-2007 David Eberly http://www.geometrictools.com ++License: LGPL-2.1+ ++ ++Files: src/Mod/Part/App/edgecluster.* ++Copyright: 2010 Joachim Zettler ++License: LGPL-2+ ++ ++Files: src/Mod/Raytracing/App/resources/* ++Copyright: 2005 Georg Wiora , ++ Juergen Riegel ++License: LGPL-2+ ++ ++Files: src/Mod/Test/unittestgui.py ++Copyright: 1999-2001 Steve Purcell ++License: PSF ++ This module is free software, and you may redistribute it and/or modify ++ it under the same terms as Python itself, so long as this copyright message ++ and disclaimer are retained in their original form. ++ . ++ IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, ++ SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF ++ THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH ++ DAMAGE. ++ . ++ THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT ++ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A ++ PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, ++ AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, ++ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. ++ ++Files: src/Tools/generateBase/generateDS.py ++Copyright: 2003 Dave Kuhlman ++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 in the Software without restriction, including ++ without limitation the rights to use, copy, modify, merge, publish, ++ distribute, sublicense, and/or sell copies of the Software, and to ++ permit persons to whom the Software is furnished to do so, subject to ++ the following conditions: ++ . ++ The above copyright notice and this permission notice shall be included ++ in all copies or substantial portions of the Software. ++ . ++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. ++ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY ++ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, ++ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ++ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ++ ++Files: src/Base/QuantityParser.c src/Gui/SelectionFilter.tab.c ++Copyright: 1984, 1989-1990, 2000-2006, 2009-2010 Free Software Foundation, Inc. ++License: GPL-3+ with Bison exception ++ This program is free software: you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation, either version 3 of the License, or ++ (at your option) any later version. ++ . ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ . ++ You should have received a copy of the GNU General Public License ++ along with this program. If not, see . ++ . ++ As a special exception, you may create a larger work that contains ++ part or all of the Bison parser skeleton and distribute that work ++ under terms of your choice, so long as that work isn't itself a ++ parser generator using the skeleton or a modified version thereof ++ as a parser skeleton. Alternatively, if you modify or redistribute ++ the parser skeleton itself, you may (at your option) remove this ++ special exception, which will cause the skeleton and the resulting ++ Bison output files to be licensed under the GNU General Public ++ License without this special exception. ++ . ++ This special exception was added by the Free Software Foundation in ++ version 2.2 of Bison. ++ . ++ C LALR(1) parser skeleton written by Richard Stallman, by ++ simplifying the original so-called "semantic" parser. ++ . ++ All symbols defined below should begin with yy or YY, to avoid ++ infringing on user name space. This should be done even for local ++ variables, as they might otherwise be expanded by user macros. ++ There are some unavoidable exceptions within include files to ++ define necessary library symbols; they are noted "INFRINGES ON ++ USER NAME SPACE" below. ++ ++Files: src/CXX/* ++Copyright: (c) 1998 - 2007 The Regents of the University of California ++License: BSD-3-with-notice ++ Redistribution and use in source and binary forms, with or without ++ modification, are permitted provided that the following conditions are met: ++ . ++ - Redistributions of source code must retain the above copyright notice, this ++ list of conditions and the disclaimer below. ++ - Redistributions in binary form must reproduce the above copyright notice, ++ this list of conditions and the disclaimer (as noted below) in the ++ documentation and/or materials provided with the distribution. ++ - Neither the name of the UC/LLNL nor the names of its contributors may be ++ used to endorse or promote products derived from this software without ++ specific prior written permission. ++ . ++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 REGENTS OF THE UNIVERSITY OF CALIFORNIA, ++ THE U.S. DEPARTMENT OF ENERGY OR 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. ++ . ++ Additional BSD Notice ++ . ++ 1. This notice is required to be provided under our contract with the U.S. ++ Department of Energy (DOE). This work was produced at the University of ++ California, Lawrence Livermore National Laboratory under Contract No. ++ W-7405-ENG-48 with the DOE. ++ . ++ 2. Neither the United States Government nor the University of California ++ nor any of their employees, makes any warranty, express or implied, or ++ assumes any liability or responsibility for the accuracy, completeness, ++ or usefulness of any information, apparatus, product, or process disclosed, ++ or represents that its use would not infringe privately-owned rights. ++ . ++ 3. Also, reference herein to any specific commercial products, process, or ++ services by trade name, trademark, manufacturer or otherwise does not ++ necessarily constitute or imply its endorsement, recommendation, or ++ favoring by the United States Government or the University of California. ++ The views and opinions of authors expressed herein do not necessarily ++ state or reflect those of the United States Government or the University ++ of California, and shall not be used for advertising or product endorsement ++ purposes. ++ ++Files: src/Gui/QSint/* ++Copyright: (c) QSint developers ++License: LGPL-3 ++ On Debian systems, the complete text of the GNU Lesser General Public ++ License version 3 can be found in `/usr/share/common-licenses/LGPL-3'. ++ ++License: LGPL-2.1+ ++ On Debian systems, the complete text of the GNU Lesser General Public ++ License version 2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'. ++ ++License: LGPL-2.1 ++ On Debian systems, the complete text of the GNU Lesser General Public ++ License version 2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'. ++ ++License: LGPL-2+ ++ On Debian systems, the complete text of the GNU Lesser General Public ++ License version 2 can be found in `/usr/share/common-licenses/LGPL-2'. diff --cc debian/freecad-common.install index 00000000,00000000..7adc8caa new file mode 100644 --- /dev/null +++ b/debian/freecad-common.install @@@ -1,0 -1,0 +1,7 @@@ ++usr/share/doc/freecad-doc/ThirdPartyLibraries.html usr/share/freecad ++usr/share/freecad/Mod/* ++usr/share/freecad/Gui/* ++usr/share/freecad/Ext/* ++usr/share/freecad/share/icons/* usr/share/icons ++usr/share/freecad/share/thumbnailers/* usr/share/thumbnailers ++usr/share/freecad/3Dconnexion/* diff --cc debian/freecad-common.links index 00000000,00000000..0ec45a47 new file mode 100644 --- /dev/null +++ b/debian/freecad-common.links @@@ -1,0 -1,0 +1,4 @@@ ++usr/share/freecad/ThirdPartyLibraries.html usr/share/doc/freecad-doc/ThirdPartyLibraries.html ++usr/share/freecad/Gui usr/lib/freecad/Gui ++usr/share/freecad/Mod usr/lib/freecad/Mod ++usr/share/freecad/Ext usr/lib/freecad/Ext diff --cc debian/freecad-common.lintian-overrides index 00000000,00000000..6be917a7 new file mode 100644 --- /dev/null +++ b/debian/freecad-common.lintian-overrides @@@ -1,0 -1,0 +1,3 @@@ ++# /usr/bin/freecad is a symlink, handled by update-alternatives, pointing at ++# /usr/lib/freecad/bin/freecad-python3 ++desktop-command-not-in-package diff --cc debian/freecad-common.manpages index 00000000,00000000..4586a859 new file mode 100644 --- /dev/null +++ b/debian/freecad-common.manpages @@@ -1,0 -1,0 +1,1 @@@ ++debian/freecad.1 diff --cc debian/freecad-python3.install index 00000000,00000000..967b9f96 new file mode 100755 --- /dev/null +++ b/debian/freecad-python3.install @@@ -1,0 -1,0 +1,3 @@@ ++#!/usr/bin/dh-exec ++usr/share/freecad/bin/FreeCADCmd-Python3 => usr/lib/freecad/bin/freecadcmd-python3 ++usr/share/freecad/bin/FreeCAD-Python3 => usr/lib/freecad/bin/freecad-python3 diff --cc debian/freecad-python3.postinst index 00000000,00000000..4021f31f new file mode 100644 --- /dev/null +++ b/debian/freecad-python3.postinst @@@ -1,0 -1,0 +1,11 @@@ ++#!/bin/sh ++ ++set -e ++ ++update-alternatives --install /usr/bin/freecad freecad /usr/lib/freecad/bin/freecad-python3 30 \ ++ --slave /usr/bin/freecadcmd freecadcmd /usr/lib/freecad/bin/freecadcmd-python3 \ ++ --slave /usr/lib/freecad/lib freecadlib /usr/lib/freecad-python3/lib ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/freecad-python3.prerm index 00000000,00000000..3a2f531c new file mode 100644 --- /dev/null +++ b/debian/freecad-python3.prerm @@@ -1,0 -1,0 +1,21 @@@ ++#!/bin/sh ++ ++set -e ++ ++case "$1" in ++ remove|deconfigure) ++ update-alternatives --remove freecad /usr/lib/freecad/bin/freecad-python3 ++ ;; ++ ++ upgrade|failed-upgrade) ++ ;; ++ ++ *) ++ echo "prerm called with unknown argument '$1'" >&2 ++ exit 0 ++ ;; ++esac ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/freecad.1 index 00000000,00000000..fb351ce4 new file mode 100644 --- /dev/null +++ b/debian/freecad.1 @@@ -1,0 -1,0 +1,91 @@@ ++.\" Hey, EMACS: -*- nroff -*- ++.\" First parameter, NAME, should be all caps ++.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection ++.\" other parameters are allowed: see man(7), man(1) ++.TH FREECAD 1 "March 22, 2019" freecad "Linux User's Manual" ++.\" Please adjust this date whenever revising the manpage. ++.\" ++.\" Some roff macros, for reference: ++.\" .nh disable hyphenation ++.\" .hy enable hyphenation ++.\" .ad l left justify ++.\" .ad b justify to both left and right margins ++.\" .nf disable filling ++.\" .fi enable filling ++.\" .br insert line break ++.\" .sp insert n+1 empty lines ++.\" for manpage-specific macros, see man(7) ++.SH NAME ++freecad \- Extensible Open Source CAx program ++.SH SYNOPSIS ++.B freecad ++.RI [ options ] " files" ++.br ++.B freecadcmd ++.RI [ options ] " files" ++.SH DESCRIPTION ++.B FreeCAD ++is an Open Source CAx RAD based on OpenCasCade, Qt and Python. It features ++some key concepts like macro recording, workbenches, ability to run as a ++server and dynamically loadable application extensions and it is designed ++to be platform independent. ++.\" TeX users may be more comfortable with the \fB\fP and ++.\" \fI\fP escape sequences to invode bold face and italics, ++.\" respectively. ++.SH USAGE ++\fBfreecad\fR starts with a GUI while \fBfreecadcmd\fR is only a pure command line version that starts a Python interpreter. ++.SH OPTIONS ++These programs follow the usual GNU command line syntax, with long ++options starting with two dashes (`-'). ++A summary of the options supported by \fBfreecad\fR is included below. ++.SS "Generic options" ++.TP ++\fB\-c, \-\-console\fR ++Starts in console mode. ++.TP ++\fB\-\-dump\-config\fR ++Dumps configuration. ++.TP ++\fB\-\-get\-config\fR \fIarg\fR ++Prints the value of the requested configuration key. ++.TP ++\fB\-h, \-\-help\fR ++Prints help message. ++.TP ++\fB\-\-response\-file\fR \fIarg\fR ++Can be specified with '@name', too. ++.TP ++\fB\-v, \-\-version\fR ++Prints version string. ++ ++.SS "Configuration" ++.TP ++\fB\-l, \-\-write\-log\fR ++Writes a log file to $HOME/.FreeCAD/FreeCAD.log ++.TP ++\fB\-\-log\-file\fR \fIarg\fR ++Unlike --write-log this allows logging to an arbitrary file. ++.TP ++\fB\-M, \-\-module\-path\fR \fIarg\fR ++Additional module paths. ++.TP ++\fB\-P, \-\-python\-path\fR \fIarg\fR ++Additional Python paths. ++.TP ++\fB\-s, \-\-system\-cfg\fR \fIarg\fR ++System config file to load/save system settings. ++.TP ++\fB\-\-single\-instance\fR ++Allow to run a single instance of the application. ++.TP ++\fB\-t, \-\-run\-test\fR \fIarg\fR ++Test case - or 0 for all. ++.TP ++\fB\-u, \-\-user\-cfg\fR \fIarg\fR ++User config file to load/save user settings. ++.SH SEE ALSO ++To get more information about \fBFreeCAD\fR, please visit \fIhttps://freecad.org\fR ++.SH BUGS ++To report a bug, please visit \fIhttps://github.com/FreeCAD/FreeCAD/issue\fR ++.SH AUTHOR ++This manual page was written by Werner Mayer and Salman Mohammadi . diff --cc debian/freecad.examples index 00000000,00000000..2f72fb07 new file mode 100644 --- /dev/null +++ b/debian/freecad.examples @@@ -1,0 -1,0 +1,1 @@@ ++src/Mod/Ship/resources/examples/* diff --cc debian/freecad.install index 00000000,00000000..1a0f6b01 new file mode 100644 --- /dev/null +++ b/debian/freecad.install @@@ -1,0 -1,0 +1,3 @@@ ++usr/share/freecad/share/applications/* usr/share/applications ++usr/share/freecad/share/metainfo/* usr/share/metainfo ++usr/share/freecad/share/mime/* usr/share/mime diff --cc debian/freecad.lintian-overrides index 00000000,00000000..33561999 new file mode 100644 --- /dev/null +++ b/debian/freecad.lintian-overrides @@@ -1,0 -1,0 +1,2 @@@ ++# FreeCAD is transitioning to a virtual package ++package-relation-with-self diff --cc debian/gbp.conf index 00000000,00000000..6d512d36 new file mode 100644 --- /dev/null +++ b/debian/gbp.conf @@@ -1,0 -1,0 +1,3 @@@ ++[DEFAULT] ++pristine-tar = True ++sign-tags = true diff --cc debian/libfreecad-python3-0.20.install index 00000000,00000000..a345d618 new file mode 100644 --- /dev/null +++ b/debian/libfreecad-python3-0.20.install @@@ -1,0 -1,0 +1,1 @@@ ++usr/lib/freecad-python3/lib/*.so diff --cc debian/libfreecad-python3-0.20.lintian-overrides index 00000000,00000000..c393f499 new file mode 100644 --- /dev/null +++ b/debian/libfreecad-python3-0.20.lintian-overrides @@@ -1,0 -1,0 +1,2 @@@ ++# False positive for pcre3 ++embedded-library diff --cc debian/not-installed index 00000000,00000000..56afcbc4 new file mode 100644 --- /dev/null +++ b/debian/not-installed @@@ -1,0 -1,0 +1,3 @@@ ++usr/share/freecad/share/pixmaps/freecad.xpm ++usr/share/freecad/include/gtest/* ++usr/share/freecad/include/gmock/* diff --cc debian/patches/0020-python3.8-syntax.patch index 00000000,00000000..86ffb131 new file mode 100644 --- /dev/null +++ b/debian/patches/0020-python3.8-syntax.patch @@@ -1,0 -1,0 +1,22 @@@ ++Description: Fix build failure with Python 3.8 ++ Patches from Gianfranco and Ubuntu. ++Author: Tobias Frost ++Last-Update: 2020-05-12 ++Bug-Debian: https://bugs.debian.org/953722 ++Forwarded: not-needed ++Applied-Upstream: commit:de7949a3b78b55cb3795645da9d8666f6940af5a ++ ++--- a/src/Mod/Test/TestPythonSyntax.py +++++ b/src/Mod/Test/TestPythonSyntax.py ++@@ -58,9 +58,11 @@ ++ """ ++ def setUp(self): ++ self.whitelist = [] +++ self.whitelist += ["ap203_configuration_controlled_3d_design_of_mechanical_parts_and_assemblies_mim_lf.py"] ++ self.whitelist += ["automotive_design.py"] ++ self.whitelist += ["ifc2x3.py"] ++ self.whitelist += ["ifc4.py"] +++ self.whitelist += ["__exec_old.py"] ++ ++ ++ def testAll(self): diff --cc debian/patches/0030-octt78.patch index 00000000,00000000..dcff18fa new file mode 100644 --- /dev/null +++ b/debian/patches/0030-octt78.patch @@@ -1,0 -1,0 +1,718 @@@ ++Description: Fix FTBFS with opencascade 7.8.x ++ This is a backport of the upstream patch to enable compilation ++ with opencascade 7.8.x ++Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1071283 ++Bug: https://github.com/IfcOpenShell/IfcOpenShell/issues/4393 ++Fixed-Upstream: https://github.com/IfcOpenShell/IfcOpenShell/pull/4398/commits/d31bc9cbeb2ac92c398292b8c591515b739265b8 ++From 8abd09398a010337c3b294e687e0666b60bceacf Mon Sep 17 00:00:00 2001 ++From: bgbsww <120601209+bgbsww@users.noreply.github.com> ++Date: Tue, 9 Jan 2024 20:47:25 -0500 ++Subject: [PATCH] Add support for OCCT 7.8.0 (#11909) ++ ++--- ++ cMake/FindOCC.cmake | 14 ++--- ++ .../inc/SMESHDS_DataMapOfShape.hxx | 17 +++++- ++ .../salomesmesh/inc/SMESH_MeshVSLink.hxx | 3 - ++ src/3rdParty/salomesmesh/inc/SMESH_SMESH.hxx | 1 + ++ .../salomesmesh/inc/SMESH_SequenceOfNode.hxx | 3 +- ++ .../salomesmesh/inc/SMESH_TypeDefs.hxx | 7 +++ ++ .../src/DriverSTL/DriverSTL_R_SMDS_Mesh.cpp | 29 ++++++++- ++ .../StdMeshers/StdMeshers_Quadrangle_2D.cpp | 1 - ++ src/Mod/Fem/Gui/TaskCreateNodeSet.cpp | 1 - ++ src/Mod/Import/App/ImportOCAF.cpp | 60 +++++++++++++++++++ ++ src/Mod/Import/App/ImportOCAF2.h | 1 - ++ src/Mod/Import/App/Tools.h | 11 +++- ++ src/Mod/MeshPart/App/CurveProjector.h | 6 ++ ++ src/Mod/Part/App/ImportStep.cpp | 5 ++ ++ src/Mod/Part/App/TopoShapePyImp.cpp | 8 +++ ++ src/Mod/Part/Gui/AppPartGui.cpp | 1 - ++ src/Mod/Part/Gui/Command.cpp | 1 - ++ src/Mod/Part/Gui/CommandSimple.cpp | 1 - ++ src/Mod/Part/Gui/CrossSections.cpp | 1 - ++ src/Mod/Part/Gui/ViewProvider2DObject.cpp | 1 - ++ src/Mod/Part/Gui/ViewProviderExt.cpp | 12 ++++ ++ src/Mod/Part/Gui/ViewProviderExt.h | 1 - ++ src/Mod/Part/Gui/ViewProviderMirror.cpp | 1 - ++ src/Mod/Part/Gui/ViewProviderPython.cpp | 1 - ++ src/Mod/Part/Gui/ViewProviderReference.h | 1 - ++ src/Mod/Path/App/Voronoi.cpp | 3 +- ++ src/Mod/Path/Gui/PreCompiled.h | 2 - ++ src/Mod/Robot/Gui/PreCompiled.h | 2 - ++ src/Mod/Sketcher/Gui/EditDatumDialog.cpp | 1 - ++ 29 files changed, 161 insertions(+), 35 deletions(-) ++ ++--- a/cMake/FindOCC.cmake +++++ b/cMake/FindOCC.cmake ++@@ -127,8 +127,6 @@ ++ TKG2d ++ TKG3d ++ TKMath ++- TKIGES ++- TKSTL ++ TKShHealing ++ TKXSBase ++ TKBool ++@@ -139,10 +137,6 @@ ++ TKGeomBase ++ TKOffset ++ TKPrim ++- TKSTEPBase ++- TKSTEPAttr ++- TKSTEP209 ++- TKSTEP ++ TKHLR ++ TKFeat ++ ) ++@@ -154,17 +148,20 @@ ++ TKLCAF ++ TKVCAF ++ TKCDF ++- TKXDESTEP ++- TKXDEIGES ++ TKMeshVS ++ TKService ++ TKV3d ++ ) ++- if(OCC_VERSION_STRING VERSION_LESS 6.7.3) ++- list(APPEND OCC_OCAF_LIBRARIES TKAdvTools) ++- elseif(NOT OCC_VERSION_STRING VERSION_LESS 7.5.0) +++ +++ if(NOT OCC_VERSION_STRING VERSION_LESS 7.5.0) ++ list(APPEND OCC_OCAF_LIBRARIES TKRWMesh) ++- endif(OCC_VERSION_STRING VERSION_LESS 6.7.3) +++ endif(NOT OCC_VERSION_STRING VERSION_LESS 7.5.0) +++ if(OCC_VERSION_STRING VERSION_LESS 7.8.0) +++ list(APPEND OCC_LIBRARIES TKIGES TKSTL TKSTEPBase TKSTEPAttr TKSTEP209 TKSTEP) +++ list(APPEND OCC_OCAF_LIBRARIES TKXDESTEP TKXDEIGES) +++ else(OCC_VERSION_STRING VERSION_LESS 7.8.0) +++ list(APPEND OCC_LIBRARIES TKDESTEP TKDEIGES TKDEGLTF TKDESTL) +++ endif(OCC_VERSION_STRING VERSION_LESS 7.8.0) ++ message(STATUS "-- Found OCE/OpenCASCADE version: ${OCC_VERSION_STRING}") ++ message(STATUS "-- OCE/OpenCASCADE include directory: ${OCC_INCLUDE_DIR}") ++ message(STATUS "-- OCE/OpenCASCADE shared libraries directory: ${OCC_LIBRARY_DIR}") ++--- a/src/3rdParty/salomesmesh/inc/SMESHDS_DataMapOfShape.hxx +++++ b/src/3rdParty/salomesmesh/inc/SMESHDS_DataMapOfShape.hxx ++@@ -29,13 +29,26 @@ ++ ++ #include ++ +++#include +++ ++ /* ++ * This method needed for instance NCollection_DataMap with TopoDS_Shape as key ++ */ +++#if OCC_VERSION_HEX >= 0x070800 +++struct SMESHDS_Hasher +++{ +++ size_t operator()(const TopoDS_Shape& S) const noexcept { +++ return std::hash{}(S); +++ } +++ size_t operator()(const TopoDS_Shape& S1, const TopoDS_Shape& S2) const noexcept { +++ return S1.IsSame(S2); +++ } +++}; +++#else ++ struct SMESHDS_Hasher ++ { ++ static inline Standard_Boolean IsEqual(const TopoDS_Shape& S1, ++- const TopoDS_Shape& S2) +++ const TopoDS_Shape& S2) ++ { ++ return S1.IsSame(S2); ++ } ++@@ -45,6 +58,6 @@ ++ return ::HashCode( S, Upper); ++ } ++ }; ++- +++#endif ++ ++ #endif ++--- a/src/3rdParty/salomesmesh/inc/SMESH_MeshVSLink.hxx +++++ b/src/3rdParty/salomesmesh/inc/SMESH_MeshVSLink.hxx ++@@ -57,9 +57,6 @@ ++ #ifndef _MeshVS_EntityType_HeaderFile ++ #include ++ #endif ++-#ifndef _Standard_Address_HeaderFile ++-#include ++-#endif ++ #ifndef _TColStd_HArray1OfInteger_HeaderFile ++ #include ++ #endif ++--- a/src/3rdParty/salomesmesh/inc/SMESH_SMESH.hxx +++++ b/src/3rdParty/salomesmesh/inc/SMESH_SMESH.hxx ++@@ -37,4 +37,5 @@ ++ #define SMESH_EXPORT ++ #endif ++ +++#include ++ #endif ++--- a/src/3rdParty/salomesmesh/inc/SMESH_SequenceOfNode.hxx +++++ b/src/3rdParty/salomesmesh/inc/SMESH_SequenceOfNode.hxx ++@@ -28,10 +28,11 @@ ++ ++ #include "SMESH_SMESH.hxx" ++ ++-#include ++ #if OCC_VERSION_HEX >= 0x060703 ++ #include ++ #include +++#else +++#include ++ #endif ++ ++ typedef const SMDS_MeshNode* SMDS_MeshNodePtr; ++--- a/src/3rdParty/salomesmesh/inc/SMESH_TypeDefs.hxx +++++ b/src/3rdParty/salomesmesh/inc/SMESH_TypeDefs.hxx ++@@ -185,11 +185,18 @@ ++ ++ // -------------------------------------------------------------------------------- ++ // class SMESH_SequenceOfElemPtr +++#include +++#if OCC_VERSION_HEX >= 0x060703 +++#include +++#else ++ #include +++#endif ++ ++ class SMDS_MeshElement; ++ ++ typedef const SMDS_MeshElement* SMDS_MeshElementPtr; +++#define DEFINE_SEQUENCE(_ClassName_, _BaseCollection_, TheItemType) \ +++typedef NCollection_Sequence _ClassName_; ++ ++ DEFINE_SEQUENCE (SMESH_SequenceOfElemPtr, SMESH_BaseCollectionElemPtr, SMDS_MeshElementPtr) ++ ++--- a/src/3rdParty/salomesmesh/src/DriverSTL/DriverSTL_R_SMDS_Mesh.cpp +++++ b/src/3rdParty/salomesmesh/src/DriverSTL/DriverSTL_R_SMDS_Mesh.cpp ++@@ -33,10 +33,33 @@ ++ #include "SMDS_MeshNode.hxx" ++ #include "SMESH_File.hxx" ++ +++#include +++ ++ namespace ++ { ++ struct Hasher ++ { +++#if OCC_VERSION_HEX >= 0x070800 +++ size_t operator()(const gp_Pnt& point) const noexcept +++ { +++ union +++ { +++ Standard_Real R[3]; +++ Standard_Integer I[6]; +++ } U; +++ +++ point.Coord( U.R[0], U.R[1], U.R[2] ); +++ return std::hash{}(U.I[0]/23+U.I[1]/19+U.I[2]/17+U.I[3]/13+U.I[4]/11+U.I[5]/7); +++ } +++ +++ size_t operator()(const gp_Pnt& point1, const gp_Pnt& point2) const noexcept +++ { +++ static Standard_Real tab1[3], tab2[3]; +++ point1.Coord(tab1[0],tab1[1],tab1[2]); +++ point2.Coord(tab2[0],tab2[1],tab2[2]); +++ return (memcmp(tab1,tab2,sizeof(tab1)) == 0); +++ } +++#else ++ //======================================================================= ++ //function : HashCode ++ //purpose : ++@@ -51,9 +74,9 @@ ++ } U; ++ ++ point.Coord( U.R[0], U.R[1], U.R[2] ); ++- ++- return ::HashCode(U.I[0]/23+U.I[1]/19+U.I[2]/17+U.I[3]/13+U.I[4]/11+U.I[5]/7,Upper); +++ return std::hash{}(U.I[0]/23+U.I[1]/19+U.I[2]/17+U.I[3]/13+U.I[4]/11+U.I[5]/7); ++ } +++ ++ //======================================================================= ++ //function : IsEqual ++ //purpose : ++@@ -66,7 +89,9 @@ ++ point2.Coord(tab2[0],tab2[1],tab2[2]); ++ return (memcmp(tab1,tab2,sizeof(tab1)) == 0); ++ } +++#endif ++ }; +++ ++ typedef NCollection_DataMap TDataMapOfPntNodePtr; ++ ++ const int HEADER_SIZE = 84; ++--- a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp +++++ b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp ++@@ -48,7 +48,6 @@ ++ #include ++ #include ++ #include ++-#include ++ #include ++ #include ++ #include ++--- a/src/Mod/Fem/Gui/TaskCreateNodeSet.cpp +++++ b/src/Mod/Fem/Gui/TaskCreateNodeSet.cpp ++@@ -28,7 +28,6 @@ ++ ++ # include ++ # include ++-# include ++ #endif ++ ++ #include ++--- a/src/Mod/Import/App/ImportOCAF.cpp +++++ b/src/Mod/Import/App/ImportOCAF.cpp ++@@ -148,7 +148,11 @@ ++ std::vector localValue; ++ ++ if (aShapeTool->GetShape(label,aShape)) { +++#if OCC_VERSION_HEX >= 0x070800 +++ hash = std::hash {}(aShape); +++#else ++ hash = aShape.HashCode(HashUpper); +++#endif ++ } ++ ++ Handle(TDataStd_Name) name; ++@@ -217,9 +221,13 @@ ++ ++ if (isRef || myRefShapes.find(hash) == myRefShapes.end()) { ++ TopoDS_Shape aShape; ++- if (isRef && aShapeTool->GetShape(label, aShape)) ++- myRefShapes.insert(aShape.HashCode(HashUpper)); ++- +++ if (isRef && aShapeTool->GetShape(label, aShape)) { +++#if OCC_VERSION_HEX >= 0x070800 +++ myRefShapes.insert(std::hash {}(aShape)); +++#else +++ myRefShapes.insert(aShape.HashCode(HashUpper)); +++#endif +++ } ++ if (aShapeTool->IsSimpleShape(label) && (isRef || aShapeTool->IsFree(label))) { ++ if (!asm_name.empty()) ++ part_name = asm_name; ++@@ -532,7 +540,11 @@ ++ part->Label.setValue(default_name); ++ part->Shape.setValue(shape); ++ std::map::const_iterator jt; +++#if OCC_VERSION_HEX >= 0x070800 +++ jt = myColorMap.find(std::hash {}(shape)); +++#else ++ jt = myColorMap.find(shape.HashCode(INT_MAX)); +++#endif ++ ++ App::Color partColor(0.8f,0.8f,0.8f); ++ #if 0//TODO ++@@ -553,7 +565,11 @@ ++ // set label name if defined ++ if (setname && !myNameMap.empty()) { ++ std::map::const_iterator jt; +++#if OCC_VERSION_HEX >= 0x070800 +++ jt = myNameMap.find(std::hash {}(shape)); +++#else ++ jt = myNameMap.find(shape.HashCode(INT_MAX)); +++#endif ++ if (jt != myNameMap.end()) { ++ part->Label.setValue(jt->second); ++ } ++@@ -573,7 +589,11 @@ ++ faceColors.resize(faces.Extent(), partColor); ++ xp.Init(shape,TopAbs_FACE); ++ while (xp.More()) { +++#if OCC_VERSION_HEX >= 0x070800 +++ jt = myColorMap.find(std::hash {}(xp.Current())); +++#else ++ jt = myColorMap.find(xp.Current().HashCode(INT_MAX)); +++#endif ++ if (jt != myColorMap.end()) { ++ int index = faces.FindIndex(xp.Current()); ++ faceColors[index-1] = convertColor(jt->second); ++@@ -607,24 +627,59 @@ ++ int ctSolids = 0, ctShells = 0, ctComps = 0; ++ // add the shapes ++ TopExp_Explorer xp; ++- for (xp.Init(aShape, TopAbs_SOLID); xp.More(); xp.Next(), ctSolids++) +++ for (xp.Init(aShape, TopAbs_SOLID); xp.More(); xp.Next(), ctSolids++) { +++#if OCC_VERSION_HEX >= 0x070800 +++ this->mySolids[std::hash {}(xp.Current())] = (xp.Current()); +++#else ++ this->mySolids[xp.Current().HashCode(INT_MAX)] = (xp.Current()); ++- for (xp.Init(aShape, TopAbs_SHELL, TopAbs_SOLID); xp.More(); xp.Next(), ctShells++) +++#endif +++ } +++ for (xp.Init(aShape, TopAbs_SHELL, TopAbs_SOLID); xp.More(); xp.Next(), ctShells++) { +++#if OCC_VERSION_HEX >= 0x070800 +++ this->myShells[std::hash {}(xp.Current())] = (xp.Current()); +++#else ++ this->myShells[xp.Current().HashCode(INT_MAX)] = (xp.Current()); +++#endif +++ } ++ // if no solids and no shells were found then go for compounds ++ if (ctSolids == 0 && ctShells == 0) { ++- for (xp.Init(aShape, TopAbs_COMPOUND); xp.More(); xp.Next(), ctComps++) +++ for (xp.Init(aShape, TopAbs_COMPOUND); xp.More(); xp.Next(), ctComps++) { +++#if OCC_VERSION_HEX >= 0x070800 +++ this->myCompds[std::hash {}(xp.Current())] = (xp.Current()); +++#else ++ this->myCompds[xp.Current().HashCode(INT_MAX)] = (xp.Current()); +++#endif +++ } ++ } ++ if (ctComps == 0) { ++- for (xp.Init(aShape, TopAbs_FACE, TopAbs_SHELL); xp.More(); xp.Next()) +++ for (xp.Init(aShape, TopAbs_FACE, TopAbs_SHELL); xp.More(); xp.Next()) { +++#if OCC_VERSION_HEX >= 0x070800 +++ this->myShapes[std::hash {}(xp.Current())] = (xp.Current()); +++#else ++ this->myShapes[xp.Current().HashCode(INT_MAX)] = (xp.Current()); ++- for (xp.Init(aShape, TopAbs_WIRE, TopAbs_FACE); xp.More(); xp.Next()) +++#endif +++ } +++ for (xp.Init(aShape, TopAbs_WIRE, TopAbs_FACE); xp.More(); xp.Next()) { +++#if OCC_VERSION_HEX >= 0x070800 +++ this->myShapes[std::hash {}(xp.Current())] = (xp.Current()); +++#else ++ this->myShapes[xp.Current().HashCode(INT_MAX)] = (xp.Current()); ++- for (xp.Init(aShape, TopAbs_EDGE, TopAbs_WIRE); xp.More(); xp.Next()) +++#endif +++ } +++ for (xp.Init(aShape, TopAbs_EDGE, TopAbs_WIRE); xp.More(); xp.Next()) { +++#if OCC_VERSION_HEX >= 0x070800 +++ this->myShapes[std::hash {}(xp.Current())] = (xp.Current()); +++#else ++ this->myShapes[xp.Current().HashCode(INT_MAX)] = (xp.Current()); ++- for (xp.Init(aShape, TopAbs_VERTEX, TopAbs_EDGE); xp.More(); xp.Next()) +++#endif +++ } +++ for (xp.Init(aShape, TopAbs_VERTEX, TopAbs_EDGE); xp.More(); xp.Next()) { +++#if OCC_VERSION_HEX >= 0x070800 +++ this->myShapes[std::hash {}(xp.Current())] = (xp.Current()); +++#else ++ this->myShapes[xp.Current().HashCode(INT_MAX)] = (xp.Current()); +++#endif +++ } ++ } ++ } ++ ++@@ -634,7 +689,11 @@ ++ hColors->GetColor(label, XCAFDoc_ColorSurf, col) || ++ hColors->GetColor(label, XCAFDoc_ColorCurv, col)) { ++ // add defined color +++#if OCC_VERSION_HEX >= 0x070800 +++ myColorMap[std::hash {}(aShape)] = col; +++#else ++ myColorMap[aShape.HashCode(INT_MAX)] = col; +++#endif ++ } ++ else { ++ // http://www.opencascade.org/org/forum/thread_17107/ ++@@ -644,7 +703,11 @@ ++ hColors->GetColor(it.Value(), XCAFDoc_ColorSurf, col) || ++ hColors->GetColor(it.Value(), XCAFDoc_ColorCurv, col)) { ++ // add defined color +++#if OCC_VERSION_HEX >= 0x070800 +++ myColorMap[std::hash {}(it.Value())] = col; +++#else ++ myColorMap[it.Value().HashCode(INT_MAX)] = col; +++#endif ++ } ++ } ++ } ++@@ -656,8 +719,13 @@ ++ char* str = new char[extstr.LengthOfCString()+1]; ++ extstr.ToUTF8CString(str); ++ std::string labelName(str); ++- if (!labelName.empty()) +++ if (!labelName.empty()) { +++#if OCC_VERSION_HEX >= 0x070800 +++ myNameMap[std::hash {}(aShape)] = labelName; +++#else ++ myNameMap[aShape.HashCode(INT_MAX)] = labelName; +++#endif +++ } ++ delete [] str; ++ } ++ ++--- a/src/Mod/Import/App/ImportOCAF2.h +++++ b/src/Mod/Import/App/ImportOCAF2.h ++@@ -30,7 +30,6 @@ ++ #include ++ #include ++ ++-#include ++ #include ++ #include ++ #include ++@@ -42,6 +41,7 @@ ++ #include "ImportOCAF.h" ++ #include "ExportOCAF.h" ++ +++#include ++ ++ class TDF_Label; ++ class TopLoc_Location; ++@@ -58,13 +58,21 @@ ++ ++ struct ShapeHasher { ++ std::size_t operator()(const TopoDS_Shape &s) const { ++- return s.HashCode(INT_MAX); +++#if OCC_VERSION_HEX >= 0x070800 +++ return std::hash {}(s); +++#else +++ return shape.HashCode(INT_MAX); +++#endif ++ } ++ }; ++ ++ struct LabelHasher { ++ std::size_t operator()(const TDF_Label &l) const { ++- return TDF_LabelMapHasher::HashCode(l,INT_MAX); +++#if OCC_VERSION_HEX >= 0x070800 +++ return std::hash {}(l); +++#else +++ return TDF_LabelMapHasher::HashCode(l, INT_MAX); +++#endif ++ } ++ }; ++ ++--- a/src/Mod/MeshPart/App/CurveProjector.h +++++ b/src/Mod/MeshPart/App/CurveProjector.h ++@@ -32,6 +32,7 @@ ++ #include ++ #include ++ +++#include ++ ++ namespace MeshCore ++ { ++@@ -63,8 +64,13 @@ ++ template ++ struct TopoDSLess { ++ bool operator()(const T& x, const T& y) const { ++- return x.HashCode(INT_MAX-1) < y.HashCode(INT_MAX-1); ++- } +++#if OCC_VERSION_HEX >= 0x070800 +++ std::hash hasher; +++ return hasher(x) < hasher(y); +++#else +++ return x.HashCode(INT_MAX - 1) < y.HashCode(INT_MAX - 1); +++#endif +++ } ++ }; ++ ++ using result_type = std::map,TopoDSLess >; ++--- a/src/Mod/Part/App/ImportStep.cpp +++++ b/src/Mod/Part/App/ImportStep.cpp ++@@ -137,7 +137,12 @@ ++ // This is a trick to access the GUI via Python and set the color property ++ // of the associated view provider. If no GUI is up an exception is thrown ++ // and cleared immediately +++#if OCC_VERSION_HEX >= 0x070800 +++ std::hash hasher; +++ std::map::iterator it = hash_col.find(hasher(aSolid)); +++#else ++ std::map::iterator it = hash_col.find(aSolid.HashCode(INT_MAX)); +++#endif ++ if (it != hash_col.end()) { ++ try { ++ Py::Object obj(pcFeature->getPyObject(), true); ++--- a/src/Mod/Part/App/TopoShapePyImp.cpp +++++ b/src/Mod/Part/App/TopoShapePyImp.cpp ++@@ -1304,7 +1304,11 @@ ++ TopTools_ListIteratorOfListOfShape it(ancestors); ++ for (; it.More(); it.Next()) { ++ // make sure to avoid duplicates +++#if OCC_VERSION_HEX >= 0x070800 +++ const size_t code = std::hash{}(static_cast(it.Value())); +++#else ++ Standard_Integer code = it.Value().HashCode(INT_MAX); +++#endif ++ if (hashes.find(code) == hashes.end()) { ++ list.append(shape2pyshape(it.Value())); ++ hashes.insert(code); ++@@ -1919,7 +1923,11 @@ ++ if (!PyArg_ParseTuple(args, "|i",&upper)) ++ return nullptr; ++ +++#if OCC_VERSION_HEX >= 0x070800 +++ int hc = std::hash{}(getTopoShapePtr()->getShape()); +++#else ++ int hc = getTopoShapePtr()->getShape().HashCode(upper); +++#endif ++ return Py_BuildValue("i", hc); ++ } ++ ++--- a/src/Mod/Part/Gui/AppPartGui.cpp +++++ b/src/Mod/Part/Gui/AppPartGui.cpp ++@@ -24,7 +24,6 @@ ++ ++ #include "PreCompiled.h" ++ #ifndef _PreComp_ ++-# include ++ #endif ++ ++ #include ++--- a/src/Mod/Part/Gui/Command.cpp +++++ b/src/Mod/Part/Gui/Command.cpp ++@@ -26,7 +26,6 @@ ++ # include ++ # include ++ # include ++-# include ++ # include ++ # include ++ # include ++--- a/src/Mod/Part/Gui/CommandSimple.cpp +++++ b/src/Mod/Part/Gui/CommandSimple.cpp ++@@ -23,7 +23,6 @@ ++ ++ #include "PreCompiled.h" ++ #ifndef _PreComp_ ++-# include ++ # include ++ #endif ++ ++--- a/src/Mod/Part/Gui/CrossSections.cpp +++++ b/src/Mod/Part/Gui/CrossSections.cpp ++@@ -28,7 +28,6 @@ ++ # include ++ ++ # include ++-# include ++ # include ++ # include ++ ++--- a/src/Mod/Part/Gui/ViewProvider2DObject.cpp +++++ b/src/Mod/Part/Gui/ViewProvider2DObject.cpp ++@@ -25,7 +25,6 @@ ++ #ifndef _PreComp_ ++ # include ++ ++-# include ++ ++ # include ++ # include ++--- a/src/Mod/Part/Gui/ViewProviderExt.cpp +++++ b/src/Mod/Part/Gui/ViewProviderExt.cpp ++@@ -987,7 +987,11 @@ ++ ++ TopExp_Explorer xp; ++ for (xp.Init(faceMap(i),TopAbs_EDGE);xp.More();xp.Next()) +++#if OCC_VERSION_HEX >= 0x070800 +++ faceEdges.insert(std::hash{}(xp.Current())); +++#else ++ faceEdges.insert(xp.Current().HashCode(INT_MAX)); +++#endif ++ numFaces++; ++ } ++ ++@@ -1015,7 +1019,11 @@ ++ // So, we have to store the hashes of the edges associated to a face. ++ // If the hash of a given edge is not in this list we know it's really ++ // a free edge. +++#if OCC_VERSION_HEX >= 0x070800 +++ int hash = std::hash{}(aEdge); +++#else ++ int hash = aEdge.HashCode(INT_MAX); +++#endif ++ if (faceEdges.find(hash) == faceEdges.end()) { ++ Handle(Poly_Polygon3D) aPoly = Part::Tools::polygonOfEdge(aEdge, aLoc); ++ if (!aPoly.IsNull()) { ++@@ -1214,7 +1222,11 @@ ++ TopLoc_Location aLoc; ++ ++ // handling of the free edge that are not associated to a face +++#if OCC_VERSION_HEX >= 0x070800 +++ int hash = std::hash{}(aEdge); +++#else ++ int hash = aEdge.HashCode(INT_MAX); +++#endif ++ if (faceEdges.find(hash) == faceEdges.end()) { ++ Handle(Poly_Polygon3D) aPoly = Part::Tools::polygonOfEdge(aEdge, aLoc); ++ if (!aPoly.IsNull()) { ++--- a/src/Mod/Part/Gui/ViewProviderExt.h +++++ b/src/Mod/Part/Gui/ViewProviderExt.h ++@@ -24,7 +24,6 @@ ++ #define PARTGUI_VIEWPROVIDERPARTEXT_H ++ ++ #include ++-#include ++ ++ #include ++ #include ++--- a/src/Mod/Part/Gui/ViewProviderMirror.cpp +++++ b/src/Mod/Part/Gui/ViewProviderMirror.cpp ++@@ -27,7 +27,6 @@ ++ # include ++ # include ++ ++-# include ++ # include ++ # include ++ ++--- a/src/Mod/Part/Gui/ViewProviderPython.cpp +++++ b/src/Mod/Part/Gui/ViewProviderPython.cpp ++@@ -22,7 +22,6 @@ ++ ++ #include "PreCompiled.h" ++ ++-#include ++ #ifndef _PreComp_ ++ # include ++ #endif ++--- a/src/Mod/Part/Gui/ViewProviderReference.h +++++ b/src/Mod/Part/Gui/ViewProviderReference.h ++@@ -24,7 +24,6 @@ ++ #ifndef PARTGUI_ViewProviderPartReference_H ++ #define PARTGUI_ViewProviderPartReference_H ++ ++-#include ++ #include ++ #include ++ #include ++--- a/src/Mod/Path/App/Voronoi.cpp +++++ b/src/Mod/Path/App/Voronoi.cpp ++@@ -22,7 +22,8 @@ ++ ++ #include "PreCompiled.h" ++ #ifndef _PreComp_ ++-# include +++#define _USE_MATH_DEFINES +++# include ++ #endif ++ ++ #include ++--- a/src/Mod/Path/Gui/PreCompiled.h +++++ b/src/Mod/Path/Gui/PreCompiled.h ++@@ -38,8 +38,6 @@ ++ # define PathGuiExport ++ #endif ++ ++-#include ++- ++ #ifdef _MSC_VER ++ # pragma warning( disable : 4273 ) ++ #endif ++--- a/src/Mod/Robot/Gui/PreCompiled.h +++++ b/src/Mod/Robot/Gui/PreCompiled.h ++@@ -38,8 +38,6 @@ ++ # define RobotGuiExport ++ #endif ++ ++-#include ++- ++ #ifdef _MSC_VER ++ # pragma warning(disable : 4005) ++ # pragma warning(disable : 4273) ++--- a/src/Mod/Sketcher/Gui/EditDatumDialog.cpp +++++ b/src/Mod/Sketcher/Gui/EditDatumDialog.cpp ++@@ -23,7 +23,6 @@ ++ #include "PreCompiled.h" ++ ++ #ifndef _PreComp_ ++-#include ++ /// Qt Include Files ++ #include ++ #include diff --cc debian/patches/0110-desktop-extra-categories.patch index 00000000,00000000..09d4cb52 new file mode 100644 --- /dev/null +++ b/debian/patches/0110-desktop-extra-categories.patch @@@ -1,0 -1,0 +1,18 @@@ ++Description: Add XDG desktop category X-CNC also used by LinuxCNC. ++ This ensure FreeCAD and LinuxCNC both show up in the CNC submenu when ++ both are installed. ++Author: Petter Reinholdtsen ++Applied-Upstream: commit:575c5659ae9f52c9614bf1c3648f6014eddeea54 ++Forwarded: https://github.com/FreeCAD/FreeCAD/pull/10567 ++Last-Update: 2023-08-04 ++ ++--- a/src/XDGData/org.freecadweb.FreeCAD.desktop +++++ b/src/XDGData/org.freecadweb.FreeCAD.desktop ++@@ -18,6 +18,6 @@ ++ Terminal=false ++ Type=Application ++ Icon=org.freecadweb.FreeCAD ++-Categories=Graphics;Science;Education;Engineering; +++Categories=Graphics;Science;Education;Engineering;X-CNC; ++ StartupNotify=true ++ MimeType=application/x-extension-fcstd;model/obj;model/iges;image/vnd.dwg;image/vnd.dxf;model/vnd.collada+xml;application/iges;model/iges;model/step;model/step+zip;model/stl;application/vnd.shp;model/vrml; diff --cc debian/patches/1020-fix_gcc8_ftbfs.patch index 00000000,00000000..981e8c10 new file mode 100644 --- /dev/null +++ b/debian/patches/1020-fix_gcc8_ftbfs.patch @@@ -1,0 -1,0 +1,19 @@@ ++Description: Fixes GCC8 FTBFS due to included copy of SMESH. ++Author: Kurt Kremitzki ++Forwarded: https://github.com/FreeCAD/FreeCAD/pull/9848 ++Applied-Upstream: https://github.com/FreeCAD/FreeCAD/commit/ab4f3028bd4b580a3b11be49a7a445d48d4c8c7c ++Last-Update: 2023-12-09 ++ ++--- a/src/3rdParty/salomesmesh/inc/SMDS_MeshElement.hxx +++++ b/src/3rdParty/salomesmesh/inc/SMDS_MeshElement.hxx ++@@ -221,8 +221,8 @@ ++ // WARNING: this comparator makes impossible to store both nodes and elements in the same set ++ // because there are nodes and elements with the same ID. Use TIDTypeCompare for such containers. ++ struct TIDCompare { ++- bool operator () (const SMDS_MeshElement* e1, const SMDS_MeshElement* e2) const ++- { return e1->GetID() < e2->GetID(); } +++ template bool operator () (const T* e1, const T* e2) const +++ { return static_cast(e1)->GetID() < static_cast(e2)->GetID(); } ++ }; ++ ++ #endif diff --cc debian/patches/1030-fix_armel_FTBFS.patch index 00000000,00000000..871938d6 new file mode 100644 --- /dev/null +++ b/debian/patches/1030-fix_armel_FTBFS.patch @@@ -1,0 -1,0 +1,545 @@@ ++Description: fix compilation on Armel due to coincident variables in ++ sys/ucontext.h (R2, R3, R4). Thanks to Paul Brook ++ http://lists.alioth.debian.org/pipermail/debian-science-maintainers/2011-October/009876.html ++Author: Anton Gladky ++Forwarded: https://github.com/FreeCAD/FreeCAD/pull/9847 ++Applied-Upstream: https://github.com/FreeCAD/FreeCAD/commit/ee22ac24c495d1fea301fa1e6a824a6a7fb55933 ++Last-Update: 2023-12-09 ++ ++--- a/src/3rdParty/salomesmesh/inc/Rn.h +++++ b/src/3rdParty/salomesmesh/inc/Rn.h ++@@ -31,7 +31,7 @@ ++ #include //Dans OpenCascade ++ ++ //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++-// BUT: Definir les espaces affines R R2 R3 R4 soit Rn pour n=1,2,3,4 +++// BUT: Definir les espaces affines R R_2 R_3 R_4 soit Rn pour n=1,2,3,4 ++ //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++ // AUTEUR : Frederic HECHT ANALYSE NUMERIQUE UPMC PARIS OCTOBRE 2000 ++ // MODIFS : Alain PERRONNET ANALYSE NUMERIQUE UPMC PARIS NOVEMBRE 2000 ++@@ -82,155 +82,155 @@ ++ //============== ++ //typedef struct { short int x,y } XPoint; //en fait ce type est defini dans X11-Window ++ // #include ++-//la classe R2 +++//la classe R_2 ++ //============ ++-class R2 +++class R_2 ++ { ++- friend std::ostream& operator << (std::ostream& f, const R2 & P) +++ friend std::ostream& operator << (std::ostream& f, const R_2 & P) ++ { f << P.x << ' ' << P.y ; return f; } ++- friend std::istream& operator >> (std::istream& f, R2 & P) +++ friend std::istream& operator >> (std::istream& f, R_2 & P) ++ { f >> P.x >> P.y ; return f; } ++ ++- friend std::ostream& operator << (std::ostream& f, const R2 * P) +++ friend std::ostream& operator << (std::ostream& f, const R_2 * P) ++ { f << P->x << ' ' << P->y ; return f; } ++- friend std::istream& operator >> (std::istream& f, R2 * P) +++ friend std::istream& operator >> (std::istream& f, R_2 * P) ++ { f >> P->x >> P->y ; return f; } ++ ++ public: ++ R x,y; //les donnees ++ ++- R2 () :x(0),y(0) {} //les constructeurs ++- R2 (R a,R b) :x(a),y(b) {} ++- R2 (R2 A,R2 B) :x(B.x-A.x),y(B.y-A.y) {} //vecteur defini par 2 points ++- ++- R2 operator+(R2 P) const {return R2(x+P.x,y+P.y);} // Q+P possible ++- R2 operator+=(R2 P) {x += P.x;y += P.y; return *this;}// Q+=P; ++- R2 operator-(R2 P) const {return R2(x-P.x,y-P.y);} // Q-P ++- R2 operator-=(R2 P) {x -= P.x;y -= P.y; return *this;} // Q-=P; ++- R2 operator-()const {return R2(-x,-y);} // -Q ++- R2 operator+()const {return *this;} // +Q ++- R operator,(R2 P)const {return x*P.x+y*P.y;} // produit scalaire (Q,P) ++- R operator^(R2 P)const {return x*P.y-y*P.x;} // produit vectoriel Q^P ++- R2 operator*(R c)const {return R2(x*c,y*c);} // produit a droite P*c ++- R2 operator*=(R c) {x *= c; y *= c; return *this;} ++- R2 operator/(R c)const {return R2(x/c,y/c);} // division par un reel ++- R2 operator/=(R c) {x /= c; y /= c; return *this;} +++ R_2 () :x(0),y(0) {} //les constructeurs +++ R_2 (R a,R b) :x(a),y(b) {} +++ R_2 (R_2 A,R_2 B) :x(B.x-A.x),y(B.y-A.y) {} //vecteur defini par 2 points +++ +++ R_2 operator+(R_2 P) const {return R_2(x+P.x,y+P.y);} // Q+P possible +++ R_2 operator+=(R_2 P) {x += P.x;y += P.y; return *this;}// Q+=P; +++ R_2 operator-(R_2 P) const {return R_2(x-P.x,y-P.y);} // Q-P +++ R_2 operator-=(R_2 P) {x -= P.x;y -= P.y; return *this;} // Q-=P; +++ R_2 operator-()const {return R_2(-x,-y);} // -Q +++ R_2 operator+()const {return *this;} // +Q +++ R operator,(R_2 P)const {return x*P.x+y*P.y;} // produit scalaire (Q,P) +++ R operator^(R_2 P)const {return x*P.y-y*P.x;} // produit vectoriel Q^P +++ R_2 operator*(R c)const {return R_2(x*c,y*c);} // produit a droite P*c +++ R_2 operator*=(R c) {x *= c; y *= c; return *this;} +++ R_2 operator/(R c)const {return R_2(x/c,y/c);} // division par un reel +++ R_2 operator/=(R c) {x /= c; y /= c; return *this;} ++ R & operator[](int i) {return (&x)[i];} // la coordonnee i ++- R2 orthogonal() {return R2(-y,x);} //le vecteur orthogonal dans R2 ++- friend R2 operator*(R c,R2 P) {return P*c;} // produit a gauche c*P +++ R_2 orthogonal() {return R_2(-y,x);} //le vecteur orthogonal dans R_2 +++ friend R_2 operator*(R c,R_2 P) {return P*c;} // produit a gauche c*P ++ }; ++ ++ ++-//la classe R3 +++//la classe R_3 ++ //============ ++-class R3 +++class R_3 ++ { ++- friend std::ostream& operator << (std::ostream& f, const R3 & P) +++ friend std::ostream& operator << (std::ostream& f, const R_3 & P) ++ { f << P.x << ' ' << P.y << ' ' << P.z ; return f; } ++- friend std::istream& operator >> (std::istream& f, R3 & P) +++ friend std::istream& operator >> (std::istream& f, R_3 & P) ++ { f >> P.x >> P.y >> P.z ; return f; } ++ ++- friend std::ostream& operator << (std::ostream& f, const R3 * P) +++ friend std::ostream& operator << (std::ostream& f, const R_3 * P) ++ { f << P->x << ' ' << P->y << ' ' << P->z ; return f; } ++- friend std::istream& operator >> (std::istream& f, R3 * P) +++ friend std::istream& operator >> (std::istream& f, R_3 * P) ++ { f >> P->x >> P->y >> P->z ; return f; } ++ ++ public: ++ R x,y,z; //les 3 coordonnees ++ ++- R3 () :x(0),y(0),z(0) {} //les constructeurs ++- R3 (R a,R b,R c):x(a),y(b),z(c) {} //Point ou Vecteur (a,b,c) ++- R3 (R3 A,R3 B):x(B.x-A.x),y(B.y-A.y),z(B.z-A.z) {} //Vecteur AB ++- ++- R3 (gp_Pnt P) : x(P.X()), y(P.Y()), z(P.Z()) {} //Point d'OpenCascade ++- R3 (gp_Vec V) : x(V.X()), y(V.Y()), z(V.Z()) {} //Vecteur d'OpenCascade ++- R3 (gp_Dir P) : x(P.X()), y(P.Y()), z(P.Z()) {} //Direction d'OpenCascade ++- ++- R3 operator+(R3 P)const {return R3(x+P.x,y+P.y,z+P.z);} ++- R3 operator+=(R3 P) {x += P.x; y += P.y; z += P.z; return *this;} ++- R3 operator-(R3 P)const {return R3(x-P.x,y-P.y,z-P.z);} ++- R3 operator-=(R3 P) {x -= P.x; y -= P.y; z -= P.z; return *this;} ++- R3 operator-()const {return R3(-x,-y,-z);} ++- R3 operator+()const {return *this;} ++- R operator,(R3 P)const {return x*P.x+y*P.y+z*P.z;} // produit scalaire ++- R3 operator^(R3 P)const {return R3(y*P.z-z*P.y ,P.x*z-x*P.z, x*P.y-y*P.x);} // produit vectoriel ++- R3 operator*(R c)const {return R3(x*c,y*c,z*c);} ++- R3 operator*=(R c) {x *= c; y *= c; z *= c; return *this;} ++- R3 operator/(R c)const {return R3(x/c,y/c,z/c);} ++- R3 operator/=(R c) {x /= c; y /= c; z /= c; return *this;} +++ R_3 () :x(0),y(0),z(0) {} //les constructeurs +++ R_3 (R a,R b,R c):x(a),y(b),z(c) {} //Point ou Vecteur (a,b,c) +++ R_3 (R_3 A,R_3 B):x(B.x-A.x),y(B.y-A.y),z(B.z-A.z) {} //Vecteur AB +++ +++ R_3 (gp_Pnt P) : x(P.X()), y(P.Y()), z(P.Z()) {} //Point d'OpenCascade +++ R_3 (gp_Vec V) : x(V.X()), y(V.Y()), z(V.Z()) {} //Vecteur d'OpenCascade +++ R_3 (gp_Dir P) : x(P.X()), y(P.Y()), z(P.Z()) {} //Direction d'OpenCascade +++ +++ R_3 operator+(R_3 P)const {return R_3(x+P.x,y+P.y,z+P.z);} +++ R_3 operator+=(R_3 P) {x += P.x; y += P.y; z += P.z; return *this;} +++ R_3 operator-(R_3 P)const {return R_3(x-P.x,y-P.y,z-P.z);} +++ R_3 operator-=(R_3 P) {x -= P.x; y -= P.y; z -= P.z; return *this;} +++ R_3 operator-()const {return R_3(-x,-y,-z);} +++ R_3 operator+()const {return *this;} +++ R operator,(R_3 P)const {return x*P.x+y*P.y+z*P.z;} // produit scalaire +++ R_3 operator^(R_3 P)const {return R_3(y*P.z-z*P.y ,P.x*z-x*P.z, x*P.y-y*P.x);} // produit vectoriel +++ R_3 operator*(R c)const {return R_3(x*c,y*c,z*c);} +++ R_3 operator*=(R c) {x *= c; y *= c; z *= c; return *this;} +++ R_3 operator/(R c)const {return R_3(x/c,y/c,z/c);} +++ R_3 operator/=(R c) {x /= c; y /= c; z /= c; return *this;} ++ R & operator[](int i) {return (&x)[i];} ++- friend R3 operator*(R c,R3 P) {return P*c;} +++ friend R_3 operator*(R c,R_3 P) {return P*c;} ++ ++- R3 operator=(gp_Pnt P) {return R3(P.X(),P.Y(),P.Z());} ++- R3 operator=(gp_Dir P) {return R3(P.X(),P.Y(),P.Z());} +++ R_3 operator=(gp_Pnt P) {return R_3(P.X(),P.Y(),P.Z());} +++ R_3 operator=(gp_Dir P) {return R_3(P.X(),P.Y(),P.Z());} ++ ++- friend gp_Pnt gp_pnt(R3 xyz) { return gp_Pnt(xyz.x,xyz.y,xyz.z); } +++ friend gp_Pnt gp_pnt(R_3 xyz) { return gp_Pnt(xyz.x,xyz.y,xyz.z); } ++ //friend gp_Pnt operator=() { return gp_Pnt(x,y,z); } ++- friend gp_Dir gp_dir(R3 xyz) { return gp_Dir(xyz.x,xyz.y,xyz.z); } +++ friend gp_Dir gp_dir(R_3 xyz) { return gp_Dir(xyz.x,xyz.y,xyz.z); } ++ ++- bool DansPave( R3 & xyzMin, R3 & xyzMax ) +++ bool DansPave( R_3 & xyzMin, R_3 & xyzMax ) ++ { return xyzMin.x<=x && x<=xyzMax.x && ++ xyzMin.y<=y && y<=xyzMax.y && ++ xyzMin.z<=z && z<=xyzMax.z; } ++ }; ++ ++-//la classe R4 +++//la classe R_4 ++ //============ ++-class R4: public R3 +++class R_4: public R_3 ++ { ++- friend std::ostream& operator <<(std::ostream& f, const R4 & P ) +++ friend std::ostream& operator <<(std::ostream& f, const R_4 & P ) ++ { f << P.x << ' ' << P.y << ' ' << P.z << ' ' << P.omega; return f; } ++- friend std::istream& operator >>(std::istream& f, R4 & P) +++ friend std::istream& operator >>(std::istream& f, R_4 & P) ++ { f >> P.x >> P.y >> P.z >> P.omega ; return f; } ++ ++- friend std::ostream& operator <<(std::ostream& f, const R4 * P ) +++ friend std::ostream& operator <<(std::ostream& f, const R_4 * P ) ++ { f << P->x << ' ' << P->y << ' ' << P->z << ' ' << P->omega; return f; } ++- friend std::istream& operator >>(std::istream& f, R4 * P) +++ friend std::istream& operator >>(std::istream& f, R_4 * P) ++ { f >> P->x >> P->y >> P->z >> P->omega ; return f; } ++ ++ public: ++ R omega; //la donnee du poids supplementaire ++ ++- R4 () :omega(1.0) {} //les constructeurs ++- R4 (R a,R b,R c,R d):R3(a,b,c),omega(d) {} ++- R4 (R4 A,R4 B) :R3(B.x-A.x,B.y-A.y,B.z-A.z),omega(B.omega-A.omega) {} ++- ++- R4 operator+(R4 P)const {return R4(x+P.x,y+P.y,z+P.z,omega+P.omega);} ++- R4 operator+=(R4 P) {x += P.x;y += P.y;z += P.z;omega += P.omega;return *this;} ++- R4 operator-(R4 P)const {return R4(x-P.x,y-P.y,z-P.z,omega-P.omega);} ++- R4 operator-=(R4 P) {x -= P.x;y -= P.y;z -= P.z;omega -= P.omega;return *this;} ++- R4 operator-()const {return R4(-x,-y,-z,-omega);} ++- R4 operator+()const {return *this;} ++- R operator,(R4 P)const {return x*P.x+y*P.y+z*P.z+omega*P.omega;} // produit scalaire ++- R4 operator*(R c)const {return R4(x*c,y*c,z*c,omega*c);} ++- R4 operator*=(R c) {x *= c; y *= c; z *= c; omega *= c; return *this;} ++- R4 operator/(R c)const {return R4(x/c,y/c,z/c,omega/c);} ++- R4 operator/=(R c) {x /= c; y /= c; z /= c; omega /= c; return *this;} +++ R_4 () :omega(1.0) {} //les constructeurs +++ R_4 (R a,R b,R c,R d):R_3(a,b,c),omega(d) {} +++ R_4 (R_4 A,R_4 B) :R_3(B.x-A.x,B.y-A.y,B.z-A.z),omega(B.omega-A.omega) {} +++ +++ R_4 operator+(R_4 P)const {return R_4(x+P.x,y+P.y,z+P.z,omega+P.omega);} +++ R_4 operator+=(R_4 P) {x += P.x;y += P.y;z += P.z;omega += P.omega;return *this;} +++ R_4 operator-(R_4 P)const {return R_4(x-P.x,y-P.y,z-P.z,omega-P.omega);} +++ R_4 operator-=(R_4 P) {x -= P.x;y -= P.y;z -= P.z;omega -= P.omega;return *this;} +++ R_4 operator-()const {return R_4(-x,-y,-z,-omega);} +++ R_4 operator+()const {return *this;} +++ R operator,(R_4 P)const {return x*P.x+y*P.y+z*P.z+omega*P.omega;} // produit scalaire +++ R_4 operator*(R c)const {return R_4(x*c,y*c,z*c,omega*c);} +++ R_4 operator*=(R c) {x *= c; y *= c; z *= c; omega *= c; return *this;} +++ R_4 operator/(R c)const {return R_4(x/c,y/c,z/c,omega/c);} +++ R_4 operator/=(R c) {x /= c; y /= c; z /= c; omega /= c; return *this;} ++ R & operator[](int i) {return (&x)[i];} ++- friend R4 operator*(R c,R4 P) {return P*c;} +++ friend R_4 operator*(R c,R_4 P) {return P*c;} ++ }; ++ ++ //quelques fonctions supplementaires sur ces classes ++ //================================================== ++-inline R Aire2d(const R2 A,const R2 B,const R2 C){return (B-A)^(C-A);} ++-inline R Angle2d(R2 P){ return atan2(P.y,P.x);} +++inline R Aire2d(const R_2 A,const R_2 B,const R_2 C){return (B-A)^(C-A);} +++inline R Angle2d(R_2 P){ return atan2(P.y,P.x);} ++ ++-inline R Norme2_2(const R2 & A){ return (A,A);} ++-inline R Norme2(const R2 & A){ return sqrt((A,A));} ++-inline R NormeInfinie(const R2 & A){return Max(Abs(A.x),Abs(A.y));} ++- ++-inline R Norme2_2(const R3 & A){ return (A,A);} ++-inline R Norme2(const R3 & A){ return sqrt((A,A));} ++-inline R NormeInfinie(const R3 & A){return Max(Abs(A.x),Abs(A.y),Abs(A.z));} ++- ++-inline R Norme2_2(const R4 & A){ return (A,A);} ++-inline R Norme2(const R4 & A){ return sqrt((A,A));} ++-inline R NormeInfinie(const R4 & A){return Max(Abs(A.x),Abs(A.y),Abs(A.z),Abs(A.omega));} ++- ++-inline R2 XY(R3 P) {return R2(P.x, P.y);} //restriction a R2 d'un R3 par perte de z ++-inline R3 Min(R3 P, R3 Q) ++-{return R3(P.xQ.x ? P.x : Q.x, P.y>Q.y ? P.y : Q.y, P.z>Q.z ? P.z : Q.z);} //Pt de xyz Max +++inline R Norme2_2(const R_2 & A){ return (A,A);} +++inline R Norme2(const R_2 & A){ return sqrt((A,A));} +++inline R NormeInfinie(const R_2 & A){return Max(Abs(A.x),Abs(A.y));} +++ +++inline R Norme2_2(const R_3 & A){ return (A,A);} +++inline R Norme2(const R_3 & A){ return sqrt((A,A));} +++inline R NormeInfinie(const R_3 & A){return Max(Abs(A.x),Abs(A.y),Abs(A.z));} +++ +++inline R Norme2_2(const R_4 & A){ return (A,A);} +++inline R Norme2(const R_4 & A){ return sqrt((A,A));} +++inline R NormeInfinie(const R_4 & A){return Max(Abs(A.x),Abs(A.y),Abs(A.z),Abs(A.omega));} +++ +++inline R_2 XY(R_3 P) {return R_2(P.x, P.y);} //restriction a R_2 d'un R_3 par perte de z +++inline R_3 Min(R_3 P, R_3 Q) +++{return R_3(P.xQ.x ? P.x : Q.x, P.y>Q.y ? P.y : Q.y, P.z>Q.z ? P.z : Q.z);} //Pt de xyz Max ++ ++ #endif ++--- a/src/3rdParty/salomesmesh/inc/StdMeshers_MEFISTO_2D.hxx +++++ b/src/3rdParty/salomesmesh/inc/StdMeshers_MEFISTO_2D.hxx ++@@ -64,7 +64,7 @@ ++ typedef std::vector< StdMeshers_FaceSidePtr > TWireVector; ++ ++ bool LoadPoints(TWireVector & wires, ++- R2* uvslf, +++ R_2* uvslf, ++ std::vector< const SMDS_MeshNode*>& mefistoToDS, ++ double scalex, double scaley); ++ ++@@ -73,7 +73,7 @@ ++ double& scalex, ++ double& scaley); ++ ++- void StoreResult (Z nbst, R2* uvst, Z nbt, Z* nust, +++ void StoreResult (Z nbst, R_2* uvst, Z nbt, Z* nust, ++ std::vector< const SMDS_MeshNode*>& mefistoToDS, ++ double scalex, double scaley); ++ ++--- a/src/3rdParty/salomesmesh/inc/aptrte.h +++++ b/src/3rdParty/salomesmesh/inc/aptrte.h ++@@ -60,9 +60,9 @@ ++ ++ MEFISTO2D_EXPORT ++ void aptrte( Z nutysu, R aretmx, ++- Z nblf, Z *nudslf, R2 *uvslf, ++- Z nbpti, R2 *uvpti, ++- Z & nbst, R2 * & uvst, Z & nbt, Z * & nust, +++ Z nblf, Z *nudslf, R_2 *uvslf, +++ Z nbpti, R_2 *uvpti, +++ Z & nbst, R_2 * & uvst, Z & nbt, Z * & nust, ++ Z & ierr ); ++ //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++ // but : appel de la triangulation par un arbre-4 recouvrant ++@@ -123,7 +123,7 @@ ++ #define tesuex TESUEX ++ #define teamqt TEAMQT ++ #define nusotr NUSOTR ++- #define qutr2d QUTR2D +++ #define qutr2d QUTR_2D ++ #define surtd2 SURTD2 ++ #define qualitetrte QUALITETRTE ++ ++@@ -160,7 +160,7 @@ ++ __stdcall ++ #endif ++ #endif ++- qualitetrte( R3 *mnpxyd, +++ qualitetrte( R_3 *mnpxyd, ++ Z & mosoar, Z & mxsoar, Z *mnsoar, ++ Z & moartr, Z & mxartr, Z *mnartr, ++ Z & nbtria, R & quamoy, R & quamin ); } ++@@ -301,7 +301,7 @@ ++ __stdcall ++ #endif ++ #endif ++- teajte( Z & mxsomm, Z & nbsomm, R3 * mnpxyd, R3 * comxmi, +++ teajte( Z & mxsomm, Z & nbsomm, R_3 * mnpxyd, R_3 * comxmi, ++ R & aretmx, Z & mxtree, Z * letree, ++ Z & ierr ); ++ } ++@@ -313,8 +313,8 @@ ++ __stdcall ++ #endif ++ #endif ++- tehote( Z & nutysu, Z & nbarpi, Z & mxsomm, Z & nbsomm, R3 * mnpxyd, ++- R3 * comxmi, R & aretmx, +++ tehote( Z & nutysu, Z & nbarpi, Z & mxsomm, Z & nbsomm, R_3 * mnpxyd, +++ R_3 * comxmi, R & aretmx, ++ Z * letree, Z & mxqueu, Z * mnqueu, ++ Z & ierr ); ++ } ++@@ -328,7 +328,7 @@ ++ __stdcall ++ #endif ++ #endif ++- tetrte( R3 * comxmi, R & aretmx, Z & nbarpi, Z & mxsomm, R3 * mnpxyd, +++ tetrte( R_3 * comxmi, R & aretmx, Z & nbarpi, Z & mxsomm, R_3 * mnpxyd, ++ Z & mxqueu, Z * mnqueu, Z * mntree, ++ Z & mosoar, Z & mxsoar, Z & n1soar, Z * mnsoar, ++ Z & moartr, Z & mxartr, Z & n1artr, Z * mnartr, Z * mnarst, ++@@ -355,7 +355,7 @@ ++ __stdcall ++ #endif ++ #endif ++- tedela( R3 * mnpxyd, Z * mnarst, +++ tedela( R_3 * mnpxyd, Z * mnarst, ++ Z & mosoar, Z & mxsoar, Z & n1soar, Z * mnsoar, Z & na, ++ Z & moartr, Z & mxartr, Z & n1artr, Z * mnartr, Z & n ); ++ } ++@@ -369,7 +369,7 @@ ++ __stdcall ++ #endif ++ #endif ++- terefr( Z & nbarpi, R3 * mnpxyd, +++ terefr( Z & nbarpi, R_3 * mnpxyd, ++ Z & mosoar, Z & mxsoar, Z & n1soar, Z * mnsoar, ++ Z & moartr, Z & mxartr, Z & n1artr, Z * mnartr, Z * mnarst, ++ Z & mxarcf, Z * mnarc1, Z * mnarc2, ++@@ -387,7 +387,7 @@ ++ #endif ++ #endif ++ tesuex( Z & nblf, Z * nulftr, ++- Z & ndtri0, Z & nbsomm, R3 * mnpxyd, Z * mnslig, +++ Z & ndtri0, Z & nbsomm, R_3 * mnpxyd, Z * mnslig, ++ Z & mosoar, Z & mxsoar, Z * mnsoar, ++ Z & moartr, Z & mxartr, Z & n1artr, Z * mnartr, Z * mnarst, ++ Z & nbtria, Z * mntrsu, Z & ierr ); ++@@ -407,7 +407,7 @@ ++ Z & mxarcf, Z * mntrcf, Z * mnstbo, ++ Z * n1arcf, Z * mnarcf, Z * mnarc1, ++ Z & nbarpi, Z & nbsomm, Z & mxsomm, ++- R3 * mnpxyd, Z * mnslig, +++ R_3 * mnpxyd, Z * mnslig, ++ Z & ierr ); ++ } ++ // amelioration de la qualite de la triangulation par ++@@ -434,7 +434,7 @@ ++ __stdcall ++ #endif ++ #endif ++- qutr2d( R3 & p1, R3 & p2, R3 & p3, R & qualite ); +++ qutr2d( R_3 & p1, R_3 & p2, R_3 & p3, R & qualite ); ++ } ++ //calculer la qualite d'un triangle de R2 de sommets p1, p2, p3 ++ ++@@ -445,7 +445,7 @@ ++ __stdcall ++ #endif ++ #endif ++- surtd2( R3 & p1, R3 & p2, R3 & p3 ); +++ surtd2( R_3 & p1, R_3 & p2, R_3 & p3 ); ++ } ++ //calcul de la surface d'un triangle defini par 3 points de r**2 ++ ++--- a/src/3rdParty/salomesmesh/src/MEFISTO2/aptrte.cpp +++++ b/src/3rdParty/salomesmesh/src/MEFISTO2/aptrte.cpp ++@@ -88,9 +88,9 @@ ++ ++ ++ void aptrte( Z nutysu, R aretmx, ++- Z nblf, Z * nudslf, R2 * uvslf, ++- Z nbpti, R2 * uvpti, ++- Z & nbst, R2 * & uvst, +++ Z nblf, Z * nudslf, R_2 * uvslf, +++ Z nbpti, R_2 * uvpti, +++ Z & nbst, R_2 * & uvst, ++ Z & nbt, Z * & nust, ++ Z & ierr ) ++ //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++@@ -142,11 +142,11 @@ ++ //no st1, st2, st3, 0 (non quadrangle) ++ ++ R d, tcpu=0; ++-// R3 direction=R3(0,0,0); //direction pour areteideale() inactive ici! +++// R_3 direction=R_3(0,0,0); //direction pour areteideale() inactive ici! ++ Z nbarfr=nudslf[nblf]; //nombre total d'aretes des lignes fermees ++ Z mxtrou = Max( 1024, nblf ); //nombre maximal de trous dans la surface ++ ++- R3 *mnpxyd=NULL; +++ R_3 *mnpxyd=NULL; ++ Z *mnsoar=NULL, mosoar=7, mxsoar, n1soar; //le hachage des aretes ++ Z *mnartr=NULL, moartr=3, mxartr, n1artr; //le no des 3 aretes des triangles ++ Z *mntree=NULL, motree=9, mxtree; //L'arbre 4 de TE et nombre d'entiers par TE ++@@ -161,7 +161,7 @@ ++ Z *mnarst=NULL; ++ Z *mnlftr=NULL; ++ ++- R3 comxmi[2]; //coordonnees UV Min et Maximales +++ R_3 comxmi[2]; //coordonnees UV Min et Maximales ++ R aremin, aremax; //longueur minimale et maximale des aretes ++ R airemx; //aire maximale souhaitee d'un triangle ++ R quamoy, quamin; ++@@ -191,7 +191,7 @@ ++ NEWDEPART: ++ //mnpxyd( 3, mxsomm ) les coordonnees UV des sommets et la taille d'arete aux sommets ++ if( mnpxyd!=NULL ) delete [] mnpxyd; ++- mnpxyd = new R3[mxsomm]; +++ mnpxyd = new R_3[mxsomm]; ++ if( mnpxyd==NULL ) goto ERREUR; ++ ++ // le tableau mnsoar des aretes des triangles ++@@ -655,7 +655,7 @@ ++ // generation du tableau uvst de la surface triangulee ++ // --------------------------------------------------- ++ if( uvst != NULL ) delete [] uvst; ++- uvst = new R2[nbst]; +++ uvst = new R_2[nbst]; ++ if( uvst == NULL ) goto ERREUR; ++ ++ nbst=-1; ++@@ -761,7 +761,7 @@ ++ __stdcall ++ #endif ++ #endif ++- qualitetrte( R3 *mnpxyd, +++ qualitetrte( R_3 *mnpxyd, ++ Z & mosoar, Z & mxsoar, Z *mnsoar, ++ Z & moartr, Z & mxartr, Z *mnartr, ++ Z & nbtria, R & quamoy, R & quamin ) ++--- a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_MEFISTO_2D.cpp +++++ b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_MEFISTO_2D.cpp ++@@ -234,12 +234,12 @@ ++ ++ Z nblf; //nombre de lignes fermees (enveloppe en tete) ++ Z *nudslf = NULL; //numero du dernier sommet de chaque ligne fermee ++- R2 *uvslf = NULL; +++ R_2 *uvslf = NULL; ++ Z nbpti = 0; //nombre points internes futurs sommets de la triangulation ++- R2 *uvpti = NULL; +++ R_2 *uvpti = NULL; ++ ++ Z nbst; ++- R2 *uvst = NULL; +++ R_2 *uvst = NULL; ++ Z nbt; ++ Z *nust = NULL; ++ Z ierr = 0; ++@@ -264,7 +264,7 @@ ++ nudslf[iw++] = nbpnt; ++ } ++ ++- uvslf = new R2[nudslf[nblf]]; +++ uvslf = new R_2[nudslf[nblf]]; ++ ++ double scalex, scaley; ++ ComputeScaleOnFace(aMesh, F, scalex, scaley); ++@@ -390,7 +390,7 @@ ++ //purpose : prevent failure due to overlapped adjacent links ++ //======================================================================= ++ ++-static bool fixOverlappedLinkUV( R2& uv0, const R2& uv1, const R2& uv2 ) +++static bool fixOverlappedLinkUV( R_2& uv0, const R_2& uv1, const R_2& uv2 ) ++ { ++ gp_XY v1( uv0.x - uv1.x, uv0.y - uv1.y ); ++ gp_XY v2( uv2.x - uv1.x, uv2.y - uv1.y ); ++@@ -441,7 +441,7 @@ ++ //purpose : ++ //======================================================================= ++ ++-static bool fixCommonVertexUV (R2 & theUV, +++static bool fixCommonVertexUV (R_2 & theUV, ++ const TopoDS_Vertex& theV, ++ const TopoDS_Face& theF, ++ const TopTools_IndexedDataMapOfShapeListOfShape & theVWMap, ++@@ -540,7 +540,7 @@ ++ nextUV = uv; ++ } ++ } ++- R2 uv0, uv1, uv2; +++ R_2 uv0, uv1, uv2; ++ uv0.x = thisUV.X(); uv0.y = thisUV.Y(); ++ uv1.x = nextUV.X(); uv1.y = nextUV.Y(); ++ uv2.x = thisUV.X(); uv2.y = thisUV.Y(); ++@@ -574,7 +574,7 @@ ++ //============================================================================= ++ ++ bool StdMeshers_MEFISTO_2D::LoadPoints(TWireVector & wires, ++- R2 * uvslf, +++ R_2 * uvslf, ++ vector& mefistoToDS, ++ double scalex, ++ double scaley) ++@@ -782,7 +782,7 @@ ++ */ ++ //============================================================================= ++ ++-void StdMeshers_MEFISTO_2D::StoreResult(Z nbst, R2 * uvst, Z nbt, Z * nust, +++void StdMeshers_MEFISTO_2D::StoreResult(Z nbst, R_2 * uvst, Z nbt, Z * nust, ++ vector< const SMDS_MeshNode*>&mefistoToDS, ++ double scalex, double scaley) ++ { diff --cc debian/patches/1070-disable_memory_check.patch index 00000000,00000000..c862c2d5 new file mode 100644 --- /dev/null +++ b/debian/patches/1070-disable_memory_check.patch @@@ -1,0 -1,0 +1,85 @@@ ++Description: Disable memory-check in SMDS because sysinfo.h is not working ++ on BSD-systems and causes FTBFS. It is better to disable it only on ++ BSD-platforms. ++ Or use http://code.google.com/p/sysinfo-bsd/source/browse/sysinfo.c ++ for them. ++Author: Anton Gladky ++Forwarded: https://github.com/FreeCAD/FreeCAD/pull/9853 ++Bug-Debian: https://bugs.debian.org/623560 ++Applied-Upstream: https://github.com/FreeCAD/FreeCAD/commit/16d3109987d98fbf09a59888f389e64707ba9026 ++Last-Update: 2023-12-09 ++ ++--- a/src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh.cpp +++++ b/src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh.cpp ++@@ -61,13 +61,6 @@ ++ #include ++ using namespace std; ++ ++-#ifndef WIN32 ++-#if !(defined(__MACH__) && defined(__APPLE__)) ++-#include ++-#endif ++-#include ++-#endif ++- ++ // number of added entities to check memory after ++ #define CHECKMEMORY_INTERVAL 100000 ++ ++@@ -85,56 +78,7 @@ ++ ++ int SMDS_Mesh::CheckMemory(const bool doNotRaise) ++ { ++-#if 0 ++-#if (defined(__MACH__) && defined(__APPLE__)) ++- return 1000; ++-#else ++-#ifndef WIN32 ++- struct sysinfo si; ++- int err = sysinfo( &si ); ++- if ( err ) ++- return -1; ++- ++- const unsigned long Mbyte = 1024 * 1024; ++- ++- static int limit = -1; ++- if ( limit < 0 ) { ++- int status = system("SMDS_MemoryLimit"); // it returns lower limit of free RAM ++- if (status >= 0 ) { ++- limit = WEXITSTATUS(status); ++- } ++- else { ++- double factor = ( si.totalswap == 0 ) ? 0.1 : 0.2; ++- limit = int(( factor * si.totalram * si.mem_unit ) / Mbyte ); ++- } ++- if ( limit < 20 ) ++- limit = 20; ++- else ++- limit = int ( limit * 1.5 ); ++- MESSAGE ( "SMDS_Mesh::CheckMemory() memory limit = " << limit << " MB" ); ++- } ++- ++- // compute separately to avoid overflow ++- int freeMb = ++- ( si.freeram * si.mem_unit ) / Mbyte + ++- ( si.freeswap * si.mem_unit ) / Mbyte; ++- //cout << "freeMb = " << freeMb << " limit = " << limit << endl; ++- ++- if ( freeMb > limit ) ++- return freeMb - limit; ++- ++- if ( doNotRaise ) ++- return 0; ++- ++- MESSAGE ("SMDS_Mesh::CheckMemory() throws as free memory too low: " << freeMb <<" MB" ); ++- throw std::bad_alloc(); ++-#else ++- return -1; ++-#endif ++-#endif ++-#else ++- return 1000; ++-#endif +++ return 1000; ++ } ++ ++ /////////////////////////////////////////////////////////////////////////////// diff --cc debian/patches/1100-run_single-instance.patch index 00000000,00000000..95fc7475 new file mode 100644 --- /dev/null +++ b/debian/patches/1100-run_single-instance.patch @@@ -1,0 -1,0 +1,23 @@@ ++Description: Change XDG desktop entry to only run single instance of FreeCAD. ++ This ensure invoking it to open different files only start the ++ program once, and load new files into the already running instance. ++ ++ Related to https://bugs.debian.org/1029846 and ++ https://github.com/FreeCAD/FreeCAD/commit/c7a21ecbeecefe7c2dfc9e950b3d6bb42351d476 . ++ ++ Partly applied upstream. Arguments applied, program name change is not. ++Author: Håvard Flaget Aasen ++Forwarded: https://github.com/FreeCAD/FreeCAD/pull/9855 ++Last-Update: 2021-12-26 ++--- ++--- a/src/XDGData/org.freecadweb.FreeCAD.desktop +++++ b/src/XDGData/org.freecadweb.FreeCAD.desktop ++@@ -14,7 +14,7 @@ ++ GenericName[ko]=CAD 응용프로그램 ++ GenericName[pl]=Aplikacja CAD ++ GenericName[ru]=Система автоматизированного проектирования ++-Exec=FreeCAD %F +++Exec=/usr/bin/freecad - --single-instance %F ++ Terminal=false ++ Type=Application ++ Icon=org.freecadweb.FreeCAD diff --cc debian/patches/2000-do_not_install_binary_examples.patch index 00000000,00000000..922aa960 new file mode 100644 --- /dev/null +++ b/debian/patches/2000-do_not_install_binary_examples.patch @@@ -1,0 -1,0 +1,15 @@@ ++Description: Do not include binary examples excluded via d/copyright ++Author: Anton Gladky ++Last-Update: 2018-06-10 ++Forwarded: not-needed ++ ++--- a/CMakeLists.txt +++++ b/CMakeLists.txt ++@@ -94,7 +94,6 @@ ++ SetGlobalCompilerAndLinkerSettings() ++ ++ add_subdirectory(src) ++-add_subdirectory(data) ++ ++ BuildAndInstallDesignerPlugin() ++ diff --cc debian/patches/2010-exclude_ply.patch index 00000000,00000000..c335ccf7 new file mode 100644 --- /dev/null +++ b/debian/patches/2010-exclude_ply.patch @@@ -1,0 -1,0 +1,20 @@@ ++Description: exclude ply from build-sources, use packaged version ++Author: Anton Gladky , Sebastian Hoogen ++Forwarded: not-needed ++Last-Update: 2013-09-25 ++ ++--- a/src/Mod/OpenSCAD/CMakeLists.txt +++++ b/src/Mod/OpenSCAD/CMakeLists.txt ++@@ -88,12 +88,6 @@ ++ ++ INSTALL( ++ FILES ++- ${ply_SRCS} ++- DESTINATION ++- Mod/OpenSCAD/ply ++-) ++-INSTALL( ++- FILES ++ ${OpenSCAD_SRCS} ++ ${OpenSCAD_QRC_SRCS} ++ DESTINATION diff --cc debian/patches/2020-fix-cmake-extra-license.patch index 00000000,00000000..55708381 new file mode 100644 --- /dev/null +++ b/debian/patches/2020-fix-cmake-extra-license.patch @@@ -1,0 -1,0 +1,16 @@@ ++Description: Don't include extra license file in package ++Author: Kurt Kremitzki ++Last-Update: 2018-06-13 ++Forwarded: not-needed ++ ++--- a/src/Mod/Idf/CMakeLists.txt +++++ b/src/Mod/Idf/CMakeLists.txt ++@@ -6,7 +6,7 @@ ++ SOURCE_GROUP("" FILES ${Idf_SRCS}) ++ ++ SET(IdfLibs_SRCS ++- Idflibs/License.txt +++ #Idflibs/License.txt ++ Idflibs/0603_SMD.stp ++ Idflibs/0805_SMD.stp ++ Idflibs/1206_SMD.stp diff --cc debian/patches/2030-fix-1017598.patch index 00000000,00000000..d5bbd82f new file mode 100644 --- /dev/null +++ b/debian/patches/2030-fix-1017598.patch @@@ -1,0 -1,0 +1,34 @@@ ++Description: Disable failing FEM test case TestSolverCalculix ++ The upstream bug tracker suggests that this is a problem with the test, as it seems ++ floats for the input are very similiar, only differing by the LSB. ++ . ++ This patch disables the test. ++Author: Tobias Frost ++Bug: https://github.com/FreeCAD/FreeCAD/issues/7188 ++Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1017598 ++Forwarded: not-needed, Debian specific. ++Last-Update: 2022-08-18 ++--- ++This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ++--- a/src/Mod/Fem/femtest/app/test_solver_calculix.py +++++ b/src/Mod/Fem/femtest/app/test_solver_calculix.py ++@@ -270,12 +270,13 @@ ++ self.input_file_writing_test(get_namefromdef("test_")) ++ ++ # ******************************************************************************************** ++- def test_constraint_transform_torque( ++- self ++- ): ++- from femexamples.constraint_transform_torque import setup ++- setup(self.document, "calculix") ++- self.input_file_writing_test(get_namefromdef("test_")) +++ # disabled, #1017598 +++ #def test_constraint_transform_torque( +++ # self +++ #): +++ # from femexamples.constraint_transform_torque import setup +++ # setup(self.document, "calculix") +++ # self.input_file_writing_test(get_namefromdef("test_")) ++ ++ # ******************************************************************************************** ++ def test_frequency_beamsimple( diff --cc debian/patches/2040-ftbfs-macappbundle.patch index 00000000,00000000..fe034a4a new file mode 100644 --- /dev/null +++ b/debian/patches/2040-ftbfs-macappbundle.patch @@@ -1,0 -1,0 +1,16 @@@ ++Description: Do not cmake add_subdirectory on removed directory. ++ Avoids a FTBFS. ++Author: Tobias Frost ++Forwarded: not-needed, Debian specific. ++Last-Update: 2023-12-09 ++--- ++This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ++--- a/src/CMakeLists.txt +++++ b/src/CMakeLists.txt ++@@ -19,5 +19,5 @@ ++ endif(BUILD_TEMPLATE) ++ ++ # "if" clause moved into local CMakeLists.txt file to support Conda and Homebrew builds ++-add_subdirectory(MacAppBundle) +++#add_subdirectory(MacAppBundle) ++ diff --cc debian/patches/README index 00000000,00000000..80c15843 new file mode 100644 --- /dev/null +++ b/debian/patches/README @@@ -1,0 -1,0 +1,3 @@@ ++0xxx: Grabbed from upstream development. ++1xxx: Possibly relevant for upstream adoption. ++2xxx: Only relevant for official Debian release. diff --cc debian/patches/series index 00000000,00000000..583b6520 new file mode 100644 --- /dev/null +++ b/debian/patches/series @@@ -1,0 -1,0 +1,12 @@@ ++#0020-python3.8-syntax.patch -- re-evalute, only partly applied upstream. ++0110-desktop-extra-categories.patch ++1020-fix_gcc8_ftbfs.patch ++1030-fix_armel_FTBFS.patch ++1070-disable_memory_check.patch ++1100-run_single-instance.patch ++2000-do_not_install_binary_examples.patch ++2010-exclude_ply.patch ++2020-fix-cmake-extra-license.patch ++2030-fix-1017598.patch ++2040-ftbfs-macappbundle.patch ++0030-octt78.patch diff --cc debian/rules index 00000000,00000000..55b11485 new file mode 100755 --- /dev/null +++ b/debian/rules @@@ -1,0 -1,0 +1,78 @@@ ++#!/usr/bin/make -f ++%: ++ dh $@ --buildsystem=cmake --with python3 ++ ++DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) ++DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) ++export DEB_BUILD_MAINT_OPTIONS = hardening=+all,+bindnow ++ ++CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS) -Wall -fpermissive ++CFLAGS:=$(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS) -flto ++CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS) -I/usr/include/python$(shell py3versions -d -v) -flto ++LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS) -Wl,--as-needed -Wl,-flto ++ ++# architectures with support for QTWebEngine ++with_qt_webengine = amd64 arm64 armhf i386 mips64el ++ifneq (,$(filter $(DEB_TARGET_ARCH),$(with_qt_webengine))) ++ build_web := On ++else ++ build_web := Off ++endif ++ ++py3ver = $(shell py3versions -d -v | tr -d .) ++ifeq (1,$(shell expr ${py3ver} \< 38 )) ++ py3ver := $(py3ver)m ++endif ++ ++extra_flags += \ ++-DBUILD_QT5=ON \ ++-DBUILD_FLAT_MESH=ON \ ++-DFREECAD_BUILD_DEBIAN=ON \ ++-DFREECAD_USE_PYBIND11=ON \ ++-DCMAKE_CXX_FLAGS="$(CXXFLAGS)" \ ++-DCMAKE_C_FLAGS="$(CFLAGS)" \ ++-DCMAKE_SHARED_LINKER_FLAGS="$(LDFLAGS)" \ ++-DLIB_SUFFIX="" \ ++-DCMAKE_BUILD_TYPE=RelWithDebInfo \ ++-DCMAKE_INSTALL_DATADIR="/usr/share/freecad" \ ++-DCMAKE_INSTALL_DOCDIR="/usr/share/doc/freecad-doc" \ ++-DCMAKE_INSTALL_PREFIX="/usr/share/freecad" \ ++-DPYTHON_CONFIG_SUFFIX=".cpython-$(py3ver)-$(DEB_HOST_MULTIARCH)" \ ++-DBUILD_WEB="$(build_web)" ++ ++py3_flags = \ ++-DPYTHON_EXECUTABLE="/usr/bin/python3" \ ++-DCMAKE_INSTALL_LIBDIR="/usr/lib/freecad-python3/lib" ++ ++override_dh_auto_configure: ++ dh_auto_configure --builddirectory=debian/build-py3 -- \ ++ $(extra_flags) \ ++ $(py3_flags) ++ ++override_dh_auto_build: ++ dh_auto_build --builddirectory=debian/build-py3 ++ ++override_dh_auto_test: ++ dh_auto_test --builddirectory=debian/build-py3 ++ ++override_dh_auto_install: ++ dh_auto_install --builddirectory=debian/build-py3 ++ mv debian/tmp/usr/share/freecad/bin/FreeCADCmd \ ++ debian/tmp/usr/share/freecad/bin/FreeCADCmd-Python3 ++ mv debian/tmp/usr/share/freecad/bin/FreeCAD \ ++ debian/tmp/usr/share/freecad/bin/FreeCAD-Python3 ++ ++override_dh_compress: ++ dh_compress -X.qch -X.qhc ++ ++override_dh_installexamples: ++ ++override_dh_strip_nondeterminism: ++ dh_strip_nondeterminism -X data/corrupted_metadata.zip ++ ++override_dh_missing: ++ dh_missing --list-missing ++ ++override_dh_auto_clean: ++ dh_auto_clean ++ rm -rf debian/build-py3 $$(find . -name __pycache__ -type d) diff --cc debian/salsa-ci.yml index 00000000,00000000..33c3a640 new file mode 100644 --- /dev/null +++ b/debian/salsa-ci.yml @@@ -1,0 -1,0 +1,4 @@@ ++--- ++include: ++ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml ++ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml diff --cc debian/scripts/get_git_orig_src.sh index 00000000,00000000..3a81dcfa new file mode 100755 --- /dev/null +++ b/debian/scripts/get_git_orig_src.sh @@@ -1,0 -1,0 +1,53 @@@ ++#!/bin/bash ++ ++# The script creates a tar.xz tarball from git-repository of freecad-project ++# ./get_orig_src.sh commitID - creates a tarball of specified commit ++# ./get_orig_src.sh - creates a tarball of the latest version ++# Packages, that needs to be installed to use the script: ++# atool, git-core ++ ++set -e ++ ++git clone git://free-cad.git.sourceforge.net/gitroot/free-cad/free-cad git_temp_packaging ++ ++cd git_temp_packaging ++ ++if [ $1 ] ++then ++ echo 'Checking out the revision ' $1 ++ git checkout -b newvers $1 ++else ++ echo 'Using the latest revision' ++fi ++ ++GIT_CMT_COUNT=$(git rev-list HEAD | wc -l) ++ ++DEB_VER=0.13.$GIT_CMT_COUNT-dfsg ++FOLDER_NAME=freecad-$DEB_VER ++TARBALL_NAME=freecad_$DEB_VER.orig.tar.xz ++ ++echo $DEB_VER ++echo $FOLDER_NAME ++echo $TARBALL_NAME ++ ++python src/Tools/SubWCRev.py ++ ++cd .. ++ ++rm -fr $FOLDER_NAME ++ ++mv git_temp_packaging $FOLDER_NAME ++rm -rf $FOLDER_NAME/.git ++rm -rf $FOLDER_NAME/src/3rdParty/CxImage ++rm -rf $FOLDER_NAME/src/3rdParty/Pivy ++rm -rf $FOLDER_NAME/src/3rdParty/Pivy-0.5 ++rm -rf $FOLDER_NAME/src/3rdParty/ANN/doc/ANNmanual.pdf ++rm -rf $FOLDER_NAME/src/Mod/Ship/simRun/theory/main.pdf ++rm -rf $FOLDER_NAME/src/Mod/Mod/Robot/Lib/Kuka/*.pdf ++rm -rf $FOLDER_NAME/src/Doc/TiddlySaver.jar ++rm -rf $FOLDER_NAME/data/examples/*.FCStd ++ ++ ++tar Jcvf $TARBALL_NAME $FOLDER_NAME ++ ++rm -fr $FOLDER_NAME diff --cc debian/source/format index 00000000,00000000..163aaf8d new file mode 100644 --- /dev/null +++ b/debian/source/format @@@ -1,0 -1,0 +1,1 @@@ ++3.0 (quilt) diff --cc debian/source/lintian-overrides index 00000000,00000000..756af776 new file mode 100644 --- /dev/null +++ b/debian/source/lintian-overrides @@@ -1,0 -1,0 +1,5 @@@ ++# The following file is an icon from the Tango Desktop Project, licensed under ++# public domain ++# https://commons.wikimedia.org/wiki/File:Edit-cut.svg ++freecad source: license-problem-cc-by-nc-sa src/Gui/Icons/edit-cut.svg ++freecad source: license-problem-cc-by-nc-sa src/Mod/TechDraw/Gui/Resources/icons/MRTE/edit-cut.svg diff --cc debian/tests/control index 00000000,00000000..2afd894f new file mode 100644 --- /dev/null +++ b/debian/tests/control @@@ -1,0 -1,0 +1,3 @@@ ++Tests: freecadtest ++Depends: freecad, xvfb, xauth ++Restrictions: allow-stderr diff --cc debian/tests/freecadtest index 00000000,00000000..33f3b373 new file mode 100755 --- /dev/null +++ b/debian/tests/freecadtest @@@ -1,0 -1,0 +1,31 @@@ ++#!/bin/dash ++# autopkgtest check ++# (C) 2014 Anton Gladky ++ ++set -e ++ ++export FREECAD_USER_HOME="$AUTOPKGTEST_TMP" ++ ++WORKDIR=$(mktemp -d) ++trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM ++cd $WORKDIR ++ ++ ++# list of tests can be extraced with the FreeCAD python command: (Reference: https://wiki.freecad.org/Testing/de#Get_a_list_of_all_top-level_test_modules) ++# FreeCAD.__unit_test__ ++# List of all tests: ++tests_ok="TestSpreadsheet BaseTests UnitTests Document Metadata UnicodeTests TestPythonSyntax TestPathApp TestPartDesignApp TestDraft TestTechDrawApp MeshTestsApp TestSurfaceApp TestSketcherApp TestFemApp TestAddonManagerApp TestPartApp TestArch" ++ ++tests_flaky="" ++if dpkg-architecture -e i386 || dpkg-architecture -e s390x ; then ++ tests_flaky="TestPathApp" ++fi ++ ++for t in $tests_ok ++do ++ for x in $tests_flaky ; do if [ "$x" = "$t" ] ; then t=""; break; fi ; done ++ if [ -z "$t" ] ; then echo "### SKIPING TEST $x ###" ; continue ; fi ++ echo "### Running CLI Test $t ### " ++ freecadcmd -c -t $t ++done ++ diff --cc debian/upstream/metadata index 00000000,00000000..b05bd57b new file mode 100644 --- /dev/null +++ b/debian/upstream/metadata @@@ -1,0 -1,0 +1,8 @@@ ++--- ++Bug-Database: https://github.com/FreeCAD/FreeCAD/issues ++Bug-Submit: https://github.com/FreeCAD/FreeCAD/issues/new ++Repository: https://github.com/FreeCAD/FreeCAD.git ++Repository-Browse: https://github.com/FreeCAD/FreeCAD ++Registry: ++ - Name: SciCrunch ++ Entry: SCR_022535 diff --cc debian/watch index 00000000,00000000..a26af428 new file mode 100644 --- /dev/null +++ b/debian/watch @@@ -1,0 -1,0 +1,3 @@@ ++version=4 ++opts=repacksuffix=+dfsg1,uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha|b|a)\d*)$/$1~$2/,dversionmangle=s/\+(debian|dfsg|ds|deb)\d*$// \ ++https://github.com/FreeCAD/FreeCAD/tags .*/(\d.*).*(?