pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/cad/solvespace update solvespace to 3.0, with changes ...
details: https://anonhg.NetBSD.org/pkgsrc/rev/439120146d21
branches: trunk
changeset: 379808:439120146d21
user: plunky <plunky%pkgsrc.org@localhost>
date: Mon May 23 19:02:59 2022 +0000
description:
update solvespace to 3.0, with changes since 2016
New sketch features:
New intersection boolean operation for solid models.
New groups, revolution and helical extrusion.
Extrude, lathe, translate and rotate groups can use the "assembly"
boolean operation, to increase performance.
The solid model of extrude and lathe groups can be suppressed, for
splitting a single model in multiple parts to export, or if only
the generated entities are desired, without the mesh.
Translate and rotate groups can create n-dimensional arrays using
the "difference" and "assembly" boolean operations.
A new sketch in workplane group can be created based on existing workplane.
TTF text request has two additional points on the right side, which
allow constraining the width of text.
Image requests can now be created, similar to TTF text requests. This
replaces the "style → background image" feature.
Irrelevant points (e.g. arc center point) are not counted when estimating
the bounding box used to compute chord tolerance.
When adding a constraint which has a label and is redundant with another
constraint, the constraint is added as a reference, avoiding an error.
Datum points can be copied and pasted.
"Split Curves at Intersection" can now split curves at point lying on
curve, not just at intersection of two curves.
Property browser now shows amount of degrees of freedom in group list. It
also shows a yellow "err" if the sketch has problems (e.g. self
intersecting) that would propagate in subsequent groups.
It is now possible to press "g" to toggle construction on new objects
while they are still being drawn.
Allow right click to end sketching of all entities.
New constraint features:
When dragging an arc or rectangle point, it will be automatically
constrained to other points with a click.
When selecting a constraint, the requests it constraints can be
selected in the text window.
When selecting an entity, the constraints applied to it can be
selected in the text window.
Distance constraint labels can now be formatted to use SI prefixes.
Values are edited in the configured unit regardless of label format.
When creating a constraint, if an exactly identical constraint already
exists, it is now selected instead of adding a redundant constraint.
It is now possible to turn off automatic creation of horizontal/vertical
constraints on line segments.
Automatic creation of constraints no longer happens if the constraint
would have been redundant with other ones.
New option to open the constraint editor for newly created constraints
with a value.
New "redundant constraint timeout (in ms)" option to prevent UI freeze
when looking for redundant constraints.
Swap vertical and horizontal constraints when pasting rotated by 90/270
degrees.
New export/import features:
Link IDF circuit boards in an assembly (.emn files)
Three.js: allow configuring projection for exported model, and initially
use the current viewport projection.
Wavefront OBJ: a material file is exported alongside the model, containing
mesh color information.
DXF/DWG: 3D DXF files are imported as construction entities, in 3d.
VRML (WRL) triangle meshes can now be exported, useful for e.g. KiCAD.
Export 2d section: custom styled entities that lie in the same plane as
the exported section are included.
Added ExportBackgroundColor in configuration for EPS, PDF, and SVG files.
STEP export includes object colors and transparency.
Default "line styles" have a new "export these objects" option.
New rendering features:
The "Show/hide hidden lines" button is now a tri-state button that
allows showing all lines (on top of shaded mesh), stippling occluded
lines or not drawing them at all.
The "Show/hide outlines" button is now independent from "Show/hide edges".
"View | Darken Inactive Solids" added. When turned off and a "sketch in
plane" group is active solids form previous groups will not be "darkened"
(have the s000d-#def-dim-solid style applied to them).
New measurement/analysis features:
New choice for base unit, meters.
New command for measuring total length of selected entities,
"Analyze → Measure Perimeter".
New command for measuring center of mass, with live updates as the
sketch changes, "Analyze → Center of Mass".
New option for displaying areas of closed contours.
When calculating volume of the mesh, volume of the solid from the current
group is now shown alongside total volume of all solids.
When calculating area, and faces are selected, calculate area of those
faces instead of the closed contour in the sketch.
When selecting a point and a line, projected distance to current
workplane is displayed.
Other new features:
Improvements to the text window for selected entities and constraints.
Ambient light source added in text window to allow flat shaded
renderings.
New command-line interface, for batch exporting and more.
The graphical interface now supports HiDPI screens on every OS.
New option to lock Z axis to be always vertical when rotating the
view, a.k.a. "turntable navigation".
New button to hide all construction entities.
New link to match the on-screen size of the sketch with its actual
size, "view → set to full scale".
When zooming to fit, constraints are also considered.
Ctrl-clicking entities now deselects them, as the inverse of clicking.
When clicking on an entity that shares a place with other entities,
the entity from the current group is selected.
When dragging an entity that shares a place with other entities, the
entity from a request is selected. For example, dragging a point on
a face of an extrusion coincident with the source sketch plane will
drag the point from the source sketch.
The default font for TTF text is now Bitstream Vera Sans, which is
included in the resources such that it is available on any OS.
In expressions, numbers can contain the digit group separator, "_".
The "=" key is bound to "Zoom In", like "+" key.
The numpad decimal separator key is bound to "." regardless of locale.
On Windows, full-screen mode is implemented.
On Linux, native file chooser dialog can be used.
New edit menu items "Line Styles", "View Projection" and "Configuration"
that are shortcuts to the respective configuration screens.
New cmake build options using -DENABLE_OPENMP=yes and -DENABLE_LTO=yes
to enable support for multi-threading and link-time optimization.
"Shift+Scroll" for ten times finer zoom.
Translations: Chinese, French, German, Russian, Turkish, Ukrainian.
Bugs fixed:
Fixed broken --view options for command line thumbnail image creation.
Some errors in Triangulation of surfaces.
Some NURNS boolean operations that failed particularly on surfaces
created with Lathe, Revolve, or Helix.
Segfault in Remove Spline Point context menu.
A point in 3d constrained to any line whose length is free no longer
causes the line length to collapse.
Curve-line constraints (in 3d), parallel constraints (in 3d), and
same orientation constraints are more robust.
Adding some constraints (vertical, midpoint, etc) twice errors out
immediately, instead of later and in a confusing way.
Constraining a newly placed point to a hovered entity does not cause
spurious changes in the sketch.
Points highlighted with "Analyze → Show Degrees of Freedom" are drawn
on top of all other geometry.
A step rotate/translate group using a group forced to triangle mesh as
a source group also gets forced to triangle mesh.
Paste Transformed with a negative scale does not invert arcs.
The tangent arc now modifies the original entities instead of deleting
them, such that their constraints are retained.
When linking a sketch file, missing custom styles are now imported
from the linked file.
3Dconnexion SpaceMouse should now work (on Windows and macOS X).
Improved NURBS boolean operations on curved surfaces in some cases.
Show only usable fonts in the font selector.
diffstat:
cad/solvespace/Makefile | 30 ++++----
cad/solvespace/PLIST | 91 ++++++++++++++++++++++++++++-
cad/solvespace/distinfo | 16 ++--
cad/solvespace/patches/patch-CMakeLists.txt | 31 ++++++++-
4 files changed, 140 insertions(+), 28 deletions(-)
diffs (244 lines):
diff -r 6b867ac4a196 -r 439120146d21 cad/solvespace/Makefile
--- a/cad/solvespace/Makefile Mon May 23 18:44:39 2022 +0000
+++ b/cad/solvespace/Makefile Mon May 23 19:02:59 2022 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.15 2021/12/08 16:03:25 adam Exp $
+# $NetBSD: Makefile,v 1.16 2022/05/23 19:02:59 plunky Exp $
#
#
# Both of these hashes need to be updated when the solvespace version
@@ -9,21 +9,20 @@
# Solvespace has a private fork of libdxfrw which is stored in github
# as a submodule, which is not included in the v2.3 archive.
#
-LIBDXF_HASH= 8f958955f54668c142ded760dc951ffd16d9c71b
-SOLVESPACE_HASH= 7c1ca460769fc8cbef26d296338d4bbc6f2ef6d0
+LIBDXF_HASH= 0b7b7b709d9299565db603f878214656ef5e9ddf
+SOLVESPACE_HASH= 0e0b0252e23dd5bd4ae82ababcc54c44aee036d6
-DISTNAME= solvespace-2.3
-PKGREVISION= 12
+DISTNAME= solvespace-3.0
CATEGORIES= cad
-MASTER_SITES= http://github.com/solvespace/solvespace/archive/
+MASTER_SITES= ${MASTER_SITE_GITHUB:=solvespace/solvespace/archive/}
DIST_SUBDIR= ${PKGNAME_NOREV}
DISTFILES= v${PKGVERSION_NOREV}.tar.gz
DISTFILES+= ${LIBDXF_HASH}.tar.gz
SITES.${LIBDXF_HASH}.tar.gz= \
- http://github.com/solvespace/libdxfrw/archive/
+ ${MASTER_SITE_GITHUB:=solvespace/libdxfrw/archive/}
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE= http://www.solvespace.com/
+HOMEPAGE= https://www.solvespace.com/
COMMENT= Parametric 2D/3D CAD
LICENSE= gnu-gpl-v3
@@ -37,18 +36,19 @@
CMAKE_ARGS+= -DGIT_COMMIT_HASH=${SOLVESPACE_HASH}
-SUBST_CLASSES+= desktop
-SUBST_STAGE.desktop= pre-configure
-SUBST_MESSAGE.desktop= Fixing absolute path in desktop file
-SUBST_FILES.desktop= src/unix/solvespace.desktop
-SUBST_SED.desktop= -e "s,/usr/bin,${PREFIX}/bin,"
-
SUBST_CLASSES+= libdxfrw
SUBST_STAGE.libdxfrw= pre-configure
SUBST_MESSAGE.libdxfrw= Set libdxfrw directory
SUBST_FILES.libdxfrw= CMakeLists.txt
SUBST_SED.libdxfrw= -e "s,extlib/libdxfrw,extlib/libdxfrw-${LIBDXF_HASH},"
+CONFIGURE_DIRS= build
+CMAKE_ARG_PATH= ..
+
+pre-configure:
+ cd ${WRKSRC} && ${MKDIR} ${CONFIGURE_DIRS}
+
+.include "../../devel/mimalloc/buildlink3.mk"
.include "../../devel/pangomm/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../fonts/fontconfig/buildlink3.mk"
@@ -60,5 +60,5 @@
.include "../../graphics/png/buildlink3.mk"
.include "../../sysutils/desktop-file-utils/desktopdb.mk"
.include "../../textproc/json-c/buildlink3.mk"
-.include "../../x11/gtkmm/buildlink3.mk"
+.include "../../x11/gtkmm3/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff -r 6b867ac4a196 -r 439120146d21 cad/solvespace/PLIST
--- a/cad/solvespace/PLIST Mon May 23 18:44:39 2022 +0000
+++ b/cad/solvespace/PLIST Mon May 23 19:02:59 2022 +0000
@@ -1,5 +1,6 @@
-@comment $NetBSD: PLIST,v 1.1 2017/02/21 20:36:39 plunky Exp $
+@comment $NetBSD: PLIST,v 1.2 2022/05/23 19:02:59 plunky Exp $
bin/solvespace
+bin/solvespace-cli
include/slvs.h
lib/libslvs.so
lib/libslvs.so.1
@@ -13,7 +14,95 @@
share/icons/hicolor/32x32/mimetypes/application.x-solvespace.png
share/icons/hicolor/48x48/apps/solvespace.png
share/icons/hicolor/48x48/mimetypes/application.x-solvespace.png
+share/icons/hicolor/scalable/apps/solvespace.svg
+share/icons/hicolor/scalable/mimetypes/application.x-solvespace.svg
+share/mime/packages/solvespace-slvs.xml
share/pixmaps/solvespace-16x16.xpm
share/pixmaps/solvespace-24x24.xpm
share/pixmaps/solvespace-32x32.xpm
share/pixmaps/solvespace-48x48.xpm
+share/solvespace/banner.txt
+share/solvespace/fonts/BitstreamVeraSans-Roman-builtin.ttf
+share/solvespace/fonts/private/0-check-false.png
+share/solvespace/fonts/private/1-check-true.png
+share/solvespace/fonts/private/2-radio-false.png
+share/solvespace/fonts/private/3-radio-true.png
+share/solvespace/fonts/private/4-stipple-dot.png
+share/solvespace/fonts/private/5-stipple-dash-long.png
+share/solvespace/fonts/private/6-stipple-dash.png
+share/solvespace/fonts/private/7-stipple-zigzag.png
+share/solvespace/fonts/unicode.lff.gz
+share/solvespace/fonts/unifont.hex.gz
+share/solvespace/freedesktop/solvespace-48x48.png
+share/solvespace/icons/graphics-window/angle.png
+share/solvespace/icons/graphics-window/arc.png
+share/solvespace/icons/graphics-window/assemble.png
+share/solvespace/icons/graphics-window/bezier.png
+share/solvespace/icons/graphics-window/circle.png
+share/solvespace/icons/graphics-window/construction.png
+share/solvespace/icons/graphics-window/equal.png
+share/solvespace/icons/graphics-window/extrude.png
+share/solvespace/icons/graphics-window/helix.png
+share/solvespace/icons/graphics-window/horiz.png
+share/solvespace/icons/graphics-window/image.png
+share/solvespace/icons/graphics-window/in3d.png
+share/solvespace/icons/graphics-window/lathe.png
+share/solvespace/icons/graphics-window/length.png
+share/solvespace/icons/graphics-window/line.png
+share/solvespace/icons/graphics-window/ontoworkplane.png
+share/solvespace/icons/graphics-window/other-supp.png
+share/solvespace/icons/graphics-window/parallel.png
+share/solvespace/icons/graphics-window/perpendicular.png
+share/solvespace/icons/graphics-window/point.png
+share/solvespace/icons/graphics-window/pointonx.png
+share/solvespace/icons/graphics-window/rectangle.png
+share/solvespace/icons/graphics-window/ref.png
+share/solvespace/icons/graphics-window/revolve.png
+share/solvespace/icons/graphics-window/same-orientation.png
+share/solvespace/icons/graphics-window/sketch-in-3d.png
+share/solvespace/icons/graphics-window/sketch-in-plane.png
+share/solvespace/icons/graphics-window/step-rotate.png
+share/solvespace/icons/graphics-window/step-translate.png
+share/solvespace/icons/graphics-window/symmetric.png
+share/solvespace/icons/graphics-window/tangent-arc.png
+share/solvespace/icons/graphics-window/text.png
+share/solvespace/icons/graphics-window/trim.png
+share/solvespace/icons/graphics-window/vert.png
+share/solvespace/icons/text-window/constraint.png
+share/solvespace/icons/text-window/construction.png
+share/solvespace/icons/text-window/edges.png
+share/solvespace/icons/text-window/faces.png
+share/solvespace/icons/text-window/mesh.png
+share/solvespace/icons/text-window/normal.png
+share/solvespace/icons/text-window/occluded-invisible.png
+share/solvespace/icons/text-window/occluded-stippled.png
+share/solvespace/icons/text-window/occluded-visible.png
+share/solvespace/icons/text-window/outlines.png
+share/solvespace/icons/text-window/point.png
+share/solvespace/icons/text-window/shaded.png
+share/solvespace/icons/text-window/workplane.png
+share/solvespace/locales.txt
+share/solvespace/locales/de_DE.po
+share/solvespace/locales/en_US.po
+share/solvespace/locales/fr_FR.po
+share/solvespace/locales/ru_RU.po
+share/solvespace/locales/tr_TR.po
+share/solvespace/locales/uk_UA.po
+share/solvespace/locales/zh_CN.po
+share/solvespace/shaders/edge.frag
+share/solvespace/shaders/edge.vert
+share/solvespace/shaders/imesh.frag
+share/solvespace/shaders/imesh.vert
+share/solvespace/shaders/imesh_point.frag
+share/solvespace/shaders/imesh_point.vert
+share/solvespace/shaders/imesh_tex.frag
+share/solvespace/shaders/imesh_tex.vert
+share/solvespace/shaders/imesh_texa.frag
+share/solvespace/shaders/mesh.frag
+share/solvespace/shaders/mesh.vert
+share/solvespace/shaders/mesh_fill.frag
+share/solvespace/shaders/mesh_fill.vert
+share/solvespace/shaders/outline.vert
+share/solvespace/threejs/SolveSpaceControls.js
+share/solvespace/threejs/hammer-2.0.8.js.gz
+share/solvespace/threejs/three-r111.min.js.gz
diff -r 6b867ac4a196 -r 439120146d21 cad/solvespace/distinfo
--- a/cad/solvespace/distinfo Mon May 23 18:44:39 2022 +0000
+++ b/cad/solvespace/distinfo Mon May 23 19:02:59 2022 +0000
@@ -1,9 +1,9 @@
-$NetBSD: distinfo,v 1.3 2021/10/26 10:04:16 nia Exp $
+$NetBSD: distinfo,v 1.4 2022/05/23 19:02:59 plunky Exp $
-BLAKE2s (solvespace-2.3/8f958955f54668c142ded760dc951ffd16d9c71b.tar.gz) = eae48ae5b7b8726f52a4ad72aa10647e0b83d0b4206ce36376a2521f0617bfcb
-SHA512 (solvespace-2.3/8f958955f54668c142ded760dc951ffd16d9c71b.tar.gz) =
40f27cf32c1a2be1f654d82406c2f7d765cf350d3ceb134e3e1a82b17443f7a12dfda1102fe8438b70f13982af675f97fb1a62ad892acb3ed3d2e19b89a7c013
-Size (solvespace-2.3/8f958955f54668c142ded760dc951ffd16d9c71b.tar.gz) = 691686 bytes
-BLAKE2s (solvespace-2.3/v2.3.tar.gz) = cbe152ac56baecc001f755a3858780ed8bc9e05ba393f9716c9428d66248ed03
-SHA512 (solvespace-2.3/v2.3.tar.gz) = 9d22e467337591cd9a4935124d18733b8337f5785ab5738f4a94300f283ffe7d313569e379ae77e509d14182ffde8c9db7beaebb46ea7c0507c6b05010fe1a56
-Size (solvespace-2.3/v2.3.tar.gz) = 2115940 bytes
-SHA1 (patch-CMakeLists.txt) = c3716d2317b606e7e4367cef4b781f3ab2854c4f
+BLAKE2s (solvespace-3.0/0b7b7b709d9299565db603f878214656ef5e9ddf.tar.gz) = 868d7f5b2086dac96d8d3d7e81b5c8f4dd825fa79dbec16c24e092f842d07aed
+SHA512 (solvespace-3.0/0b7b7b709d9299565db603f878214656ef5e9ddf.tar.gz) =
9ab498aa7f369be79d800e8ca5ec55fa54be79d0778937b81d4c8da776b3419cb8a75400b54b205efc338da32e2e781afd0bed1bd8efed1a0b212dc8682a2615
+Size (solvespace-3.0/0b7b7b709d9299565db603f878214656ef5e9ddf.tar.gz) = 691804 bytes
+BLAKE2s (solvespace-3.0/v3.0.tar.gz) = 113a7b47f4492fc436f4459222791e9e5d50edfc886c07fcde2a24e65bd7f9b8
+SHA512 (solvespace-3.0/v3.0.tar.gz) = b07b41fac1d67c5350082600a2f09e3fa611a1273e0c93ff93d11a7a1dbf550ff33465686eaff04fdb8350d1fe854ab0301d8723ef31cc65c687ba59cb89187f
+Size (solvespace-3.0/v3.0.tar.gz) = 2734860 bytes
+SHA1 (patch-CMakeLists.txt) = c5fa324ea481850b5ce8933e976d80e04ddcdf80
diff -r 6b867ac4a196 -r 439120146d21 cad/solvespace/patches/patch-CMakeLists.txt
--- a/cad/solvespace/patches/patch-CMakeLists.txt Mon May 23 18:44:39 2022 +0000
+++ b/cad/solvespace/patches/patch-CMakeLists.txt Mon May 23 19:02:59 2022 +0000
@@ -1,15 +1,38 @@
-$NetBSD: patch-CMakeLists.txt,v 1.1 2017/02/21 20:36:39 plunky Exp $
+$NetBSD: patch-CMakeLists.txt,v 1.2 2022/05/23 19:02:59 plunky Exp $
disable finding the commit hash: we provide it in the Makefile
---- CMakeLists.txt.orig 2016-12-24 02:09:48.000000000 +0000
+use pkgsrc mimalloc directly
+
+--- CMakeLists.txt.orig 2021-04-18 09:48:36.000000000 +0000
+++ CMakeLists.txt
-@@ -20,7 +20,7 @@ set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX
+@@ -30,7 +30,6 @@ 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)
+@@ -173,13 +172,6 @@ endif()
+ message(STATUS "Using in-tree libdxfrw")
+ add_subdirectory(extlib/libdxfrw)
+
+-message(STATUS "Using in-tree mimalloc")
+-set(MI_OVERRIDE OFF CACHE BOOL "")
+-set(MI_BUILD_SHARED OFF CACHE BOOL "")
+-set(MI_BUILD_OBJECT OFF CACHE BOOL "")
+-set(MI_BUILD_TESTS OFF CACHE BOOL "")
+-add_subdirectory(extlib/mimalloc EXCLUDE_FROM_ALL)
+-set(MIMALLOC_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/extlib/mimalloc/include)
+
+ if(WIN32 OR APPLE)
+ # On Win32 and macOS we use vendored packages, since there is little to no benefit
+@@ -242,6 +234,7 @@ else()
+ find_package(ZLIB REQUIRED)
+ find_package(PNG REQUIRED)
+ find_package(Freetype REQUIRED)
++ find_package(mimalloc REQUIRED)
+ pkg_check_modules(CAIRO REQUIRED cairo)
+ endif()
+
Home |
Main Index |
Thread Index |
Old Index