2026-06-23T17:54:02-0700 Andrew Hewus Fresh <[email protected]>:
> They seem to have changed the build system for opencsg. I've been
> running OpenSCAD with this for a while, as they bumped it.
>
> https://opencsg.org/news.html
>
> (I'm pretty sure I checked that it was just a minor bump, but it has
> been a while so now I'm less positive)
There were dynamic export removals, so it needs a major bump. With that
ok jtt@.
> Comments, tests, OK?
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/graphics/opencsg/Makefile,v
> diff -u -p -r1.18 Makefile
> --- Makefile 26 Sep 2023 11:39:08 -0000 1.18
> +++ Makefile 24 Jun 2026 00:46:10 -0000
> @@ -1,11 +1,9 @@
> COMMENT = constructive solid geometry rendering library
>
> -V = 1.4.2
> -DISTNAME = OpenCSG-${V}
> -PKGNAME = opencsg-${V}
> -REVISION = 2
> +DISTNAME = OpenCSG-1.8.2
> +PKGNAME = ${DISTNAME:L}
>
> -SHARED_LIBS = opencsg 1.0
> +SHARED_LIBS = opencsg 1.1
>
> CATEGORIES = graphics
>
> @@ -14,29 +12,12 @@ HOMEPAGE = http://www.opencsg.org/
> # GPLv2 with CGAL exception
> PERMIT_PACKAGE = Yes
>
> -WANTLIB += ${COMPILER_LIBCXX} GL GLEW m
> +WANTLIB += ${COMPILER_LIBCXX} m
>
> SITES = http://www.opencsg.org/
>
> -MODULES = devel/qmake \
> - x11/qt5
> +MODULES = devel/cmake
>
> -MODQT_DEPS = No
> -
> -SEPARATE_BUILD = No
> -
> -BUILD_DEPENDS = x11/qt5/qttools,-main
> -
> -LIB_DEPENDS = graphics/glew
> -
> -WRKSRC = ${WRKDIST}/src
> -
> -pre-configure:
> - ${SUBST_CMD} ${WRKSRC}/src.pro
> -
> -do-install:
> - ${INSTALL_DATA} ${WRKDIST}/lib/libopencsg.so.${LIBopencsg_VERSION} \
> - ${PREFIX}/lib
> - ${INSTALL_DATA} ${WRKDIST}/include/opencsg.h ${PREFIX}/include
> +CONFIGURE_ARGS += -DBUILD_EXAMPLE=OFF
>
> .include <bsd.port.mk>
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/graphics/opencsg/distinfo,v
> diff -u -p -r1.3 distinfo
> --- distinfo 4 Feb 2020 06:09:04 -0000 1.3
> +++ distinfo 24 Jun 2026 00:46:10 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (OpenCSG-1.4.2.tar.gz) = 2VLsXTouRqMAGcIQlj/N3/ZoE+/JwpYDty+VU63/Svs=
> -SIZE (OpenCSG-1.4.2.tar.gz) = 933135
> +SHA256 (OpenCSG-1.8.2.tar.gz) = WsXfc7GtM0DdZwX/kOAJ8alGu5U2whwiY6b5dCZWZMA=
> +SIZE (OpenCSG-1.8.2.tar.gz) = 306362
> Index: patches/patch-example_CMakeLists_txt
> ===================================================================
> RCS file: patches/patch-example_CMakeLists_txt
> diff -N patches/patch-example_CMakeLists_txt
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-example_CMakeLists_txt 24 Jun 2026 00:46:10 -0000
> @@ -0,0 +1,12 @@
> +Index: example/CMakeLists.txt
> +--- example/CMakeLists.txt.orig
> ++++ example/CMakeLists.txt
> +@@ -9,6 +9,8 @@ find_package(GLUT REQUIRED)
> +
> + target_include_directories(opencsgexample PRIVATE
> + "${CMAKE_SOURCE_DIR}/include"
> ++ "${OPENGL_INCLUDE_DIRS}"
> ++ "${GLUT_INCLUDE_DIRS}"
> + )
> +
> + target_link_libraries(opencsgexample PRIVATE
> Index: patches/patch-src_CMakeLists_txt
> ===================================================================
> RCS file: patches/patch-src_CMakeLists_txt
> diff -N patches/patch-src_CMakeLists_txt
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-src_CMakeLists_txt 24 Jun 2026 00:46:10 -0000
> @@ -0,0 +1,17 @@
> +Index: src/CMakeLists.txt
> +--- src/CMakeLists.txt.orig
> ++++ src/CMakeLists.txt
> +@@ -25,11 +25,11 @@ add_library(opencsg
> +
> + target_include_directories(opencsg PUBLIC
> + "${CMAKE_SOURCE_DIR}/include"
> + )
> +
> + set_target_properties(opencsg PROPERTIES
> +- VERSION ${PROJECT_VERSION}
> +- SOVERSION ${PROJECT_VERSION_MAJOR}
> ++ VERSION ${LIBopencsg_VERSION}
> ++ SOVERSION ${LIBopencsg_VERSION}
> + PUBLIC_HEADER "${CMAKE_SOURCE_DIR}/include/opencsg.h"
> + )
> +
> Index: patches/patch-src_src_pro
> ===================================================================
> RCS file: patches/patch-src_src_pro
> diff -N patches/patch-src_src_pro
> --- patches/patch-src_src_pro 11 Mar 2022 19:22:56 -0000 1.4
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,11 +0,0 @@
> -Index: src/src.pro
> ---- src/src.pro.orig
> -+++ src/src.pro
> -@@ -1,6 +1,6 @@
> - TEMPLATE = lib
> - TARGET = opencsg
> --VERSION = 1.4.2
> -+VERSION = ${LIBopencsg_VERSION}
> -
> - isEmpty(INSTALLDIR) {
> - INSTALLDIR = /usr/local
>