=================================================================== RCS file: /cvs/mystuff-openscad/cad/openscad/Makefile,v retrieving revision 1.4 retrieving revision 1.16 diff -u -r1.4 -r1.16 --- mystuff-openscad/cad/openscad/Makefile 2025/09/24 02:04:17 1.4 +++ mystuff-openscad/cad/openscad/Makefile 2025/11/05 22:46:35 1.16 @@ -1,18 +1,19 @@ -COMMENT = the programmers solid 3D CAD modeller +COMMENT = programmers solid 3D CAD modeller -V = 2025.09.12 +V = 2025.10.14 DISTNAME = openscad-${V} CATEGORIES = cad HOMEPAGE = https://www.openscad.org/ +TEST_IS_INTERACTIVE = X11 # AGPL-3.0 PERMIT_PACKAGE = Yes GH_ACCOUNT = openscad GH_PROJECT = openscad -GH_COMMIT = d38a6251a3c95f7455ba3b368a9dd045483e5b5b +GH_COMMIT = b0f18e9b4d61288b2cd6c659135f7e77def179e0 MCAD_COMMIT = 1ea402208c3127ffb443931e9bb1681c191dacca SITES.mcad = https://github.com/${GH_ACCOUNT}/MCAD/archive/ @@ -21,17 +22,18 @@ MODULES = devel/cmake \ lang/python \ - x11/qt5 + x11/qt6 -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 +WANTLIB += ${COMPILER_LIBCXX} 3mf Clipper2 EGL GL GLEW GLU Qt6Concurrent +WANTLIB += Qt6Core Qt6Core5Compat Qt6DBus Qt6Gui Qt6Multimedia +WANTLIB += Qt6Network Qt6OpenGL Qt6OpenGLWidgets Qt6Svg Qt6Widgets +WANTLIB += boost_atomic-mt boost_filesystem-mt boost_program_options-mt +WANTLIB += boost_regex-mt boost_system-mt c cairo double-conversion +WANTLIB += fontconfig freetype glib-2.0 gmp gmpxx harfbuzz intl +WANTLIB += m manifold mpfr opencsg qscintilla2_qt6 tbb xml2 zip -# Must match devel/boost -COMPILER = base-clang ports-gcc +# Match devel/boost +COMPILER = base-clang ports-gcc BUILD_DEPENDS = cad/clipper2 \ devel/bison \ @@ -44,6 +46,7 @@ shells/bash LIB_DEPENDS = archivers/libzip \ + cad/clipper2 \ cad/manifold \ devel/boost \ devel/gettext \ @@ -53,13 +56,13 @@ devel/lib3mf \ devel/mpfr \ devel/tbb \ - editors/qscintilla \ + editors/qscintilla,qt6 \ graphics/glew \ graphics/opencsg \ - x11/qt5/qtbase \ - x11/qt5/qtgamepad \ - x11/qt5/qtmultimedia \ - x11/qt5/qtsvg + x11/qt6/qt5compat \ + x11/qt6/qtbase \ + x11/qt6/qtmultimedia \ + x11/qt6/qtsvg RUN_DEPENDS = devel/desktop-file-utils \ misc/shared-mime-info \ @@ -67,20 +70,28 @@ x11/gtk+4,-guic +# I didn't test fully, but it does complain BUILD_DEPENDS += ${RUN_DEPENDS} TEST_DEPENDS = graphics/ImageMagick -DEBUG_PACKAGES = ${BUILD_PACKAGES} +# A test requires this +TEST_DEPENDS += shells/bash -# Make the about say the "right" thing +# 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 -#LIB_DEPENDS += devel/mimalloc +# Our QT6 port is more stable +CONFIGURE_ARGS += -DUSE_QT6=ON + +# It might be faster, but at what cost? CONFIGURE_ARGS += -DUSE_MIMALLOC=OFF # We don't have Pillow @@ -92,8 +103,19 @@ post-extract: rmdir ${WRKSRC}/libraries/MCAD cp -a ${WRKDIR}/MCAD-${MCAD_COMMIT} ${WRKSRC}/libraries/MCAD + #find ${WRKSRC} -type f -exec sed -i '1s,^#!/bin/sh,#!${PREFIX}/bin/bash,' {} + +# 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