Please find below an update for cad/solvespace to version 3.2.

Changelog:
https://github.com/solvespace/solvespace/blob/master/CHANGELOG.md#changelog

Notes about this update:
1. Test results (turns out they are not broken hehe):
   Success! 255 test cases (0 skipped), 884 checks, 3.163s
2. Major bump due to dynamic export removal

Index: Makefile
===================================================================
RCS file: /cvs/ports/cad/solvespace/Makefile,v
retrieving revision 1.6
diff -u -p -r1.6 Makefile
--- Makefile    13 Feb 2026 12:02:14 -0000      1.6
+++ Makefile    22 May 2026 08:49:33 -0000
@@ -1,10 +1,9 @@
 COMMENT =      parametric 2D/3D CAD program
-V =            3.1
+V =            3.2
 DISTNAME =     solvespace-${V}
 CATEGORIES =   cad
-REVISION =     1
 
-SHARED_LIBS += slvs    0.0
+SHARED_LIBS += slvs    1.0
 
 HOMEPAGE =     https://solvespace.com/
 
@@ -29,6 +28,8 @@ BUILD_DEPENDS = devel/gettext,-runtime \
                math/eigen3
 
 LIB_DEPENDS =  devel/json-c \
+               graphics/cairo \
+               graphics/png \
                x11/gtk3mm
 
 RUN_DEPENDS =  devel/desktop-file-utils \
@@ -43,23 +44,11 @@ CONFIGURE_ARGS+= -DENABLE_GUI=ON \
                 -DFORCE_VENDORED_Eigen3=OFF \
                 -DENABLE_LTO=OFF \
                 -DENABLE_COVERAGE=OFF \
-                -DENABLE_TESTS=OFF \
+                -DENABLE_TESTS=ON \
                 -DENABLE_OPENMP=OFF \
-                -DENABLE_SANITIZERS=OFF \
-                -DMI_SECURE=ON \
-                -DMI_LIBATOMIC=OFF \
-                -DMI_BUILD_TESTS=OFF \
-                -DMI_OVERRIDE=OFF \
-                -DMI_BUILD_SHARED=OFF \
-                -DMI_BUILD_OBJECT=OFF
-
-MODCMAKE_POLICY_VERSION_OVERRIDE = Yes
-
-# testsuite broken as is
-NO_TEST =      YES
-
-# add FindCairo.cmake
-post-extract:
-       cp ${FILESDIR}/FindCairo.cmake ${WRKSRC}/cmake/
+                -DENABLE_SANITIZERS=OFF
+
+do-test:
+       cd ${WRKSRC} && ${WRKBUILD}/bin/solvespace-testsuite
 
 .include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/cad/solvespace/distinfo,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 distinfo
--- distinfo    3 Jul 2023 13:43:48 -0000       1.1.1.1
+++ distinfo    22 May 2026 08:49:33 -0000
@@ -1,2 +1,2 @@
-SHA256 (solvespace-3.1.tar.xz) = NKJzzmQtDHe48QFGNzDtTq3n2Qz6v+SG8+fL9JT/Eyo=
-SIZE (solvespace-3.1.tar.xz) = 46083984
+SHA256 (solvespace-3.2.tar.xz) = 2T6BZme2xvBfq8Pzy214P60qOAXEbSTijy69kbw23nY=
+SIZE (solvespace-3.2.tar.xz) = 53579228
Index: patches/patch-CMakeLists_txt
===================================================================
RCS file: /cvs/ports/cad/solvespace/patches/patch-CMakeLists_txt,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-CMakeLists_txt
--- patches/patch-CMakeLists_txt        3 Jul 2023 13:43:48 -0000       1.1.1.1
+++ patches/patch-CMakeLists_txt        22 May 2026 08:49:33 -0000
@@ -1,32 +1,11 @@
 Index: CMakeLists.txt
 --- CMakeLists.txt.orig
 +++ CMakeLists.txt
-@@ -34,9 +34,9 @@ endif()
- # NOTE TO PACKAGERS: The embedded git commit hash is critical for rapid bug 
triage when the builds
- # can come from a variety of sources. If you are mirroring the sources or 
otherwise build when
- # the .git directory is not present, please comment the following line:
--include(GetGitCommitHash)
-+#include(GetGitCommitHash)
- # and instead uncomment the following, adding the complete git hash of the 
checkout you are using:
--# set(GIT_COMMIT_HASH 0000000000000000000000000000000000000000)
-+set(GIT_COMMIT_HASH 70bde63cb32a7f049fa56cbdf924e2695fcb2916)
-
- string(SUBSTRING "${GIT_COMMIT_HASH}" 0 8 solvespace_GIT_HASH)
- project(solvespace
-@@ -269,7 +269,7 @@ else()
-     find_package(ZLIB REQUIRED)
-     find_package(PNG REQUIRED)
-     find_package(Freetype REQUIRED)
--    pkg_check_modules(CAIRO REQUIRED cairo)
-+    find_package(Cairo REQUIRED)
- endif()
-
- # GUI dependencies
-@@ -305,7 +305,6 @@ if(ENABLE_GUI)
-         find_library(APPKIT_LIBRARY AppKit REQUIRED)
+@@ -381,7 +381,6 @@ if(ENABLE_GUI)
+         # Everything is built in
      else()
          find_package(OpenGL REQUIRED)
 -        find_package(SpaceWare)
          pkg_check_modules(FONTCONFIG REQUIRED fontconfig)
-         pkg_check_modules(JSONC REQUIRED json-c)
-         pkg_check_modules(GTKMM REQUIRED gtkmm-3.0>=3.18 pangomm-1.4 x11)
+         if (NOT USE_QT_GUI)
+             pkg_check_modules(JSONC REQUIRED json-c)
Index: patches/patch-src_platform_guigtk_cpp
===================================================================
RCS file: /cvs/ports/cad/solvespace/patches/patch-src_platform_guigtk_cpp,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-src_platform_guigtk_cpp
--- patches/patch-src_platform_guigtk_cpp       3 Jul 2023 13:43:48 -0000       
1.1.1.1
+++ patches/patch-src_platform_guigtk_cpp       22 May 2026 08:49:33 -0000
@@ -3,7 +3,7 @@ don't exit the program for Glib charset
 Index: src/platform/guigtk.cpp
 --- src/platform/guigtk.cpp.orig
 +++ src/platform/guigtk.cpp
-@@ -1505,10 +1505,7 @@ std::vector<std::string> InitGui(int argc, char **argv
+@@ -1626,10 +1626,7 @@ std::vector<std::string> InitGui(int argc, char **argv
      // character set; otherwise it thinks it is always ANSI_X3.4-1968.
      // We set it back to C after all so that printf() and friends behave in a 
consistent way.
      setlocale(LC_ALL, "");
@@ -13,5 +13,5 @@ Index: src/platform/guigtk.cpp
 -    }
 +    Glib::get_charset();
      setlocale(LC_ALL, "C");
-
+ 
      // Let GTK parse arguments and update argc/argv. (They're passed by 
reference.)
Index: patches/patch-src_resource_cpp
===================================================================
RCS file: patches/patch-src_resource_cpp
diff -N patches/patch-src_resource_cpp
--- patches/patch-src_resource_cpp      3 Jul 2023 13:43:48 -0000       1.1.1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,34 +0,0 @@
-avoid console spamming
-
-Index: src/resource.cpp
---- src/resource.cpp.orig
-+++ src/resource.cpp
-@@ -1456,12 +1456,10 @@ Translation Translation::From(const std::string &poDat
- const std::string &Translation::Translate(const TranslationKey &key) {
-     auto it = messages.find(key);
-     if(it == messages.end()) {
--        dbp("Missing (absent) translation for %s'%s'", key.context.c_str(), 
key.ident.c_str());
-         messages[key].emplace_back(key.ident);
-         it = messages.find(key);
-     }
-     if(it->second[0].empty()) {
--        dbp("Missing (empty) translation for %s'%s'", key.context.c_str(), 
key.ident.c_str());
-         it->second[0] = key.ident;
-     }
-     if(it->second.size() != 1) {
-@@ -1476,15 +1474,12 @@ const std::string &Translation::TranslatePlural(const
-
-     auto it = messages.find(key);
-     if(it == messages.end()) {
--        dbp("Missing (absent) translation for %s'%s'", key.context.c_str(), 
key.ident.c_str());
-         for(unsigned i = 0; i < pluralCount; i++) {
-             messages[key].emplace_back(key.ident);
-         }
-         it = messages.find(key);
-     }
-     if(it->second[pluralForm].empty()) {
--        dbp("Missing (empty) translation for %s'%s'[%d]",
--            key.context.c_str(), key.ident.c_str(), pluralForm);
-         it->second[pluralForm] = key.ident;
-     }
-     return it->second[pluralForm];
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/cad/solvespace/pkg/PLIST,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 PLIST
--- pkg/PLIST   3 Jul 2023 13:43:48 -0000       1.1.1.1
+++ pkg/PLIST   22 May 2026 08:49:33 -0000
@@ -70,6 +70,8 @@ share/solvespace/icons/graphics-window/t
 share/solvespace/icons/graphics-window/trim.png
 share/solvespace/icons/graphics-window/vert.png
 share/solvespace/icons/text-window/
+share/solvespace/icons/text-window/constraint-dimo.png
+share/solvespace/icons/text-window/constraint-wo.png
 share/solvespace/icons/text-window/constraint.png
 share/solvespace/icons/text-window/construction.png
 share/solvespace/icons/text-window/edges.png
@@ -85,10 +87,12 @@ share/solvespace/icons/text-window/shade
 share/solvespace/icons/text-window/workplane.png
 share/solvespace/locales/
 share/solvespace/locales.txt
+share/solvespace/locales/cs_CZ.po
 share/solvespace/locales/de_DE.po
 share/solvespace/locales/en_US.po
 share/solvespace/locales/es_AR.po
 share/solvespace/locales/fr_FR.po
+share/solvespace/locales/ja_JP.po
 share/solvespace/locales/ru_RU.po
 share/solvespace/locales/tr_TR.po
 share/solvespace/locales/uk_UA.po
@@ -115,3 +119,4 @@ share/solvespace/threejs/three-r111.min.
 @tag update-desktop-database
 @tag gtk-update-icon-cache %D/share/icons/hicolor
 @tag update-mime-database
+share/thumbnailers/solvespace.thumbnailer

Reply via email to