Please find attached a port for opencascade (occt) intended for the
replacement of the outdated and unmaintained[1] cad/oce in
cad/{kicad,prusaslicer} (and for a future FreeCAD port). For context,
oce is a community driven fork of the Open CASCADE library (occt)
which is also why the ports share a lot in common (many bits were
taken from cad/oce). The replacement is very straightforward and
almost drop-in (see kicad.diff and prusaslicer.diff). With this
change I also suggest the removal of cad/oce as it conflicts with
cad/opencascade and it would no longer make sense to keep it.

Tested both consumers which seem to work great. However more testing
would be appreciated.

I've cc's Renato (maintainer of prusaslicer) and ian@ as he worked
on the wip port as well.

ian@: You were listed as the MAINTAINER of this port in the wip
version[2], but since I'm making this submission without your
consent, I've taken it over. Please let me know if you want it back
or if you'd like to co-maintain it together.

Feedback, OKs?

Kind regards,
Johannes

[1] https://github.com/tpaviot/oce/issues/745
[2] https://github.com/jasperla/openbsd-wip/tree/master/cad/opencascade

Attachment: opencascade-7.7.2.tar.gz
Description: GNU Zip compressed data

Index: Makefile
===================================================================
RCS file: /cvs/ports/cad/kicad/Makefile,v
retrieving revision 1.64
diff -u -p -r1.64 Makefile
--- Makefile    19 Sep 2023 15:16:35 -0000      1.64
+++ Makefile    19 Oct 2023 06:49:38 -0000
@@ -9,7 +9,7 @@ V =                     6.0.11
 COMMENT =              schematic and PCB editing software
 DISTNAME =             kicad-${V}
 EPOCH =                        0
-REVISION =             1
+REVISION =             2
 
 SHARED_LIBS +=         kicad_3dsg                1.0 # 2.0
 
@@ -60,7 +60,7 @@ RUN_DEPENDS =         cad/kicad-share/footprint
                        x11/gtk+4,-guic
 
 LIB_DEPENDS =          cad/ngspice/libngspice \
-                       cad/oce \
+                       cad/opencascade \
                        graphics/cairo \
                        net/curl \
                        x11/wxWidgets
Index: Makefile
===================================================================
RCS file: /cvs/ports/cad/prusaslicer/Makefile,v
retrieving revision 1.2
diff -u -p -r1.2 Makefile
--- Makefile    19 Sep 2023 20:09:06 -0000      1.2
+++ Makefile    19 Oct 2023 07:38:47 -0000
@@ -1,7 +1,7 @@
 COMMENT =      g-code generator for 3D printers
 
 V =            2.5.2
-REVISION =     0
+REVISION =     1
 PKGNAME =      prusaslicer-${V}
 
 GH_ACCOUNT =   prusa3d
@@ -21,15 +21,16 @@ WANTLIB += ${COMPILER_LIBCXX} CGAL GL GL
 WANTLIB += TKG2d TKG3d TKGeomAlgo TKGeomBase TKHLR TKLCAF TKMath
 WANTLIB += TKMesh TKPrim TKSTEP TKSTEP209 TKSTEPAttr TKSTEPBase
 WANTLIB += TKService TKShHealing TKTopAlgo TKV3d TKVCAF TKXCAF
-WANTLIB += TKXDESTEP TKXSBase TKernel atk-1.0 boost_atomic-mt
+WANTLIB += TKXDE TKXDESTEP TKXSBase TKernel X11 atk-1.0 boost_atomic-mt
 WANTLIB += boost_chrono-mt boost_date_time-mt boost_filesystem-mt
 WANTLIB += boost_iostreams-mt boost_locale-mt boost_log-mt boost_log_setup-mt
 WANTLIB += boost_regex-mt boost_system-mt boost_thread-mt c cairo
-WANTLIB += cairo-gobject curl dbus-1 expat gdk-3 gdk_pixbuf-2.0
-WANTLIB += gio-2.0 glib-2.0 gmp gobject-2.0 gtk-3 harfbuzz hidapi-libusb
-WANTLIB += intl jpeg m mpfr nlopt openvdb pango-1.0 pangocairo-1.0
-WANTLIB += png qhull_r tbb tiff wx_baseu-3.2 wx_gtk3u_core-3.2
-WANTLIB += wx_gtk3u_gl-3.2 wx_gtk3u_html-3.2 z
+WANTLIB += cairo-gobject curl dbus-1 execinfo expat fontconfig
+WANTLIB += freetype gdk-3 gdk_pixbuf-2.0 gio-2.0 glib-2.0 gmp
+WANTLIB += gobject-2.0 gtk-3 harfbuzz hidapi-libusb intl jpeg
+WANTLIB += m mpfr nlopt openvdb pango-1.0 pangocairo-1.0 png qhull_r
+WANTLIB += tbb tiff wx_baseu-3.2 wx_gtk3u_core-3.2 wx_gtk3u_gl-3.2
+WANTLIB += wx_gtk3u_html-3.2 z
 
 COMPILER =             base-clang ports-gcc
 
@@ -45,8 +46,7 @@ BUILD_DEPENDS =               devel/cereal \
                        devel/gmp,-cxx \
                        math/eigen3
 
-LIB_DEPENDS =          archivers/blosc \
-                       cad/oce \
+LIB_DEPENDS =          cad/opencascade \
                        comms/libhidapi \
                        devel/gmp \
                        devel/tbb \
Index: patches/patch-src_occt_wrapper_CMakeLists_txt
===================================================================
RCS file: 
/cvs/ports/cad/prusaslicer/patches/patch-src_occt_wrapper_CMakeLists_txt,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-src_occt_wrapper_CMakeLists_txt
--- patches/patch-src_occt_wrapper_CMakeLists_txt       12 Sep 2023 00:46:55 
-0000      1.1.1.1
+++ patches/patch-src_occt_wrapper_CMakeLists_txt       19 Oct 2023 07:38:47 
-0000
@@ -1,7 +1,7 @@
 Index: src/occt_wrapper/CMakeLists.txt
 --- src/occt_wrapper/CMakeLists.txt.orig
 +++ src/occt_wrapper/CMakeLists.txt
-@@ -19,9 +19,10 @@ include(GenerateExportHeader)
+@@ -19,9 +19,11 @@ include(GenerateExportHeader)
  
  generate_export_header(OCCTWrapper)
  
@@ -10,10 +10,11 @@ Index: src/occt_wrapper/CMakeLists.txt
  
  set(OCCT_LIBS
 +    -L${CMAKE_INSTALL_PREFIX}/lib
++    -L/usr/X11R6/lib
      TKXDESTEP
      TKSTEP
      TKSTEP209
-@@ -56,5 +57,5 @@ target_link_libraries(OCCTWrapper ${OCCT_LIBS})
+@@ -56,5 +58,5 @@ target_link_libraries(OCCTWrapper ${OCCT_LIBS})
  
  include(GNUInstallDirs)
  

Reply via email to