cad/solvespace: update to 3.2

Small tweak and ok tb@
This commit is contained in:
jtt
2026-06-06 14:18:41 +00:00
parent c645b79355
commit a73b17a678
7 changed files with 46 additions and 181 deletions
+33 -43
View File
@@ -1,22 +1,16 @@
COMMENT = parametric 2D/3D CAD program COMMENT = parametric 2D/3D CAD program
V = 3.1
DISTNAME = solvespace-${V}
CATEGORIES = cad
REVISION = 1
SHARED_LIBS += slvs 0.0 V = 3.2
DISTNAME = solvespace-${V}
HOMEPAGE = https://solvespace.com/ SHARED_LIBS += slvs 1.0
MAINTAINER = Johannes Thyssen Tishman <jtt@openbsd.org> CATEGORIES = cad
HOMEPAGE = https://solvespace.com/
SITES = https://github.com/solvespace/solvespace/releases/download/v${V}/ MAINTAINER = Johannes Thyssen Tishman <jtt@openbsd.org>
EXTRACT_SUFX = .tar.xz
# GPLv3+ # GPLv3+
PERMIT_PACKAGE = Yes PERMIT_PACKAGE = Yes
COMPILER = base-clang
WANTLIB += ${COMPILER_LIBCXX} GL GLU X11 atk-1.0 atkmm-1.6 c cairo WANTLIB += ${COMPILER_LIBCXX} GL GLU X11 atk-1.0 atkmm-1.6 c cairo
WANTLIB += cairo-gobject cairomm-1.0 execinfo fontconfig freetype WANTLIB += cairo-gobject cairomm-1.0 execinfo fontconfig freetype
@@ -25,41 +19,37 @@ WANTLIB += glibmm-2.4 gobject-2.0 gtk-3 gtkmm-3.0 harfbuzz intl
WANTLIB += json-c m pango-1.0 pangocairo-1.0 pangomm-1.4 png sigc-2.0 WANTLIB += json-c m pango-1.0 pangocairo-1.0 pangomm-1.4 png sigc-2.0
WANTLIB += z WANTLIB += z
BUILD_DEPENDS = devel/gettext,-runtime \ SITES = https://github.com/solvespace/solvespace/releases/download/v${V}/
math/eigen3 EXTRACT_SUFX = .tar.xz
LIB_DEPENDS = devel/json-c \ COMPILER = base-clang
x11/gtk3mm MODULES = devel/cmake
RUN_DEPENDS = devel/desktop-file-utils \ BUILD_DEPENDS = devel/gettext,-runtime \
misc/shared-mime-info \ math/eigen3
math/eigen3 \
x11/gtk+4,-guic
MODULES = devel/cmake LIB_DEPENDS = devel/json-c \
graphics/cairo \
graphics/png \
x11/gtk3mm
CONFIGURE_ARGS+= -DENABLE_GUI=ON \ RUN_DEPENDS = devel/desktop-file-utils \
-DENABLE_CLI=ON \ misc/shared-mime-info \
-DFORCE_VENDORED_Eigen3=OFF \ math/eigen3 \
-DENABLE_LTO=OFF \ x11/gtk+4,-guic
-DENABLE_COVERAGE=OFF \
-DENABLE_TESTS=OFF \
-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 TEST_DEPENDS = ${FULLPKGNAME}:${BUILD_PKGPATH}
# testsuite broken as is CONFIGURE_ARGS+= -DENABLE_GUI=ON \
NO_TEST = YES -DENABLE_CLI=ON \
-DFORCE_VENDORED_Eigen3=OFF \
-DENABLE_LTO=OFF \
-DENABLE_COVERAGE=OFF \
-DENABLE_TESTS=ON \
-DENABLE_OPENMP=OFF \
-DENABLE_SANITIZERS=OFF
# add FindCairo.cmake do-test:
post-extract: cd ${WRKSRC} && ${WRKBUILD}/bin/solvespace-testsuite
cp ${FILESDIR}/FindCairo.cmake ${WRKSRC}/cmake/
.include <bsd.port.mk> .include <bsd.port.mk>
+2 -2
View File
@@ -1,2 +1,2 @@
SHA256 (solvespace-3.1.tar.xz) = NKJzzmQtDHe48QFGNzDtTq3n2Qz6v+SG8+fL9JT/Eyo= SHA256 (solvespace-3.2.tar.xz) = 2T6BZme2xvBfq8Pzy214P60qOAXEbSTijy69kbw23nY=
SIZE (solvespace-3.1.tar.xz) = 46083984 SIZE (solvespace-3.2.tar.xz) = 53579228
-75
View File
@@ -1,75 +0,0 @@
# - Try to find Cairo
# Once done, this will define
#
# CAIRO_FOUND - system has Cairo
# CAIRO_INCLUDE_DIRS - the Cairo include directories
# CAIRO_LIBRARIES - link these to use Cairo
#
# Copyright (C) 2012 Raphael Kubo da Costa <rakuco@webkit.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND ITS CONTRIBUTORS ``AS
# IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ITS
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
find_package(PkgConfig)
pkg_check_modules(PC_CAIRO QUIET cairo)
find_path(CAIRO_INCLUDE_DIRS
NAMES cairo.h
HINTS ${PC_CAIRO_INCLUDEDIR}
${PC_CAIRO_INCLUDE_DIRS}
PATH_SUFFIXES cairo
)
find_library(CAIRO_LIBRARIES
NAMES cairo
HINTS ${PC_CAIRO_LIBDIR}
${PC_CAIRO_LIBRARY_DIRS}
)
if (CAIRO_INCLUDE_DIRS)
if (EXISTS "${CAIRO_INCLUDE_DIRS}/cairo-version.h")
file(READ "${CAIRO_INCLUDE_DIRS}/cairo-version.h" CAIRO_VERSION_CONTENT)
string(REGEX MATCH "#define +CAIRO_VERSION_MAJOR +([0-9]+)" _dummy "${CAIRO_VERSION_CONTENT}")
set(CAIRO_VERSION_MAJOR "${CMAKE_MATCH_1}")
string(REGEX MATCH "#define +CAIRO_VERSION_MINOR +([0-9]+)" _dummy "${CAIRO_VERSION_CONTENT}")
set(CAIRO_VERSION_MINOR "${CMAKE_MATCH_1}")
string(REGEX MATCH "#define +CAIRO_VERSION_MICRO +([0-9]+)" _dummy "${CAIRO_VERSION_CONTENT}")
set(CAIRO_VERSION_MICRO "${CMAKE_MATCH_1}")
set(CAIRO_VERSION "${CAIRO_VERSION_MAJOR}.${CAIRO_VERSION_MINOR}.${CAIRO_VERSION_MICRO}")
endif ()
endif ()
if ("${Cairo_FIND_VERSION}" VERSION_GREATER "${CAIRO_VERSION}")
message(FATAL_ERROR "Required version (" ${Cairo_FIND_VERSION} ") is higher than found version (" ${CAIRO_VERSION} ")")
endif ()
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Cairo REQUIRED_VARS CAIRO_INCLUDE_DIRS CAIRO_LIBRARIES
VERSION_VAR CAIRO_VERSION)
mark_as_advanced(
CAIRO_INCLUDE_DIRS
CAIRO_LIBRARIES
)
+4 -25
View File
@@ -1,32 +1,11 @@
Index: CMakeLists.txt Index: CMakeLists.txt
--- CMakeLists.txt.orig --- CMakeLists.txt.orig
+++ CMakeLists.txt +++ CMakeLists.txt
@@ -34,9 +34,9 @@ endif() @@ -381,7 +381,6 @@ if(ENABLE_GUI)
# NOTE TO PACKAGERS: The embedded git commit hash is critical for rapid bug triage when the builds # Everything is built in
# 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)
else() else()
find_package(OpenGL REQUIRED) find_package(OpenGL REQUIRED)
- find_package(SpaceWare) - find_package(SpaceWare)
pkg_check_modules(FONTCONFIG REQUIRED fontconfig) pkg_check_modules(FONTCONFIG REQUIRED fontconfig)
pkg_check_modules(JSONC REQUIRED json-c) if (NOT USE_QT_GUI)
pkg_check_modules(GTKMM REQUIRED gtkmm-3.0>=3.18 pangomm-1.4 x11) pkg_check_modules(JSONC REQUIRED json-c)
@@ -3,7 +3,7 @@ don't exit the program for Glib charset
Index: src/platform/guigtk.cpp Index: src/platform/guigtk.cpp
--- src/platform/guigtk.cpp.orig --- src/platform/guigtk.cpp.orig
+++ src/platform/guigtk.cpp +++ 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. // 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. // We set it back to C after all so that printf() and friends behave in a consistent way.
setlocale(LC_ALL, ""); setlocale(LC_ALL, "");
@@ -13,5 +13,5 @@ Index: src/platform/guigtk.cpp
- } - }
+ Glib::get_charset(); + Glib::get_charset();
setlocale(LC_ALL, "C"); setlocale(LC_ALL, "C");
// Let GTK parse arguments and update argc/argv. (They're passed by reference.) // Let GTK parse arguments and update argc/argv. (They're passed by reference.)
@@ -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];
+5
View File
@@ -70,6 +70,8 @@ share/solvespace/icons/graphics-window/text.png
share/solvespace/icons/graphics-window/trim.png share/solvespace/icons/graphics-window/trim.png
share/solvespace/icons/graphics-window/vert.png share/solvespace/icons/graphics-window/vert.png
share/solvespace/icons/text-window/ 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/constraint.png
share/solvespace/icons/text-window/construction.png share/solvespace/icons/text-window/construction.png
share/solvespace/icons/text-window/edges.png share/solvespace/icons/text-window/edges.png
@@ -85,10 +87,12 @@ share/solvespace/icons/text-window/shaded.png
share/solvespace/icons/text-window/workplane.png share/solvespace/icons/text-window/workplane.png
share/solvespace/locales/ share/solvespace/locales/
share/solvespace/locales.txt share/solvespace/locales.txt
share/solvespace/locales/cs_CZ.po
share/solvespace/locales/de_DE.po share/solvespace/locales/de_DE.po
share/solvespace/locales/en_US.po share/solvespace/locales/en_US.po
share/solvespace/locales/es_AR.po share/solvespace/locales/es_AR.po
share/solvespace/locales/fr_FR.po share/solvespace/locales/fr_FR.po
share/solvespace/locales/ja_JP.po
share/solvespace/locales/ru_RU.po share/solvespace/locales/ru_RU.po
share/solvespace/locales/tr_TR.po share/solvespace/locales/tr_TR.po
share/solvespace/locales/uk_UA.po share/solvespace/locales/uk_UA.po
@@ -115,3 +119,4 @@ share/solvespace/threejs/three-r111.min.js.gz
@tag update-desktop-database @tag update-desktop-database
@tag gtk-update-icon-cache %D/share/icons/hicolor @tag gtk-update-icon-cache %D/share/icons/hicolor
@tag update-mime-database @tag update-mime-database
share/thumbnailers/solvespace.thumbnailer