From: Rafael Sadowski Subject: Re: [UPDATE] cad/openscad to 2025.09.12 To: ports@openbsd.org Date: Thu, 2 Oct 2025 22:01:14 +0200 On Wed Oct 01, 2025 at 08:22:20PM -0700, Andrew Hewus Fresh wrote: > This updates OpenSCAD to a relatively recent "nightly". This is the one > I have been testing, but should be relatively easy to watch for good > places to pull in in he future. > > I haven't done significant work in it yet, but the few things I have > tried have worked great and the new manifold renderer is _so_ much > faster. > > It does use a shell script shim to make sure it gets executed with the > full path so the application and resource paths get set up correctly. > > I removed the "unlink" patch, I am not sure if that is a vestigial > script that is no longer used, but it doesn't seem to be a problem when > building. I also removed "the" from the comment, due to portcheck(1), > but can put it back. > > It still wasn't building right on my sparc64, but not a SIGILL, just > weird compile problems. I did not get it working on any platforms other > than amd64, but might try sparc64 again and even try my macppc. > > You an also see it on my cvsweb or anoncvs checkout: > > https://cvs.afresh1.com/cgi-bin/cvsweb/mystuff-openscad/ > > $ cvs -d anoncvs@cvs.afresh1.com:/cvs co mystuff-openscad > > Comments, OK? (once the four new dependencies get imported) Nice work, thanks! I would welcome a switch to Qt6 (-DUSE_QT6=ON), which is the standard at Apple, for example. Our Qt6 port is more stable than our Qt5 port. > > > Index: Makefile > =================================================================== > RCS file: /cvs/ports/cad/openscad/Makefile,v > diff -u -p -r1.56 Makefile > --- Makefile 28 Apr 2025 07:19:19 -0000 1.56 > +++ Makefile 2 Oct 2025 02:22:29 -0000 > @@ -1,10 +1,7 @@ > -BROKEN = update to git snapshot to build with 1.87 > -COMMENT = the programmer's solid 3D CAD modeller > -BROKEN-sparc64= SIGILL on src/cgalutils.cc with CGAL-4.6.3 > +COMMENT = programmers solid 3D CAD modeller > > -V = 2021.01 > +V = 2025.09.12 > DISTNAME = openscad-${V} > -REVISION = 12 > > CATEGORIES = cad > > @@ -13,58 +10,102 @@ HOMEPAGE = https://www.openscad.org/ > # GPLv2+ with CGAL exception > PERMIT_PACKAGE = Yes > > -WANTLIB += ${COMPILER_LIBCXX} GL GLEW GLU Qt5Concurrent Qt5Core > -WANTLIB += Qt5DBus Qt5Gamepad Qt5Gui Qt5Multimedia Qt5Network > -WANTLIB += Qt5PrintSupport Qt5Widgets X11 boost_filesystem-mt > -WANTLIB += boost_program_options-mt boost_regex-mt boost_system-mt > -WANTLIB += boost_thread-mt c cairo double-conversion fontconfig > -WANTLIB += freetype glib-2.0 gmp harfbuzz intl m mpfr opencsg > -WANTLIB += qscintilla2_qt5 xml2 zip > +GH_ACCOUNT = openscad > +GH_PROJECT = openscad > +GH_COMMIT = d38a6251a3c95f7455ba3b368a9dd045483e5b5b > > -SITES = https://files.openscad.org/ > -EXTRACT_SUFX = .src.tar.gz > +MCAD_COMMIT = 1ea402208c3127ffb443931e9bb1681c191dacca > +SITES.mcad = https://github.com/${GH_ACCOUNT}/MCAD/archive/ > > -MODULES = devel/qmake \ > +DISTFILES.mcad = MCAD-${MCAD_COMMIT:C/(........).*/\1/}{${MCAD_COMMIT}}${EXTRACT_SUFX} > + > +MODULES = devel/cmake \ > lang/python \ > x11/qt5 > > -BUILD_DEPENDS = devel/bison \ > +WANTLIB += ${COMPILER_LIBCXX} 3mf EGL GL GLEW GLU Qt5Concurrent > +WANTLIB += Qt5Core Qt5DBus Qt5Gamepad Qt5Gui Qt5Multimedia Qt5Network > +WANTLIB += Qt5OpenGL Qt5Svg Qt5Widgets boost_program_options-mt > +WANTLIB += boost_regex-mt c cairo double-conversion fontconfig > +WANTLIB += freetype glib-2.0 gmp gmpxx harfbuzz intl m manifold > +WANTLIB += mpfr opencsg qscintilla2_qt5 tbb xml2 zip > + > +# Match devel/boost > +COMPILER = base-clang ports-gcc > + > +BUILD_DEPENDS = cad/clipper2 \ > + devel/bison \ > devel/gettext,-tools \ > + devel/sanitizers-cmake \ > + graphics/glslang \ > + graphics/vulkan-tools \ > math/cgal \ > - math/eigen3 > + math/eigen3 \ > + shells/bash > > LIB_DEPENDS = archivers/libzip \ > + cad/manifold \ > devel/boost \ > + devel/gettext \ > + devel/glib2 \ > devel/gmp \ > - devel/harfbuzz \ > + devel/gmp,-cxx \ > + devel/lib3mf \ > devel/mpfr \ > + devel/tbb \ > editors/qscintilla \ > graphics/glew \ > graphics/opencsg \ > - math/double-conversion \ > + x11/qt5/qtbase \ > x11/qt5/qtgamepad \ > - x11/qt5/qtmultimedia > + x11/qt5/qtmultimedia \ > + x11/qt5/qtsvg > > RUN_DEPENDS = devel/desktop-file-utils \ > - fonts/liberation-fonts \ > misc/shared-mime-info \ > + net/curl \ > x11/gtk+4,-guic > > -# virtual memory exhausted: Cannot allocate memory > -.if ${MACHINE_ARCH:Malpha} > -COPTS += -O1 > -CXXOPTS += -O1 > -.endif > > -MODQMAKE_ARGS = VERSION=${V} > -SEPARATE_BUILD = No > +# I didn't test fully, but it does complain > +BUILD_DEPENDS += ${RUN_DEPENDS} > + > +TEST_DEPENDS = graphics/ImageMagick > + > +# The openscad script wrapper breaks debug packages > +#DEBUG_PACKAGES = ${BUILD_PACKAGES} > + > +# Make about say the "right" thing > +CONFIGURE_ARGS += -DOPENSCAD_VERSION=${V} > + > +# Don't use the included stuff, use ours > +CONFIGURE_ARGS += -DUSE_BUILTIN_CLIPPER2=OFF \ > + -DUSE_BUILTIN_MANIFOLD=OFF > + > +# It might be faster, but at what cost? > +CONFIGURE_ARGS += -DUSE_MIMALLOC=OFF > + > +# We don't have Pillow > +CONFIGURE_ARGS += -DUSE_IMAGE_COMPARE_PY=OFF > > -NO_TEST = Yes > +# I don't know how link in comms/libhidapi > +CONFIGURE_ARGS += -DENABLE_HIDAPI=OFF > > -pre-configure: > - ln -sf ${LOCALBASE}/bin/bison ${WRKDIR}/bin/yacc > +post-extract: > + rmdir ${WRKSRC}/libraries/MCAD > + cp -a ${WRKDIR}/MCAD-${MCAD_COMMIT} ${WRKSRC}/libraries/MCAD > > +# OpenSCAD uses the program_location (see patch-src_openscad_cc) to > +# figure out resource paths, but on OpenBSD that doesn't work when > +# launched from the PATH So, add a shell script shim to fix up argv[0] > +# to be absolute so our patch works. > post-install: > + mv ${PREFIX}/bin/openscad ${PREFIX}/libexec/openscad > + ${INSTALL_SCRIPT} /dev/null ${PREFIX}/bin/openscad > + printf "%s\n%s\n" \ > + '#!/bin/sh' \ > + 'exec ${TRUEPREFIX}/libexec/openscad "$$@"' \ > + > ${PREFIX}/bin/openscad > ${MODPY_COMPILEALL} ${PREFIX}/share/openscad/libraries/MCAD/ > > .include > Index: distinfo > =================================================================== > RCS file: /cvs/ports/cad/openscad/distinfo,v > diff -u -p -r1.7 distinfo > --- distinfo 14 Feb 2021 16:14:54 -0000 1.7 > +++ distinfo 2 Oct 2025 02:22:29 -0000 > @@ -1,2 +1,4 @@ > -SHA256 (openscad-2021.01.src.tar.gz) = 2TjCl+fl9l26sUYcrEcvxg3+qkmZ6iwZsxpBhPLXA1k= > -SIZE (openscad-2021.01.src.tar.gz) = 15817555 > +SHA256 (MCAD-1ea40220.tar.gz) = PQQHfTaYFGOMPwGP7MOUOQEaR/VFAm9DwaRlvOF3P1c= > +SHA256 (openscad-2025.09.12-d38a6251.tar.gz) = jtN7qirkG1Jz8K+xBradJxZWJrEBTUIrsD61MB8631s= > +SIZE (MCAD-1ea40220.tar.gz) = 56943 > +SIZE (openscad-2025.09.12-d38a6251.tar.gz) = 24855050 > Index: patches/patch-CMakeLists_txt > =================================================================== > RCS file: patches/patch-CMakeLists_txt > diff -N patches/patch-CMakeLists_txt > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-CMakeLists_txt 2 Oct 2025 02:22:29 -0000 > @@ -0,0 +1,42 @@ > +Index: CMakeLists.txt > +--- CMakeLists.txt.orig > ++++ CMakeLists.txt > +@@ -388,7 +388,7 @@ else() > + target_compile_definitions(OpenSCAD PRIVATE EIGEN_DONT_ALIGN) > + message(STATUS "Eigen: ${EIGEN3_VERSION}") > + > +- find_package(Boost 1.70 REQUIRED QUIET COMPONENTS regex program_options) > ++ find_package(Boost 1.70 REQUIRED QUIET COMPONENTS filesystem regex program_options) > + message(STATUS "Boost: ${Boost_VERSION}") > + target_include_directories(OpenSCAD SYSTEM PRIVATE ${Boost_INCLUDE_DIRS}) > + target_link_libraries(OpenSCAD PRIVATE ${Boost_LIBRARIES}) > +@@ -527,7 +527,7 @@ if(ENABLE_CAIRO) > + if (CAIRO_VERSION) > + message(STATUS "Cairo: ${CAIRO_VERSION}") > + target_include_directories(OpenSCAD SYSTEM PRIVATE ${CAIRO_INCLUDE_DIRS}) > +- target_link_libraries(OpenSCAD PRIVATE ${CAIRO_LIBRARIES}) > ++ target_link_libraries(OpenSCAD PRIVATE ${CAIRO_LINK_LIBRARIES}) > + target_compile_definitions(OpenSCAD PRIVATE ENABLE_CAIRO) > + else() > + message(STATUS "Cairo: disabled") > +@@ -749,7 +749,7 @@ elseif(UNIX) > + if (NOT USE_GLAD) > + target_compile_definitions(OpenSCAD PRIVATE GLEW_EGL) > + endif() > +- target_link_libraries(OpenSCAD PRIVATE OpenGL::EGL) > ++ target_link_libraries(OpenSCAD PRIVATE ${OPENGL_egl_LIBRARY}) > + endif() > + if(ENABLE_GLX AND OpenGL_GLX_FOUND) > + target_compile_definitions(OpenSCAD PRIVATE ENABLE_GLX) > +@@ -1064,11 +1064,6 @@ else() > + ${GLEW_SOURCES}) > + endif() > + > +- > +-if(UNIX AND (NOT APPLE) AND (NOT HEADLESS)) > +- set(PLATFORM_INPUT_DRIVER_SOURCES src/gui/input/JoystickInputDriver.cc) > +- target_compile_definitions(OpenSCAD PRIVATE ENABLE_JOYSTICK) > +-endif() > + > + set(INPUT_DRIVER_SOURCES > + ${PLATFORM_INPUT_DRIVER_SOURCES} > Index: patches/patch-features_boost_prf > =================================================================== > RCS file: patches/patch-features_boost_prf > diff -N patches/patch-features_boost_prf > --- patches/patch-features_boost_prf 11 Mar 2022 18:24:31 -0000 1.2 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,12 +0,0 @@ > -Index: features/boost.prf > ---- features/boost.prf.orig > -+++ features/boost.prf > -@@ -71,7 +71,7 @@ isEmpty(BOOST_LINK_FLAGS) { > - > - isEmpty(BOOST_LINK_FLAGS) { > - unix|macx { > -- BOOST_LINK_FLAGS = -lboost_thread -lboost_program_options -lboost_filesystem -lboost_system -lboost_regex > -+ BOOST_LINK_FLAGS = -lboost_thread-mt -lboost_program_options-mt -lboost_filesystem-mt -lboost_system-mt -lboost_regex-mt > - } > - } > - > Index: patches/patch-openscad_pro > =================================================================== > RCS file: patches/patch-openscad_pro > diff -N patches/patch-openscad_pro > --- patches/patch-openscad_pro 11 Mar 2022 18:24:31 -0000 1.5 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,45 +0,0 @@ > -- remove unsupported compiler flag (that is NOT ignored) > -- don't use bundled Liberation fonts, use RDEP on fonts/liberation-fonts instead > -- fix manpage installation dir > -- disable hidapi support, it doesn't compile > - > -Index: openscad.pro > ---- openscad.pro.orig > -+++ openscad.pro > -@@ -150,7 +150,6 @@ netbsd* { > - # See Dec 2011 OpenSCAD mailing list, re: CGAL/GCC bugs. > - *g++* { > - QMAKE_CXXFLAGS *= -fno-strict-aliasing > -- QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-local-typedefs # ignored before 4.8 > - > - # Disable attributes warnings on MSYS/MXE due to gcc bug spamming the logs: Issue #2771 > - win* | CONFIG(mingw-cross-env)|CONFIG(mingw-cross-env-shared) { > -@@ -193,7 +192,7 @@ CONFIG += lib3mf > - CONFIG += gettext > - CONFIG += libxml2 > - CONFIG += libzip > --CONFIG += hidapi > -+#CONFIG += hidapi > - CONFIG += spnav > - CONFIG += double-conversion > - CONFIG += cairo > -@@ -721,10 +720,6 @@ libraries.path = "$$PREFIX/share/$${FULLNAME}/librarie > - libraries.files = libraries/* > - INSTALLS += libraries > - > --fonts.path = "$$PREFIX/share/$${FULLNAME}/fonts/" > --fonts.files = fonts/* > --INSTALLS += fonts > -- > - colorschemes.path = "$$PREFIX/share/$${FULLNAME}/color-schemes/" > - colorschemes.files = color-schemes/* > - INSTALLS += colorschemes > -@@ -757,7 +752,7 @@ icon512.path = $$PREFIX/share/icons/hicolor/512x512/ap > - icon512.extra = test -f icons/$${FULLNAME}-512.png && cp -f icons/$${FULLNAME}-512.png \"\$(INSTALL_ROOT)$${icon512.path}/$${FULLNAME}.png\" || cp -f icons/openscad-512.png \"\$(INSTALL_ROOT)$${icon512.path}/$${FULLNAME}.png\" > - INSTALLS += icon48 icon64 icon128 icon256 icon512 > - > --man.path = $$PREFIX/share/man/man1 > -+man.path = $$PREFIX/man/man1 > - man.extra = cp -f doc/openscad.1 \"\$(INSTALL_ROOT)$${man.path}/$${FULLNAME}.1\" > - INSTALLS += man > - > Index: patches/patch-scripts_translation-update_sh > =================================================================== > RCS file: patches/patch-scripts_translation-update_sh > diff -N patches/patch-scripts_translation-update_sh > --- patches/patch-scripts_translation-update_sh 11 Mar 2022 18:24:31 -0000 1.2 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,14 +0,0 @@ > -OpenBSD does not have unlink in base > - > -Index: scripts/translation-update.sh > ---- scripts/translation-update.sh.orig > -+++ scripts/translation-update.sh > -@@ -100,7 +100,7 @@ updatemo() > - > - # clean the mess > - for LANGCODE in `cat locale/LINGUAS | grep -v "#"`; do > -- unlink ./locale/$LANGCODE/LC_MESSAGES/$LANGCODE.mo > -+ rm ./locale/$LANGCODE/LC_MESSAGES/$LANGCODE.mo > - done > - else > - if [ x"$(uname -s)" = x"Linux" ]; then > Index: patches/patch-src_cgalutils-polyhedron_cc > =================================================================== > RCS file: patches/patch-src_cgalutils-polyhedron_cc > diff -N patches/patch-src_cgalutils-polyhedron_cc > --- patches/patch-src_cgalutils-polyhedron_cc 31 Oct 2023 23:33:26 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,26 +0,0 @@ > -Backport from upstream > -Commit: cc49ad8dac24309f5452d5dea9abd406615a52d9 > - > -Index: src/cgalutils-polyhedron.cc > ---- src/cgalutils-polyhedron.cc.orig > -+++ src/cgalutils-polyhedron.cc > -@@ -337,19 +337,6 @@ namespace CGALUtils { > - } > - }; > - > -- template > -- std::string printPolyhedron(const Polyhedron &p) { > -- std::ostringstream sstream; > -- sstream.precision(20); > -- > -- Polyhedron_writer writer; > -- generic_print_polyhedron(sstream, p, writer); > -- > -- return sstream.str(); > -- } > -- > -- template std::string printPolyhedron(const CGAL_Polyhedron &p); > -- > - }; // namespace CGALUtils > - > - #endif /* ENABLE_CGAL */ > Index: patches/patch-src_cgalutils-tess_cc > =================================================================== > RCS file: patches/patch-src_cgalutils-tess_cc > diff -N patches/patch-src_cgalutils-tess_cc > --- patches/patch-src_cgalutils-tess_cc 31 Oct 2023 23:33:26 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,29 +0,0 @@ > -Backport from upstream > -Commit: d559fa838ea919e664661bfcf1d3274c83743d61 > - > -Index: src/cgalutils-tess.cc > ---- src/cgalutils-tess.cc.orig > -+++ src/cgalutils-tess.cc > -@@ -6,10 +6,12 @@ > - #pragma push_macro("NDEBUG") > - #undef NDEBUG > - #include > --#if CGAL_VERSION_NR >= CGAL_VERSION_NUMBER(4,11,0) > -+#if CGAL_VERSION_NR < 1050401000 > - #include > -+ typedef CGAL::Triangulation_2_filtered_projection_traits_3 Projection; > - #else > -- #include > -+ #include > -+ typedef CGAL::Filtered_projection_traits_3 Projection; > - #endif > - #include > - #pragma pop_macro("NDEBUG") > -@@ -19,7 +21,6 @@ struct FaceInfo { > - bool in_domain() { return nesting_level%2 == 1; } > - }; > - > --typedef CGAL::Triangulation_2_filtered_projection_traits_3 Projection; > - typedef CGAL::Triangulation_face_base_with_info_2 Fbb; > - typedef CGAL::Triangulation_data_structure_2< > - CGAL::Triangulation_vertex_base_2, > Index: patches/patch-src_cgalutils_h > =================================================================== > RCS file: patches/patch-src_cgalutils_h > diff -N patches/patch-src_cgalutils_h > --- patches/patch-src_cgalutils_h 31 Oct 2023 23:33:26 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,14 +0,0 @@ > -Backport from upstream > -Commit: cc49ad8dac24309f5452d5dea9abd406615a52d9 > - > -Index: src/cgalutils.h > ---- src/cgalutils.h.orig > -+++ src/cgalutils.h > -@@ -45,7 +45,6 @@ namespace CGALUtils { > - bool is_approximately_convex(const PolySet &ps); > - Geometry const* applyMinkowski(const Geometry::Geometries &children); > - > -- template std::string printPolyhedron(const Polyhedron &p); > - template bool createPolySetFromPolyhedron(const Polyhedron &p, PolySet &ps); > - template bool createPolyhedronFromPolySet(const PolySet &ps, Polyhedron &p); > - template > Index: patches/patch-src_openscad_cc > =================================================================== > RCS file: /cvs/ports/cad/openscad/patches/patch-src_openscad_cc,v > diff -u -p -r1.1 patch-src_openscad_cc > --- patches/patch-src_openscad_cc 31 Oct 2023 23:33:26 -0000 1.1 > +++ patches/patch-src_openscad_cc 2 Oct 2025 02:22:29 -0000 > @@ -1,55 +1,20 @@ > -Backport from upstream > -Commit: d559fa838ea919e664661bfcf1d3274c83743d61 > - > -Index: src/openscad.cc > +IZZndex: src/openscad.cc > --- src/openscad.cc.orig > +++ src/openscad.cc > -@@ -65,7 +65,6 @@ > - #include > - #include > +@@ -60,6 +60,7 @@ > + #include > #include > --#include > - #include > - #include > - #include > -@@ -307,7 +306,7 @@ void set_render_color_scheme(const std::string color_s > - } > + #include > ++#include > + #include > + #include > + #include > +@@ -814,7 +815,7 @@ int main(int argc, char **argv) > > - if (exit_if_not_found) { > -- LOG(message_group::None,Location::NONE,"",(boost::join(ColorMap::inst()->colorSchemeNames(), "\n"))); > -+ LOG(message_group::None,Location::NONE,"",(boost::algorithm::join(ColorMap::inst()->colorSchemeNames(), "\n"))); > - > - exit(1); > - } else { > -@@ -885,7 +884,7 @@ struct CommaSeparatedVector > - }; > - > - template > --std::string join(const Seq &seq, const std::string &sep, const ToString &toString) > -+std::string str_join(const Seq &seq, const std::string &sep, const ToString &toString) > - { > - return boost::algorithm::join(boost::adaptors::transform(seq, toString), sep); > - } > -@@ -947,7 +946,7 @@ int main(int argc, char **argv) > - ("P,P", po::value(), "customizer parameter set") > - #ifdef ENABLE_EXPERIMENTAL > - ("enable", po::value>(), ("enable experimental features: " + > -- join(boost::make_iterator_range(Feature::begin(), Feature::end()), " | ", > -+ str_join(boost::make_iterator_range(Feature::begin(), Feature::end()), " | ", > - [](const Feature *feature) { > - return feature->get_name(); > - }) + > -@@ -964,11 +963,11 @@ int main(int argc, char **argv) > - ("render", po::value()->implicit_value(""), "for full geometry evaluation when exporting png") > - ("preview", po::value()->implicit_value(""), "[=throwntogether] -for ThrownTogether preview png") > - ("animate", po::value(), "export N animated frames") > -- ("view", po::value(), ("=view options: " + boost::join(viewOptions.names(), " | ")).c_str()) > -+ ("view", po::value(), ("=view options: " + boost::algorithm::join(viewOptions.names(), " | ")).c_str()) > - ("projection", po::value(), "=(o)rtho or (p)erspective when exporting png") > - ("csglimit", po::value(), "=n -stop rendering at n CSG elements when exporting png") > - ("colorscheme", po::value(), ("=colorscheme: " + > -- join(ColorMap::inst()->colorSchemeNames(), " | ", > -+ str_join(ColorMap::inst()->colorSchemeNames(), " | ", > - [](const std::string& colorScheme) { > - return (colorScheme == ColorMap::inst()->defaultColorSchemeName() ? "*" : "") + colorScheme; > - }) + > + #ifndef __EMSCRIPTEN__ > + const auto applicationPath = > +- weakly_canonical(boost::dll::program_location()).parent_path().generic_string(); > ++ boost::filesystem::system_complete(argv[0]).parent_path().generic_string(); > + #else > + const auto applicationPath = boost::dll::fs::current_path(); > + #endif > Index: pkg/PLIST > =================================================================== > RCS file: /cvs/ports/cad/openscad/pkg/PLIST,v > diff -u -p -r1.13 PLIST > --- pkg/PLIST 29 May 2024 08:04:35 -0000 1.13 > +++ pkg/PLIST 2 Oct 2025 02:22:29 -0000 > @@ -1,4 +1,5 @@ > -@bin bin/openscad > +bin/openscad > +@bin libexec/openscad > @man man/man1/openscad.1 > share/applications/openscad.desktop > share/icons/hicolor/128x128/apps/openscad.png > @@ -13,6 +14,8 @@ share/openscad/ > share/openscad/color-schemes/ > share/openscad/color-schemes/editor/ > share/openscad/color-schemes/editor/dark-background.json > +share/openscad/color-schemes/editor/high-contrast-dark.json > +share/openscad/color-schemes/editor/high-contrast-light.json > share/openscad/color-schemes/editor/light-background.json > share/openscad/color-schemes/editor/monokai.json > share/openscad/color-schemes/editor/solarized-dark.json > @@ -20,13 +23,17 @@ share/openscad/color-schemes/editor/sola > share/openscad/color-schemes/editor/tomorrow-night.json > share/openscad/color-schemes/editor/tomorrow.json > share/openscad/color-schemes/editor/visualstudio.json > +share/openscad/color-schemes/editor/xcode.json > share/openscad/color-schemes/readme.txt > share/openscad/color-schemes/render/ > share/openscad/color-schemes/render/beforedawn.json > +share/openscad/color-schemes/render/clearsky.json > +share/openscad/color-schemes/render/daylight-gem.json > share/openscad/color-schemes/render/deepocean.json > share/openscad/color-schemes/render/metallic.json > share/openscad/color-schemes/render/monotone.json > share/openscad/color-schemes/render/nature.json > +share/openscad/color-schemes/render/nocturnal-gem.json > share/openscad/color-schemes/render/solarized.json > share/openscad/color-schemes/render/starnight.json > share/openscad/color-schemes/render/sunset.json > @@ -39,6 +46,7 @@ share/openscad/examples/Advanced/animati > share/openscad/examples/Advanced/assert.scad > share/openscad/examples/Advanced/children.scad > share/openscad/examples/Advanced/children_indexed.scad > +share/openscad/examples/Advanced/example-dir.json > share/openscad/examples/Advanced/module_recursion.scad > share/openscad/examples/Advanced/offset.scad > share/openscad/examples/Advanced/surface_image.png > @@ -47,16 +55,20 @@ share/openscad/examples/Basics/ > share/openscad/examples/Basics/CSG-modules.scad > share/openscad/examples/Basics/CSG.scad > share/openscad/examples/Basics/LetterBlock.scad > +share/openscad/examples/Basics/example-dir.json > +share/openscad/examples/Basics/hull.scad > share/openscad/examples/Basics/linear_extrude.scad > share/openscad/examples/Basics/logo.scad > share/openscad/examples/Basics/logo_and_text.scad > share/openscad/examples/Basics/projection.scad > share/openscad/examples/Basics/projection.stl > +share/openscad/examples/Basics/roof.scad > share/openscad/examples/Basics/rotate_extrude.scad > share/openscad/examples/Basics/text_on_cube.scad > share/openscad/examples/COPYING-CC0.txt > share/openscad/examples/Functions/ > share/openscad/examples/Functions/echo.scad > +share/openscad/examples/Functions/example-dir.json > share/openscad/examples/Functions/functions.scad > share/openscad/examples/Functions/list_comprehensions.scad > share/openscad/examples/Functions/polygon_areas.scad > @@ -96,12 +108,33 @@ share/openscad/examples/Old/example024.s > share/openscad/examples/Parametric/ > share/openscad/examples/Parametric/candleStand.json > share/openscad/examples/Parametric/candleStand.scad > +share/openscad/examples/Parametric/example-dir.json > share/openscad/examples/Parametric/sign.json > share/openscad/examples/Parametric/sign.scad > -share/openscad/examples/examples.json > +share/openscad/fonts/ > +share/openscad/fonts/05-osx-fonts.conf > +share/openscad/fonts/10-liberation.conf > +share/openscad/fonts/Liberation-2.00.1/ > +share/openscad/fonts/Liberation-2.00.1/AUTHORS > +share/openscad/fonts/Liberation-2.00.1/ChangeLog > +share/openscad/fonts/Liberation-2.00.1/LICENSE > +share/openscad/fonts/Liberation-2.00.1/README > +share/openscad/fonts/Liberation-2.00.1/TODO > +share/openscad/fonts/Liberation-2.00.1/ttf/ > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationMono-Bold.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationMono-BoldItalic.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationMono-Italic.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationMono-Regular.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationSans-Bold.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationSans-BoldItalic.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationSans-Italic.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationSans-Regular.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationSerif-Bold.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationSerif-BoldItalic.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationSerif-Italic.ttf > +share/openscad/fonts/Liberation-2.00.1/ttf/LiberationSerif-Regular.ttf > share/openscad/libraries/ > share/openscad/libraries/MCAD/ > -share/openscad/libraries/MCAD/.gitignore > share/openscad/libraries/MCAD/2Dshapes.scad > share/openscad/libraries/MCAD/3d_triangle.scad > share/openscad/libraries/MCAD/README.markdown > @@ -118,6 +151,7 @@ share/openscad/libraries/MCAD/${MODPY_PY > share/openscad/libraries/MCAD/${MODPY_PYCACHE}test_docs.${MODPY_PYC_MAGIC_TAG}pyc > share/openscad/libraries/MCAD/${MODPY_PYCACHE}test_mcad.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} > share/openscad/libraries/MCAD/${MODPY_PYCACHE}test_mcad.${MODPY_PYC_MAGIC_TAG}pyc > +share/openscad/libraries/MCAD/array.scad > share/openscad/libraries/MCAD/bearing.scad > share/openscad/libraries/MCAD/bitmap/ > share/openscad/libraries/MCAD/bitmap/README > @@ -126,6 +160,7 @@ share/openscad/libraries/MCAD/bitmap/bit > share/openscad/libraries/MCAD/bitmap/height_map.scad > share/openscad/libraries/MCAD/bitmap/letter_necklace.scad > share/openscad/libraries/MCAD/bitmap/name_tag.scad > +share/openscad/libraries/MCAD/bitmap/test_name_tag.scad > share/openscad/libraries/MCAD/boxes.scad > share/openscad/libraries/MCAD/constants.scad > share/openscad/libraries/MCAD/curves.scad > @@ -138,6 +173,7 @@ share/openscad/libraries/MCAD/layouts.sc > share/openscad/libraries/MCAD/lego_compatibility.scad > share/openscad/libraries/MCAD/lgpl-2.1.txt > share/openscad/libraries/MCAD/libtriangles.scad > +share/openscad/libraries/MCAD/linear_bearing.scad > share/openscad/libraries/MCAD/materials.scad > share/openscad/libraries/MCAD/math.scad > share/openscad/libraries/MCAD/metric_fastners.scad > @@ -147,6 +183,7 @@ share/openscad/libraries/MCAD/nuts_and_b > share/openscad/libraries/MCAD/openscad_testing.py > share/openscad/libraries/MCAD/openscad_utils.py > share/openscad/libraries/MCAD/polyholes.scad > +share/openscad/libraries/MCAD/profiles.scad > share/openscad/libraries/MCAD/regular_shapes.scad > share/openscad/libraries/MCAD/screw.scad > share/openscad/libraries/MCAD/servos.scad > @@ -177,28 +214,47 @@ share/openscad/locale/fr/LC_MESSAGES/ope > share/openscad/locale/hy/ > share/openscad/locale/hy/LC_MESSAGES/ > share/openscad/locale/hy/LC_MESSAGES/openscad.mo > +share/openscad/locale/it/ > +share/openscad/locale/it/LC_MESSAGES/ > +share/openscad/locale/it/LC_MESSAGES/openscad.mo > +share/openscad/locale/ka/ > +share/openscad/locale/ka/LC_MESSAGES/ > +share/openscad/locale/ka/LC_MESSAGES/openscad.mo > share/openscad/locale/pl/ > share/openscad/locale/pl/LC_MESSAGES/ > share/openscad/locale/pl/LC_MESSAGES/openscad.mo > +share/openscad/locale/pt_BR/ > +share/openscad/locale/pt_BR/LC_MESSAGES/ > +share/openscad/locale/pt_BR/LC_MESSAGES/openscad.mo > share/openscad/locale/ru/ > share/openscad/locale/ru/LC_MESSAGES/ > share/openscad/locale/ru/LC_MESSAGES/openscad.mo > +share/openscad/locale/tr/ > +share/openscad/locale/tr/LC_MESSAGES/ > +share/openscad/locale/tr/LC_MESSAGES/openscad.mo > share/openscad/locale/uk/ > share/openscad/locale/uk/LC_MESSAGES/ > share/openscad/locale/uk/LC_MESSAGES/openscad.mo > -@tag update-desktop-database > -@tag update-mime-database > share/openscad/locale/zh_CN/ > share/openscad/locale/zh_CN/LC_MESSAGES/ > share/openscad/locale/zh_CN/LC_MESSAGES/openscad.mo > share/openscad/locale/zh_TW/ > share/openscad/locale/zh_TW/LC_MESSAGES/ > share/openscad/locale/zh_TW/LC_MESSAGES/openscad.mo > +share/openscad/shaders/ > +share/openscad/shaders/MouseSelector.frag > +share/openscad/shaders/MouseSelector.vert > +share/openscad/shaders/OpenCSG.vert > +share/openscad/shaders/ViewEdges.frag > +share/openscad/shaders/ViewEdges.vert > share/openscad/templates/ > +share/openscad/templates/CC0.json > share/openscad/templates/difference.json > share/openscad/templates/for.json > share/openscad/templates/function.json > share/openscad/templates/module.json > share/openscad/templates/rotate.json > share/openscad/templates/translate.json > +@tag update-mime-database > +@tag update-desktop-database > @tag gtk-update-icon-cache %D/share/icons/hicolor >