| version 1.5, 2025/09/24 02:08:44 |
version 1.18, 2025/11/29 01:28:49 |
|
|
| COMMENT = the programmers solid 3D CAD modeller |
COMMENT = programmers solid 3D CAD modeller |
| |
|
| V = 2025.09.12 |
V = 2025.10.14 |
| DISTNAME = openscad-${V} |
DISTNAME = openscad-${V} |
| |
|
| CATEGORIES = cad |
CATEGORIES = cad |
|
|
| |
|
| GH_ACCOUNT = openscad |
GH_ACCOUNT = openscad |
| GH_PROJECT = openscad |
GH_PROJECT = openscad |
| GH_COMMIT = d38a6251a3c95f7455ba3b368a9dd045483e5b5b |
GH_COMMIT = b0f18e9b4d61288b2cd6c659135f7e77def179e0 |
| |
|
| MCAD_COMMIT = 1ea402208c3127ffb443931e9bb1681c191dacca |
MCAD_COMMIT = 1ea402208c3127ffb443931e9bb1681c191dacca |
| SITES.mcad = https://github.com/${GH_ACCOUNT}/MCAD/archive/ |
SITES.mcad = https://github.com/${GH_ACCOUNT}/MCAD/archive/ |
|
|
| |
|
| MODULES = devel/cmake \ |
MODULES = devel/cmake \ |
| lang/python \ |
lang/python \ |
| x11/qt5 |
x11/qt6 |
| |
|
| WANTLIB += ${COMPILER_LIBCXX} 3mf EGL GL GLEW GLU Qt5Concurrent |
WANTLIB += ${COMPILER_LIBCXX} 3mf Clipper2 EGL GL GLEW GLU Qt6Concurrent |
| WANTLIB += Qt5Core Qt5DBus Qt5Gamepad Qt5Gui Qt5Multimedia Qt5Network |
WANTLIB += Qt6Core Qt6Core5Compat Qt6DBus Qt6Gui Qt6Multimedia |
| WANTLIB += Qt5OpenGL Qt5Svg Qt5Widgets boost_program_options-mt |
WANTLIB += Qt6Network Qt6OpenGL Qt6OpenGLWidgets Qt6Svg Qt6Widgets |
| WANTLIB += boost_regex-mt c cairo double-conversion fontconfig |
WANTLIB += boost_atomic-mt boost_filesystem-mt boost_program_options-mt |
| WANTLIB += freetype glib-2.0 gmp gmpxx harfbuzz intl m manifold |
WANTLIB += boost_regex-mt boost_system-mt c cairo double-conversion |
| WANTLIB += mpfr opencsg qscintilla2_qt5 tbb xml2 zip |
WANTLIB += fontconfig freetype glib-2.0 gmp gmpxx harfbuzz intl |
| |
WANTLIB += m manifold mpfr opencsg qscintilla2_qt6 tbb xml2 zip |
| |
|
| # Match devel/boost |
# Match devel/boost |
| COMPILER = base-clang ports-gcc |
COMPILER = base-clang ports-gcc |
| |
|
| BUILD_DEPENDS = cad/clipper2 \ |
BUILD_DEPENDS = devel/bison \ |
| devel/bison \ |
|
| devel/gettext,-tools \ |
devel/gettext,-tools \ |
| devel/sanitizers-cmake \ |
devel/sanitizers-cmake \ |
| graphics/glslang \ |
graphics/glslang \ |
| |
graphics/ImageMagick \ |
| |
graphics/shaderc \ |
| graphics/vulkan-tools \ |
graphics/vulkan-tools \ |
| math/cgal \ |
math/cgal \ |
| math/eigen3 \ |
math/eigen3 \ |
| shells/bash |
shells/bash \ |
| |
x11/xkbcommon |
| |
|
| |
TEST_DEPENDS = graphics/py-Pillow |
| |
|
| LIB_DEPENDS = archivers/libzip \ |
LIB_DEPENDS = archivers/libzip \ |
| |
cad/clipper2 \ |
| |
cad/lib3mf \ |
| cad/manifold \ |
cad/manifold \ |
| devel/boost \ |
devel/boost \ |
| devel/gettext \ |
devel/gettext \ |
| devel/glib2 \ |
devel/glib2 \ |
| devel/gmp \ |
devel/gmp \ |
| devel/gmp,-cxx \ |
devel/gmp,-cxx \ |
| devel/lib3mf \ |
|
| devel/mpfr \ |
devel/mpfr \ |
| devel/tbb \ |
devel/tbb \ |
| editors/qscintilla \ |
editors/qscintilla,qt6 \ |
| graphics/glew \ |
graphics/glew \ |
| graphics/opencsg \ |
graphics/opencsg \ |
| x11/qt5/qtbase \ |
x11/qt6/qt5compat \ |
| x11/qt5/qtgamepad \ |
x11/qt6/qtbase \ |
| x11/qt5/qtmultimedia \ |
x11/qt6/qtmultimedia \ |
| x11/qt5/qtsvg |
x11/qt6/qtsvg |
| |
|
| RUN_DEPENDS = devel/desktop-file-utils \ |
RUN_DEPENDS = devel/desktop-file-utils \ |
| misc/shared-mime-info \ |
misc/shared-mime-info \ |
|
|
| x11/gtk+4,-guic |
x11/gtk+4,-guic |
| |
|
| |
|
| # I didn't test fully, but it does complain |
|
| BUILD_DEPENDS += ${RUN_DEPENDS} |
BUILD_DEPENDS += ${RUN_DEPENDS} |
| |
|
| TEST_DEPENDS = graphics/ImageMagick |
|
| |
|
| DEBUG_PACKAGES = ${BUILD_PACKAGES} |
DEBUG_PACKAGES = ${BUILD_PACKAGES} |
| |
|
| # Make about say the "right" thing |
# Make about say the "right" thing |
| CONFIGURE_ARGS += -DOPENSCAD_VERSION=${V} |
CONFIGURE_ARGS += -DOPENSCAD_VERSION=${V} |
| |
|
| |
# 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. |
| |
# In post-install we add a shell script shim to provide the full path. |
| |
CONFIGURE_ARGS += -DCMAKE_INSTALL_BINDIR=${PREFIX}/libexec |
| |
|
| # Don't use the included stuff, use ours |
# Don't use the included stuff, use ours |
| CONFIGURE_ARGS += -DUSE_BUILTIN_CLIPPER2=OFF \ |
CONFIGURE_ARGS += -DUSE_BUILTIN_CLIPPER2=OFF \ |
| -DUSE_BUILTIN_MANIFOLD=OFF |
-DUSE_BUILTIN_MANIFOLD=OFF |
| |
|
| |
# Our QT6 port is more stable |
| |
CONFIGURE_ARGS += -DUSE_QT6=ON |
| |
|
| # It might be faster, but at what cost? |
# It might be faster, but at what cost? |
| #LIB_DEPENDS += devel/mimalloc |
|
| CONFIGURE_ARGS += -DUSE_MIMALLOC=OFF |
CONFIGURE_ARGS += -DUSE_MIMALLOC=OFF |
| |
|
| # We don't have Pillow |
|
| CONFIGURE_ARGS += -DUSE_IMAGE_COMPARE_PY=OFF |
|
| |
|
| # I don't know how link in comms/libhidapi |
# I don't know how link in comms/libhidapi |
| CONFIGURE_ARGS += -DENABLE_HIDAPI=OFF |
CONFIGURE_ARGS += -DENABLE_HIDAPI=OFF |
| |
|
| |
# We don't have SpNav. Disable in case it get's ported. |
| |
CONFIGURE_ARGS += -DCMAKE_DISABLE_FIND_PACKAGE_SpNav=ON |
| |
|
| |
TEST_IS_INTERACTIVE = X11 |
| |
|
| post-extract: |
post-extract: |
| rmdir ${WRKSRC}/libraries/MCAD |
rmdir ${WRKSRC}/libraries/MCAD |
| cp -a ${WRKDIR}/MCAD-${MCAD_COMMIT} ${WRKSRC}/libraries/MCAD |
cp -a ${WRKDIR}/MCAD-${MCAD_COMMIT} ${WRKSRC}/libraries/MCAD |
| |
|
| post-install: |
post-install: |
| |
${SUBST_PROGRAM} ${FILESDIR}/openscad ${PREFIX}/bin/openscad |
| ${MODPY_COMPILEALL} ${PREFIX}/share/openscad/libraries/MCAD/ |
${MODPY_COMPILEALL} ${PREFIX}/share/openscad/libraries/MCAD/ |
| |
|
| .include <bsd.port.mk> |
.include <bsd.port.mk> |