git: 930c94a06539 - main - cad/freecad-devel: new port
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 22 Nov 2025 12:45:49 UTC
The branch main has been updated by mr:
URL: https://cgit.FreeBSD.org/ports/commit/?id=930c94a06539281df652db301a2311e2075f23e0
commit 930c94a06539281df652db301a2311e2075f23e0
Author: Michael Reifenberger <mr@FreeBSD.org>
AuthorDate: 2025-11-22 12:42:18 +0000
Commit: Michael Reifenberger <mr@FreeBSD.org>
CommitDate: 2025-11-22 12:42:18 +0000
cad/freecad-devel: new port
This is the development version of cad/freecad following currently
the 1.1 branch as of 2025.11.21.
---
cad/freecad-devel/Makefile | 148 +
cad/freecad-devel/Makefile.git_rev | 7 +
cad/freecad-devel/distinfo | 11 +
cad/freecad-devel/files/newVersion.sh | 33 +
cad/freecad-devel/files/patch-cMake_FindOCC.cmake | 10 +
...elpers_SetGlobalCompilerAndLinkerSettings.cmake | 11 +
.../files/patch-src_App_ApplicationDirectories.cpp | 10 +
.../files/patch-src_Gui_CMakeLists.txt | 32 +
.../patch-src_Mod_MeshPart_App_CMakeLists.txt | 18 +
.../patch-src_Mod_TechDraw_App_CMakeLists.txt | 10 +
cad/freecad-devel/pkg-descr | 14 +
cad/freecad-devel/pkg-plist | 3537 ++++++++++++++++++++
12 files changed, 3841 insertions(+)
diff --git a/cad/freecad-devel/Makefile b/cad/freecad-devel/Makefile
new file mode 100644
index 000000000000..4350726282d6
--- /dev/null
+++ b/cad/freecad-devel/Makefile
@@ -0,0 +1,148 @@
+PORTNAME= FreeCAD
+DISTVERSION= r${GIT_SRC_DATE}
+#PORTREVISION= 1
+CATEGORIES= cad
+PKGNAMESUFFIX= -devel
+
+#PATCH_SITES= https://github.com/FreeCAD/FreeCAD/pull/17325/commits/
+#PATCHFILES+= cc302dfc06916719698bd43fe76ddf3cad2d6cc7.patch:-p1
+
+MAINTAINER= mr@FreeBSD.org
+COMMENT= General purpose 3D CAD modeller
+WWW= https://www.freecadweb.org/
+
+LICENSE= LGPL20+
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+CONFLICTS_INSTALL= freecad # bin/FreeCAD
+
+BUILD_DEPENDS= doxygen:devel/doxygen \
+ pybind11-config:devel/py-pybind11@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pyside6-tools>0:devel/pyside6-tools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pivy>0:graphics/py-pivy@${PY_FLAVOR} \
+ ${PYTHON_SITELIBDIR}/matplotlib/__init__.py:math/py-matplotlib@${PY_FLAVOR} \
+ swig:devel/swig
+
+LIB_DEPENDS= libexpat.so:textproc/expat2 \
+ libyaml-cpp.so:devel/yaml-cpp \
+ libfreetype.so:print/freetype2 \
+ libtbb.so:devel/onetbb \
+ ${PY_BOOST} \
+ libpyside6.abi3.so:devel/pyside6 \
+ libCoin.so:graphics/Coin \
+ libfmt.so:devel/libfmt \
+ libpng.so:graphics/png \
+ libtiff.so:graphics/tiff \
+ libvtksys-${VTK_VER}.so:math/vtk${VTK_VER:R} \
+ libTKernel.so:cad/opencascade \
+ libxerces-c.so:textproc/xerces-c3 \
+ libboost_thread.so:devel/boost-libs \
+ libfontconfig.so:x11-fonts/fontconfig \
+ libfreeimage.so:graphics/freeimage \
+ libavutil.so.58:multimedia/ffmpeg \
+ libavformat.so.58:multimedia/ffmpeg4 \
+ libmed.so:french/med \
+ libshiboken6.abi3.so:devel/shiboken6@${PY_FLAVOR} \
+ libhdf5.so:science/hdf5
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pivy>0:graphics/py-pivy@${PY_FLAVOR} \
+ ${PYTHON_SITELIBDIR}/matplotlib/__init__.py:math/py-matplotlib@${PY_FLAVOR}
+
+USES= dos2unix compiler:c++20-lang cmake cpe gl eigen:3 fortran gmake jpeg \
+ localbase:ldflags mpi:openmpi pkgconfig python localbase qt:6 xorg \
+ desktop-file-utils shared-mime-info shebangfix
+USE_GITHUB= yes
+GH_ACCOUNT= FreeCAD:ondsel google:gtest microsoft:gsl FreeCAD:addonmgr
+GH_PROJECT= OndselSolver:ondsel googletest:gtest GSL:gsl AddonManager:addonmgr
+GH_TAGNAME= ${GIT_SRC_HASH} ${GIT_ONDSEL_HASH}:ondsel ${GIT_GTEST_HASH}:gtest ${GIT_GSL_HASH}:gsl ${GIT_ADDONMGR_HASH}:addonmgr
+GH_SUBDIR= src/3rdParty/OndselSolver:ondsel tests/lib:gtest src/3rdParty/GSL:gsl src/Mod/AddonManager:addonmgr
+USE_XORG= ice sm x11 xext xt
+USE_GL= gl glu
+USE_QT= base svg tools
+#USE_QT= buildtools concurrent core declarative designer gui \
+# linguisttools location network opengl printsupport \
+# qmake:build svg webchannel widgets xml xmlpatterns
+USE_LDCONFIG= yes
+
+CPE_VENDOR= freecad_project
+
+VTK_VER= 9.5
+
+DOS2UNIX_GLOB= *.txt *.h *.cpp *.py *.qss *.csv *.pov *.stp *.ui *.wrl *.WRL
+SHEBANG_FILES= src/Tools/freecad-thumbnailer.in
+
+# our HDF5/CMake integration is messy, so workarounds are required below
+CMAKE_ARGS+= -DOCC_INCLUDE_DIR="${LOCALBASE}/include/OpenCASCADE" \
+ -DOPENMPI_INCLUDE_DIRS="${LOCALBASE}/mpi/openmpi/include" \
+ -DFREECAD_QT_VERSION=6 \
+ -DBUILD_QT5="OFF" \
+ -DBUILD_QT6="ON" \
+ -DPYTHON_LIBRARY="${PYTHONBASE}/lib/libpython${PYTHON_VER}${PYTHON_ABIVER}.so" \
+ -DPYTHON_INCLUDE_DIR="${PYTHON_INCLUDEDIR}" \
+ -DPYTHON_PACKAGES_PATH="${PYTHON_SITELIBDIR}" \
+ -DPYTHON_EXECUTABLE="${PYTHON_CMD}" \
+ -DBUILD_ASSEMBLY="ON" \
+ -DBUILD_DESIGNER_PLUGIN="ON" \
+ -DBUILD_FLAT_MESH="ON" \
+ -DBUILD_VR="OFF" \
+ -DFREECAD_USE_EXTERNAL_FMT="ON" \
+ -DFREECAD_CREATE_MAC_APP="OFF" \
+ -DFREECAD_FREECAD_LIBPACK_USE="OFF" \
+ -DFREECAD_USE_EXTERNAL_KDL="OFF" \
+ -DFREECAD_USE_EXTERNAL_SMESH="OFF" \
+ -DFREECAD_USE_FREETYPE="ON" \
+ -DFREECAD_USE_PYBIND11="ON" \
+ -DFREECAD_USE_PCL="OFF" \
+ -Dpybind11_DIR="${PYTHON_SITELIBDIR}/pybind11/share/cmake/pybind11" \
+ -DHDF5_CFLAGS="-I${LOCALBASE}/include" \
+ -DHDF5_FOUND=TRUE \
+ -DHDF5_VERSION="1.12.2" \
+ -DHDF5_INCLUDE_DIRS="${LOCALBASE}/include/hdf5" \
+ -DHDF5_LIBRARIES="-L${LOCALBASE}/lib -lhdf5" \
+ -DHDF5_LIBRARY_DIRS="${LOCALBASE}/lib" \
+ -DPYSIDE2RCCBINARY="${RCC}" \
+ -DPYSIDE2UICBINARY="${UIC}" \
+ -DBUILD_ENABLE_CXX_STD=C++20
+
+
+CMAKE_INSTALL_PREFIX= ${PREFIX}/${PORTNAME}
+# Install XDG icons and files to the standard path
+CMAKE_ARGS+= -DXDG_DATADIR="${PREFIX}/share"
+
+OPTIONS_DEFINE= COLLADA SPNAV
+
+COLLADA_DESC= Install pycollada for Collada files import
+COLLADA_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pycollada>0:graphics/py-pycollada@${PY_FLAVOR}
+OPTIONS_DEFINE= COLLADA SPNAV
+SPNAV_DESC= Enable libspnav (SpaceMouse) support
+SPNAV_CMAKE_BOOL= FREECAD_SPNAV_SUPPORT
+SPNAV_LIB_DEPENDS= libspnav.so:misc/libspnav
+
+
+.include <bsd.port.options.mk>
+
+.if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH} == i386
+PLIST_SUB= WEBENGINE=""
+USE_QT+= webengine
+.else
+CMAKE_ARGS+= -DBUILD_WEB:BOOL=OFF
+PLIST_SUB= WEBENGINE="@comment "
+.endif
+
+.include "Makefile.git_rev"
+
+pre-configure:
+ @${REINPLACE_CMD} -e '/self\.rev/s/Unknown/${DISTVERSION:C/.*-//}/' \
+ ${WRKSRC}/src/Tools/SubWCRev.py
+# Install XDG icons and files to the standard path
+ @${REINPLACE_CMD} -e 's/CMAKE_INSTALL_DATAROOTDIR/XDG_DATADIR/g' \
+ ${WRKSRC}/src/XDGData/CMakeLists.txt \
+ ${WRKSRC}/src/Gui/CMakeLists.txt
+
+post-install:
+ ${LN} -sf ../${PORTNAME}/bin/FreeCAD ${STAGEDIR}${LOCALBASE}/bin/FreeCAD
+ ${LN} -sf ../${PORTNAME}/bin/FreeCADCmd ${STAGEDIR}${LOCALBASE}/bin/FreeCADCmd
+ # ${INSTALL_SCRIPT} ${WRKSRC}/src/Tools/freecad-thumbnailer \
+ # ${STAGEDIR}${PREFIX}/bin/freecad-thumbnailer
+
+.include <bsd.port.mk>
diff --git a/cad/freecad-devel/Makefile.git_rev b/cad/freecad-devel/Makefile.git_rev
new file mode 100644
index 000000000000..d2a16526547e
--- /dev/null
+++ b/cad/freecad-devel/Makefile.git_rev
@@ -0,0 +1,7 @@
+GIT_SRC_HASH= a469c45a2da5322ff9505d0576b7e754c316a357
+GIT_SRC_DATE= 20251121235437
+GIT_SRC_DATE2= 2025.11.21
+GIT_ONDSEL_HASH= 30e9b64e8bf881d438d4b88834f9ba3674865418
+GIT_GSL_HASH= 543d0dd3fe966ddf20e884b44e5fdbf12cb43784
+GIT_GTEST_HASH= f8d7d77c06936315286eb55f8de22cd23c188571
+GIT_ADDONMGR_HASH= 8d35b2ecf17c42a2d4a7428818dea7c712def18e
diff --git a/cad/freecad-devel/distinfo b/cad/freecad-devel/distinfo
new file mode 100644
index 000000000000..9b582c615b74
--- /dev/null
+++ b/cad/freecad-devel/distinfo
@@ -0,0 +1,11 @@
+TIMESTAMP = 1763719220
+SHA256 (FreeCAD-FreeCAD-r20251121084732-ba5652e0466f6d82446143fc3d0225e69aa94f18_GH0.tar.gz) = e1fe849988fcd599d90379321d4d95883e35a75669f1490900790f5f257d0dc6
+SIZE (FreeCAD-FreeCAD-r20251121084732-ba5652e0466f6d82446143fc3d0225e69aa94f18_GH0.tar.gz) = 90601699
+SHA256 (FreeCAD-OndselSolver-30e9b64e8bf881d438d4b88834f9ba3674865418_GH0.tar.gz) = 77646ca7d8cbc6dc4e8304439be2ff2b9aecf397e6349e63b3b06e65dfed79c3
+SIZE (FreeCAD-OndselSolver-30e9b64e8bf881d438d4b88834f9ba3674865418_GH0.tar.gz) = 4667790
+SHA256 (google-googletest-f8d7d77c06936315286eb55f8de22cd23c188571_GH0.tar.gz) = 7ff5db23de232a39cbb5c9f5143c355885e30ac596161a6b9fc50c4538bfbf01
+SIZE (google-googletest-f8d7d77c06936315286eb55f8de22cd23c188571_GH0.tar.gz) = 868904
+SHA256 (microsoft-GSL-543d0dd3fe966ddf20e884b44e5fdbf12cb43784_GH0.tar.gz) = dd06a9190c02f6c04d008366faabc8947c817f33cbc6a838c5bfc9ad79652410
+SIZE (microsoft-GSL-543d0dd3fe966ddf20e884b44e5fdbf12cb43784_GH0.tar.gz) = 65378
+SHA256 (FreeCAD-AddonManager-8d35b2ecf17c42a2d4a7428818dea7c712def18e_GH0.tar.gz) = 4107c14ca95fdb35adc31aae779e5409fc9ef4752ad7a2727a002790d67c3ecc
+SIZE (FreeCAD-AddonManager-8d35b2ecf17c42a2d4a7428818dea7c712def18e_GH0.tar.gz) = 842322
diff --git a/cad/freecad-devel/files/newVersion.sh b/cad/freecad-devel/files/newVersion.sh
new file mode 100644
index 000000000000..539d54f191f4
--- /dev/null
+++ b/cad/freecad-devel/files/newVersion.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+CURDIR=`pwd`
+WRKDIR=`pwd`/work
+#mkdir -p "${WRKDIR}"
+
+if [ \! -d "${CURDIR}/freecad-repo" ]; then
+ git clone https://github.com/FreeCAD/FreeCAD -b main "${CURDIR}/freecad-repo";
+else
+ cd "${CURDIR}/freecad-repo"
+ # git pull https://github.com/FreeCAD/FreeCAD;
+ git pull
+fi
+
+cd "${CURDIR}/freecad-repo"
+GIT_SRC_HASH=`git log -n 1 --pretty=format:"%H"`;
+GIT_SRC_DATE=`git log -n 1 --date=iso-local -n 1 --pretty=format:"%cd" | \
+ cut -c '1-19' | sed -e 's,-,,g' -e 's,:,,g' -e 's, ,,g'`
+GIT_SRC_DATE2=`git log -n 1 --date=iso-local -n 1 --pretty=format:"%cd" --date=format-local:'%Y.%m.%d' | \
+ cut -c '1-19' | sed -e 's,-,,g' -e 's,:,,g' -e 's, ,,g'`
+GIT_ONDSEL_HASH=`git ls-tree HEAD src/3rdParty/OndselSolver/ | awk '{print $3}'`
+GIT_GSL_HASH=`git ls-tree HEAD src/3rdParty/GSL/ | awk '{print $3}'`
+GIT_GTEST_HASH=`git ls-tree HEAD tests/lib/ | awk '{print $3}'`
+GIT_ADDONMGR_HASH=`git ls-tree HEAD src/Mod/AddonManager/ | awk '{print $3}'`
+
+echo "$GIT_SRC_HASH, $GIT_SRC_DATE"
+echo "GIT_SRC_HASH= ${GIT_SRC_HASH}" > ${CURDIR}/Makefile.git_rev
+echo "GIT_SRC_DATE= ${GIT_SRC_DATE}" >> ${CURDIR}/Makefile.git_rev
+echo "GIT_SRC_DATE2= ${GIT_SRC_DATE2}" >> ${CURDIR}/Makefile.git_rev
+echo "GIT_ONDSEL_HASH= ${GIT_ONDSEL_HASH}" >> ${CURDIR}/Makefile.git_rev
+echo "GIT_GSL_HASH= ${GIT_GSL_HASH}" >> ${CURDIR}/Makefile.git_rev
+echo "GIT_GTEST_HASH= ${GIT_GTEST_HASH}" >> ${CURDIR}/Makefile.git_rev
+echo "GIT_ADDONMGR_HASH= ${GIT_ADDONMGR_HASH}" >> ${CURDIR}/Makefile.git_rev
diff --git a/cad/freecad-devel/files/patch-cMake_FindOCC.cmake b/cad/freecad-devel/files/patch-cMake_FindOCC.cmake
new file mode 100644
index 000000000000..4498270ec31b
--- /dev/null
+++ b/cad/freecad-devel/files/patch-cMake_FindOCC.cmake
@@ -0,0 +1,10 @@
+--- cMake/FindOCC.cmake.orig 2025-07-21 02:26:03 UTC
++++ cMake/FindOCC.cmake
+@@ -109,6 +109,7 @@ if (OCC_FOUND)
+ TKPrim
+ TKHLR
+ TKFeat
++ TKExpress
+ )
+ if (OCC_VERSION_STRING VERSION_GREATER_EQUAL 7.9.0)
+ list(APPEND OCC_LIBRARIES TKExpress)
diff --git a/cad/freecad-devel/files/patch-cMake_FreeCAD__Helpers_SetGlobalCompilerAndLinkerSettings.cmake b/cad/freecad-devel/files/patch-cMake_FreeCAD__Helpers_SetGlobalCompilerAndLinkerSettings.cmake
new file mode 100644
index 000000000000..51bce51f26df
--- /dev/null
+++ b/cad/freecad-devel/files/patch-cMake_FreeCAD__Helpers_SetGlobalCompilerAndLinkerSettings.cmake
@@ -0,0 +1,11 @@
+--- cMake/FreeCAD_Helpers/SetGlobalCompilerAndLinkerSettings.cmake.orig 2025-04-17 06:38:38 UTC
++++ cMake/FreeCAD_Helpers/SetGlobalCompilerAndLinkerSettings.cmake
+@@ -103,4 +103,8 @@ macro(SetGlobalCompilerAndLinkerSettings)
+ endif()
+ endif(MINGW)
+
++# Enable the Topological Naming Problem mitigation code
++add_compile_options(-DFC_USE_TNP_FIX)
++
++
+ endmacro(SetGlobalCompilerAndLinkerSettings)
diff --git a/cad/freecad-devel/files/patch-src_App_ApplicationDirectories.cpp b/cad/freecad-devel/files/patch-src_App_ApplicationDirectories.cpp
new file mode 100644
index 000000000000..6fe8aeda6539
--- /dev/null
+++ b/cad/freecad-devel/files/patch-src_App_ApplicationDirectories.cpp
@@ -0,0 +1,10 @@
+--- src/App/ApplicationDirectories.cpp.orig 2025-09-10 20:44:18 UTC
++++ src/App/ApplicationDirectories.cpp
+@@ -33,6 +33,7 @@
+
+ #if defined(FC_OS_LINUX) || defined(FC_OS_MACOSX) || defined(FC_OS_BSD)
+ #include <pwd.h>
++#include <sys/sysctl.h>
+ #endif
+
+ #include <Base/FileInfo.h>
diff --git a/cad/freecad-devel/files/patch-src_Gui_CMakeLists.txt b/cad/freecad-devel/files/patch-src_Gui_CMakeLists.txt
new file mode 100644
index 000000000000..c0700d18c931
--- /dev/null
+++ b/cad/freecad-devel/files/patch-src_Gui_CMakeLists.txt
@@ -0,0 +1,32 @@
+--- src/Gui/CMakeLists.txt.orig 2025-09-10 18:14:29 UTC
++++ src/Gui/CMakeLists.txt
+@@ -107,7 +107,7 @@ else(MSVC)
+ set(FreeCADGui_LIBS
+ FreeCADApp
+ ${Boost_LIBRARIES}
+- ${OPENGL_gl_LIBRARY}
++ ${OPENGL_gl_LIBRARY} -L${CMAKE_INSTALL_PREFIX}/lib
+ ${3DCONNEXION_LINKFLAGS}
+ )
+ endif(MSVC)
+@@ -1528,13 +1528,13 @@ else(WIN32)
+ INSTALL(TARGETS FreeCADGui
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ )
+- INSTALL(FILES Icons/freecad-icon-16.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps RENAME org.freecad.FreeCAD.png)
+- INSTALL(FILES Icons/freecad-icon-32.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/32x32/apps RENAME org.freecad.FreeCAD.png)
+- INSTALL(FILES Icons/freecad-icon-48.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/48x48/apps RENAME org.freecad.FreeCAD.png)
+- INSTALL(FILES Icons/freecad-icon-64.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/64x64/apps RENAME org.freecad.FreeCAD.png)
+- INSTALL(FILES Icons/freecad.svg DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/apps RENAME org.freecad.FreeCAD.svg)
+- INSTALL(FILES Icons/freecad.svg DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pixmaps)
+- INSTALL(FILES Icons/freecad-doc.svg DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/mimetypes RENAME application-x-extension-fcstd.svg)
++ INSTALL(FILES Icons/freecad-icon-16.png DESTINATION ${XDG_DATADIR}/icons/hicolor/16x16/apps RENAME org.freecad.FreeCAD.png)
++ INSTALL(FILES Icons/freecad-icon-32.png DESTINATION ${XDG_DATADIR}/icons/hicolor/32x32/apps RENAME org.freecad.FreeCAD.png)
++ INSTALL(FILES Icons/freecad-icon-48.png DESTINATION ${XDG_DATADIR}/icons/hicolor/48x48/apps RENAME org.freecad.FreeCAD.png)
++ INSTALL(FILES Icons/freecad-icon-64.png DESTINATION ${XDG_DATADIR}/icons/hicolor/64x64/apps RENAME org.freecad.FreeCAD.png)
++ INSTALL(FILES Icons/freecad.svg DESTINATION ${XDG_DATADIR}/icons/hicolor/scalable/apps RENAME org.freecad.FreeCAD.svg)
++ INSTALL(FILES Icons/freecad.svg DESTINATION ${XDG_DATADIR}/pixmaps)
++ INSTALL(FILES Icons/freecad-doc.svg DESTINATION ${XDG_DATADIR}/icons/hicolor/scalable/mimetypes RENAME application-x-extension-fcstd.svg)
+ endif(WIN32)
+
+ set(FreeCADGui_Scripts
diff --git a/cad/freecad-devel/files/patch-src_Mod_MeshPart_App_CMakeLists.txt b/cad/freecad-devel/files/patch-src_Mod_MeshPart_App_CMakeLists.txt
new file mode 100644
index 000000000000..70119a30b46c
--- /dev/null
+++ b/cad/freecad-devel/files/patch-src_Mod_MeshPart_App_CMakeLists.txt
@@ -0,0 +1,18 @@
+--- src/Mod/MeshPart/App/CMakeLists.txt.orig 2025-03-24 09:50:06 UTC
++++ src/Mod/MeshPart/App/CMakeLists.txt
+@@ -14,6 +14,7 @@ include_directories(
+ include_directories(
+ ${CMAKE_BINARY_DIR}
+ ${CMAKE_SOURCE_DIR}/src
++ ${pybind11_INCLUDE_DIR}
+ )
+
+ target_include_directories(
+@@ -22,6 +23,7 @@ target_include_directories(
+ PUBLIC
+ ${SMESH_INCLUDE_DIR}
+ ${VTK_INCLUDE_DIRS}
++ ${pybind11_INCLUDE_DIR}
+ )
+
+ target_include_directories(
diff --git a/cad/freecad-devel/files/patch-src_Mod_TechDraw_App_CMakeLists.txt b/cad/freecad-devel/files/patch-src_Mod_TechDraw_App_CMakeLists.txt
new file mode 100644
index 000000000000..012f752b2331
--- /dev/null
+++ b/cad/freecad-devel/files/patch-src_Mod_TechDraw_App_CMakeLists.txt
@@ -0,0 +1,10 @@
+--- src/Mod/TechDraw/App/CMakeLists.txt.orig 2025-03-24 09:38:26 UTC
++++ src/Mod/TechDraw/App/CMakeLists.txt
+@@ -24,6 +24,7 @@ include_directories(
+ ${QtCore_INCLUDE_DIR}
+ ${QtGui_INCLUDE_DIR}
+ ${QtWidgets_INCLUDE_DIRS}
++ ${pybind11_INCLUDE_DIR}
+ )
+
+ list(APPEND TechDrawLIBS
diff --git a/cad/freecad-devel/pkg-descr b/cad/freecad-devel/pkg-descr
new file mode 100644
index 000000000000..2e6f36f1a3c4
--- /dev/null
+++ b/cad/freecad-devel/pkg-descr
@@ -0,0 +1,14 @@
+FreeCAD is a general purpose parametric 3D modeler.
+
+FreeCAD is aimed directly at mechanical engineering and product
+design but also fits in a wider range of uses around engineering,
+such as architecture or other engineering specialties.
+
+FreeCAD features tools similar to Catia, SolidWorks or Solid Edge,
+and therefore also falls into the category of MCAD, PLM, CAx and
+CAE. It is a feature based parametric modeler with a modular software
+architecture which makes it easy to provide additional functionality
+without modifying the core system.
+
+ FreeCAD is under heavy development and might not be
+ ready for production use.
diff --git a/cad/freecad-devel/pkg-plist b/cad/freecad-devel/pkg-plist
new file mode 100644
index 000000000000..4fb0b72b338d
--- /dev/null
+++ b/cad/freecad-devel/pkg-plist
@@ -0,0 +1,3537 @@
+FreeCAD/Ext/PySide/QtCore.py
+FreeCAD/Ext/PySide/QtGui.py
+FreeCAD/Ext/PySide/QtNetwork.py
+FreeCAD/Ext/PySide/QtSvg.py
+FreeCAD/Ext/PySide/QtSvgWidgets.py
+FreeCAD/Ext/PySide/QtUiTools.py
+FreeCAD/Ext/PySide/QtWebEngineWidgets.py
+FreeCAD/Ext/PySide/QtWidgets.py
+FreeCAD/Ext/PySide/__init__.py
+FreeCAD/Ext/freecad/gui/RemoteDebugger.py
+FreeCAD/Ext/freecad/gui/RemoteDebugger.ui
+FreeCAD/Ext/lazy_loader/__init__.py
+FreeCAD/Ext/lazy_loader/lazy_loader.py
+FreeCAD/Mod/AddonManager/ALLOWED_PYTHON_PACKAGES.txt
+FreeCAD/Mod/AddonManager/Addon.py
+FreeCAD/Mod/AddonManager/AddonCatalog.py
+FreeCAD/Mod/AddonManager/AddonCatalog.schema.json
+FreeCAD/Mod/AddonManager/AddonCatalogCacheCreator.py
+FreeCAD/Mod/AddonManager/AddonManager.py
+FreeCAD/Mod/AddonManager/AddonManager.ui
+FreeCAD/Mod/AddonManager/AddonManagerOptions.py
+FreeCAD/Mod/AddonManager/AddonManagerOptions.ui
+FreeCAD/Mod/AddonManager/AddonManagerOptions_AddCustomRepository.ui
+FreeCAD/Mod/AddonManager/AddonStats.py
+FreeCAD/Mod/AddonManager/Init.py
+FreeCAD/Mod/AddonManager/InitGui.py
+FreeCAD/Mod/AddonManager/LICENSE.md
+FreeCAD/Mod/AddonManager/MacroCacheCreator.py
+FreeCAD/Mod/AddonManager/NetworkManager.py
+FreeCAD/Mod/AddonManager/PySideWrapper.py
+FreeCAD/Mod/AddonManager/PythonDependencyUpdateDialog.ui
+FreeCAD/Mod/AddonManager/Resources/icons/addon_manager.svg
+FreeCAD/Mod/AddonManager/Resources/icons/addon_manager_with_warning.svg
+FreeCAD/Mod/AddonManager/Resources/icons/button_left.svg
+FreeCAD/Mod/AddonManager/Resources/icons/button_valid.svg
+FreeCAD/Mod/AddonManager/Resources/icons/compact_view.svg
+FreeCAD/Mod/AddonManager/Resources/icons/composite_view.svg
+FreeCAD/Mod/AddonManager/Resources/icons/debug-stop.svg
+FreeCAD/Mod/AddonManager/Resources/icons/document-package.svg
+FreeCAD/Mod/AddonManager/Resources/icons/document-python.svg
+FreeCAD/Mod/AddonManager/Resources/icons/expanded_view.svg
+FreeCAD/Mod/AddonManager/Resources/icons/gear.svg
+FreeCAD/Mod/AddonManager/Resources/icons/list-add.svg
+FreeCAD/Mod/AddonManager/Resources/icons/list-remove.svg
+FreeCAD/Mod/AddonManager/Resources/icons/preferences-addon_manager.svg
+FreeCAD/Mod/AddonManager/Resources/icons/process-stop.svg
+FreeCAD/Mod/AddonManager/Resources/icons/regex_bad.svg
+FreeCAD/Mod/AddonManager/Resources/icons/regex_ok.svg
+FreeCAD/Mod/AddonManager/Resources/icons/sort_ascending.svg
+FreeCAD/Mod/AddonManager/Resources/icons/sort_descending.svg
+FreeCAD/Mod/AddonManager/Resources/icons/spinner.svg
+FreeCAD/Mod/AddonManager/Resources/icons/view-refresh.svg
+FreeCAD/Mod/AddonManager/Resources/licenses/Apache-2.0.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/BSD-2-Clause.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/BSD-3-Clause.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/CC0-1.0.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/GPL-2.0-or-later.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/GPL-3.0-or-later.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/LGPL-2.1-or-later.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/LGPL-3.0-or-later.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/MIT.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/MPL-2.0.txt
+FreeCAD/Mod/AddonManager/Resources/licenses/spdx.json
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_be.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_ca.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_cs.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_da.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_de.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_el.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_es-AR.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_es-CO.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_es-ES.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_es-VE.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_eu.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_fr.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_hr.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_hu.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_it.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_ja.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_ka.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_pl.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_pt-BR.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_pt-PT.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_ru.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_sr-CS.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_sr-SP.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_uk.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_zh-CN.qm
+FreeCAD/Mod/AddonManager/Resources/translations/AddonManager_zh-TW.qm
+FreeCAD/Mod/AddonManager/TestAddonManagerApp.py
+FreeCAD/Mod/AddonManager/TestAddonManagerGui.py
+FreeCAD/Mod/AddonManager/Widgets/__init__.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_colors.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_utility_dialogs.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_widget_addon_buttons.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_widget_filter_selector.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_widget_global_buttons.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_widget_package_details_view.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_widget_progress_bar.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_widget_readme_browser.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_widget_search.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_widget_view_control_bar.py
+FreeCAD/Mod/AddonManager/Widgets/addonmanager_widget_view_selector.py
+FreeCAD/Mod/AddonManager/Widgets/spinner.py
+FreeCAD/Mod/AddonManager/__init__.py
+FreeCAD/Mod/AddonManager/add_toolbar_button_dialog.ui
+FreeCAD/Mod/AddonManager/addonmanager.dox
+FreeCAD/Mod/AddonManager/addonmanager_connection_checker.py
+FreeCAD/Mod/AddonManager/addonmanager_dependency_installer.py
+FreeCAD/Mod/AddonManager/addonmanager_firstrun.py
+FreeCAD/Mod/AddonManager/addonmanager_freecad_interface.py
+FreeCAD/Mod/AddonManager/addonmanager_git.py
+FreeCAD/Mod/AddonManager/addonmanager_icon_utilities.py
+FreeCAD/Mod/AddonManager/addonmanager_installation_manifest.py
+FreeCAD/Mod/AddonManager/addonmanager_installer.py
+FreeCAD/Mod/AddonManager/addonmanager_installer_gui.py
+FreeCAD/Mod/AddonManager/addonmanager_licenses.py
+FreeCAD/Mod/AddonManager/addonmanager_macro.py
+FreeCAD/Mod/AddonManager/addonmanager_macro_parser.py
+FreeCAD/Mod/AddonManager/addonmanager_metadata.py
+FreeCAD/Mod/AddonManager/addonmanager_package_details_controller.py
+FreeCAD/Mod/AddonManager/addonmanager_preferences_defaults.json
+FreeCAD/Mod/AddonManager/addonmanager_preferences_migrations.py
+FreeCAD/Mod/AddonManager/addonmanager_python_deps.py
+FreeCAD/Mod/AddonManager/addonmanager_python_deps_gui.py
+FreeCAD/Mod/AddonManager/addonmanager_readme_controller.py
+FreeCAD/Mod/AddonManager/addonmanager_toolbar_adapter.py
+FreeCAD/Mod/AddonManager/addonmanager_uninstaller.py
+FreeCAD/Mod/AddonManager/addonmanager_uninstaller_gui.py
+FreeCAD/Mod/AddonManager/addonmanager_update_all_gui.py
+FreeCAD/Mod/AddonManager/addonmanager_utilities.py
+FreeCAD/Mod/AddonManager/addonmanager_workers_startup.py
+FreeCAD/Mod/AddonManager/addonmanager_workers_utility.py
+FreeCAD/Mod/AddonManager/compact_view.py
+FreeCAD/Mod/AddonManager/compact_view.ui
+FreeCAD/Mod/AddonManager/composite_view.py
+FreeCAD/Mod/AddonManager/dependency_resolution_dialog.ui
+FreeCAD/Mod/AddonManager/expanded_view.py
+FreeCAD/Mod/AddonManager/expanded_view.ui
+FreeCAD/Mod/AddonManager/first_run.ui
+FreeCAD/Mod/AddonManager/package.xml
+FreeCAD/Mod/AddonManager/package_details.ui
+FreeCAD/Mod/AddonManager/package_list.py
+FreeCAD/Mod/AddonManager/progress.ui
+FreeCAD/Mod/AddonManager/proxy_authentication.ui
+FreeCAD/Mod/AddonManager/select_toolbar_dialog.ui
+FreeCAD/Mod/AddonManager/toolbar_button.ui
+FreeCAD/Mod/AddonManager/update_all.ui
+FreeCAD/Mod/AddonManager/update_all_progress.ui
+FreeCAD/Mod/Assembly/Assembly/__init__.py
+FreeCAD/Mod/Assembly/AssemblyImport.py
+FreeCAD/Mod/Assembly/AssemblyTests/MockGui.py
+FreeCAD/Mod/Assembly/AssemblyTests/TestCommandInsertLink.py
+FreeCAD/Mod/Assembly/AssemblyTests/TestCore.py
+FreeCAD/Mod/Assembly/AssemblyTests/__init__.py
+FreeCAD/Mod/Assembly/Assembly_rc.py
+FreeCAD/Mod/Assembly/CommandCreateAssembly.py
+FreeCAD/Mod/Assembly/CommandCreateBom.py
+FreeCAD/Mod/Assembly/CommandCreateJoint.py
+FreeCAD/Mod/Assembly/CommandCreateSimulation.py
+FreeCAD/Mod/Assembly/CommandCreateView.py
+FreeCAD/Mod/Assembly/CommandExportASMT.py
+FreeCAD/Mod/Assembly/CommandInsertLink.py
+FreeCAD/Mod/Assembly/CommandInsertNewPart.py
+FreeCAD/Mod/Assembly/CommandSolveAssembly.py
+FreeCAD/Mod/Assembly/Init.py
+FreeCAD/Mod/Assembly/InitGui.py
+FreeCAD/Mod/Assembly/JointObject.py
+FreeCAD/Mod/Assembly/Preferences.py
+FreeCAD/Mod/Assembly/SoSwitchMarker.py
+FreeCAD/Mod/Assembly/TestAssemblyWorkbench.py
+FreeCAD/Mod/Assembly/UtilsAssembly.py
+FreeCAD/Mod/BIM/Arch.py
+FreeCAD/Mod/BIM/ArchAxis.py
+FreeCAD/Mod/BIM/ArchAxisSystem.py
+FreeCAD/Mod/BIM/ArchBuildingPart.py
+FreeCAD/Mod/BIM/ArchCommands.py
+FreeCAD/Mod/BIM/ArchComponent.py
+FreeCAD/Mod/BIM/ArchCurtainWall.py
+FreeCAD/Mod/BIM/ArchCutPlane.py
+FreeCAD/Mod/BIM/ArchEquipment.py
+FreeCAD/Mod/BIM/ArchFence.py
+FreeCAD/Mod/BIM/ArchFrame.py
+FreeCAD/Mod/BIM/ArchGrid.py
+FreeCAD/Mod/BIM/ArchIFC.py
+FreeCAD/Mod/BIM/ArchIFCSchema.py
+FreeCAD/Mod/BIM/ArchIFCView.py
+FreeCAD/Mod/BIM/ArchMaterial.py
+FreeCAD/Mod/BIM/ArchNesting.py
+FreeCAD/Mod/BIM/ArchPanel.py
+FreeCAD/Mod/BIM/ArchPipe.py
+FreeCAD/Mod/BIM/ArchPrecast.py
+FreeCAD/Mod/BIM/ArchProfile.py
+FreeCAD/Mod/BIM/ArchProject.py
+FreeCAD/Mod/BIM/ArchRebar.py
+FreeCAD/Mod/BIM/ArchReference.py
+FreeCAD/Mod/BIM/ArchRoof.py
+FreeCAD/Mod/BIM/ArchSchedule.py
+FreeCAD/Mod/BIM/ArchSectionPlane.py
+FreeCAD/Mod/BIM/ArchSite.py
+FreeCAD/Mod/BIM/ArchSketchObject.py
+FreeCAD/Mod/BIM/ArchSpace.py
+FreeCAD/Mod/BIM/ArchStairs.py
+FreeCAD/Mod/BIM/ArchStructure.py
+FreeCAD/Mod/BIM/ArchTruss.py
+FreeCAD/Mod/BIM/ArchVRM.py
+FreeCAD/Mod/BIM/ArchWall.py
+FreeCAD/Mod/BIM/ArchWindow.py
+FreeCAD/Mod/BIM/ArchWindowPresets.py
+FreeCAD/Mod/BIM/Arch_rc.py
+FreeCAD/Mod/BIM/BimSelect.py
+FreeCAD/Mod/BIM/BimStatus.py
+FreeCAD/Mod/BIM/Dice3DS/__init__.py
+FreeCAD/Mod/BIM/Dice3DS/dom3ds.py
+FreeCAD/Mod/BIM/Dice3DS/util.py
+FreeCAD/Mod/BIM/Init.py
+FreeCAD/Mod/BIM/InitGui.py
+FreeCAD/Mod/BIM/OfflineRenderingUtils.py
+FreeCAD/Mod/BIM/TestArch.py
+FreeCAD/Mod/BIM/TestArchGui.py
+FreeCAD/Mod/BIM/bimcommands/BimArchUtils.py
+FreeCAD/Mod/BIM/bimcommands/BimAxis.py
+FreeCAD/Mod/BIM/bimcommands/BimBackground.py
+FreeCAD/Mod/BIM/bimcommands/BimBeam.py
+FreeCAD/Mod/BIM/bimcommands/BimBox.py
+FreeCAD/Mod/BIM/bimcommands/BimBuilder.py
+FreeCAD/Mod/BIM/bimcommands/BimBuildingPart.py
+FreeCAD/Mod/BIM/bimcommands/BimClassification.py
+FreeCAD/Mod/BIM/bimcommands/BimClone.py
+FreeCAD/Mod/BIM/bimcommands/BimColumn.py
+FreeCAD/Mod/BIM/bimcommands/BimCommon.py
+FreeCAD/Mod/BIM/bimcommands/BimCompound.py
+FreeCAD/Mod/BIM/bimcommands/BimConvert.py
+FreeCAD/Mod/BIM/bimcommands/BimCopy.py
+FreeCAD/Mod/BIM/bimcommands/BimCurtainwall.py
+FreeCAD/Mod/BIM/bimcommands/BimCut.py
+FreeCAD/Mod/BIM/bimcommands/BimCutPlane.py
+FreeCAD/Mod/BIM/bimcommands/BimDiff.py
+FreeCAD/Mod/BIM/bimcommands/BimDimensions.py
+FreeCAD/Mod/BIM/bimcommands/BimDoor.py
+FreeCAD/Mod/BIM/bimcommands/BimDrawingView.py
+FreeCAD/Mod/BIM/bimcommands/BimEmptyTrash.py
+FreeCAD/Mod/BIM/bimcommands/BimEquipment.py
+FreeCAD/Mod/BIM/bimcommands/BimExamples.py
+FreeCAD/Mod/BIM/bimcommands/BimExtrude.py
+FreeCAD/Mod/BIM/bimcommands/BimFence.py
+FreeCAD/Mod/BIM/bimcommands/BimFrame.py
+FreeCAD/Mod/BIM/bimcommands/BimFuse.py
+FreeCAD/Mod/BIM/bimcommands/BimGlue.py
+FreeCAD/Mod/BIM/bimcommands/BimHelp.py
+FreeCAD/Mod/BIM/bimcommands/BimIfcElements.py
+FreeCAD/Mod/BIM/bimcommands/BimIfcExplorer.py
+FreeCAD/Mod/BIM/bimcommands/BimIfcProperties.py
+FreeCAD/Mod/BIM/bimcommands/BimIfcQuantities.py
+FreeCAD/Mod/BIM/bimcommands/BimImagePlane.py
+FreeCAD/Mod/BIM/bimcommands/BimLayers.py
+FreeCAD/Mod/BIM/bimcommands/BimLeader.py
+FreeCAD/Mod/BIM/bimcommands/BimLibrary.py
+FreeCAD/Mod/BIM/bimcommands/BimMaterial.py
+FreeCAD/Mod/BIM/bimcommands/BimMoveView.py
+FreeCAD/Mod/BIM/bimcommands/BimNudge.py
+FreeCAD/Mod/BIM/bimcommands/BimOffset.py
+FreeCAD/Mod/BIM/bimcommands/BimPanel.py
+FreeCAD/Mod/BIM/bimcommands/BimPipe.py
+FreeCAD/Mod/BIM/bimcommands/BimPreflight.py
+FreeCAD/Mod/BIM/bimcommands/BimProfile.py
+FreeCAD/Mod/BIM/bimcommands/BimProject.py
+FreeCAD/Mod/BIM/bimcommands/BimProjectManager.py
+FreeCAD/Mod/BIM/bimcommands/BimRebar.py
+FreeCAD/Mod/BIM/bimcommands/BimReextrude.py
+FreeCAD/Mod/BIM/bimcommands/BimReference.py
+FreeCAD/Mod/BIM/bimcommands/BimReorder.py
+FreeCAD/Mod/BIM/bimcommands/BimResetCloneColors.py
+FreeCAD/Mod/BIM/bimcommands/BimRewire.py
+FreeCAD/Mod/BIM/bimcommands/BimRoof.py
+FreeCAD/Mod/BIM/bimcommands/BimSchedule.py
+FreeCAD/Mod/BIM/bimcommands/BimSectionPlane.py
+FreeCAD/Mod/BIM/bimcommands/BimSetup.py
+FreeCAD/Mod/BIM/bimcommands/BimShape2DView.py
+FreeCAD/Mod/BIM/bimcommands/BimSimpleCopy.py
+FreeCAD/Mod/BIM/bimcommands/BimSite.py
+FreeCAD/Mod/BIM/bimcommands/BimSketch.py
+FreeCAD/Mod/BIM/bimcommands/BimSlab.py
+FreeCAD/Mod/BIM/bimcommands/BimSpace.py
+FreeCAD/Mod/BIM/bimcommands/BimStairs.py
+FreeCAD/Mod/BIM/bimcommands/BimTDPage.py
+FreeCAD/Mod/BIM/bimcommands/BimTDView.py
+FreeCAD/Mod/BIM/bimcommands/BimText.py
+FreeCAD/Mod/BIM/bimcommands/BimTogglePanels.py
+FreeCAD/Mod/BIM/bimcommands/BimTrash.py
+FreeCAD/Mod/BIM/bimcommands/BimTruss.py
+FreeCAD/Mod/BIM/bimcommands/BimTutorial.py
+FreeCAD/Mod/BIM/bimcommands/BimUnclone.py
+FreeCAD/Mod/BIM/bimcommands/BimUngroup.py
+FreeCAD/Mod/BIM/bimcommands/BimViews.py
+FreeCAD/Mod/BIM/bimcommands/BimWPCommands.py
+FreeCAD/Mod/BIM/bimcommands/BimWall.py
+FreeCAD/Mod/BIM/bimcommands/BimWelcome.py
+FreeCAD/Mod/BIM/bimcommands/BimWindow.py
+FreeCAD/Mod/BIM/bimcommands/BimWindows.py
+FreeCAD/Mod/BIM/bimcommands/__init__.py
+FreeCAD/Mod/BIM/bimtests/TestArchAxis.py
+FreeCAD/Mod/BIM/bimtests/TestArchBase.py
+FreeCAD/Mod/BIM/bimtests/TestArchBaseGui.py
+FreeCAD/Mod/BIM/bimtests/TestArchBuildingPart.py
+FreeCAD/Mod/BIM/bimtests/TestArchBuildingPartGui.py
+FreeCAD/Mod/BIM/bimtests/TestArchComponent.py
+FreeCAD/Mod/BIM/bimtests/TestArchCurtainWall.py
+FreeCAD/Mod/BIM/bimtests/TestArchEquipment.py
+FreeCAD/Mod/BIM/bimtests/TestArchFence.py
+FreeCAD/Mod/BIM/bimtests/TestArchFrame.py
+FreeCAD/Mod/BIM/bimtests/TestArchGrid.py
+FreeCAD/Mod/BIM/bimtests/TestArchImportersGui.py
+FreeCAD/Mod/BIM/bimtests/TestArchMaterial.py
+FreeCAD/Mod/BIM/bimtests/TestArchPanel.py
+FreeCAD/Mod/BIM/bimtests/TestArchPipe.py
+FreeCAD/Mod/BIM/bimtests/TestArchProfile.py
+FreeCAD/Mod/BIM/bimtests/TestArchProject.py
+FreeCAD/Mod/BIM/bimtests/TestArchRebar.py
+FreeCAD/Mod/BIM/bimtests/TestArchReference.py
+FreeCAD/Mod/BIM/bimtests/TestArchRoof.py
+FreeCAD/Mod/BIM/bimtests/TestArchSchedule.py
+FreeCAD/Mod/BIM/bimtests/TestArchSectionPlane.py
+FreeCAD/Mod/BIM/bimtests/TestArchSiteGui.py
+FreeCAD/Mod/BIM/bimtests/TestArchSpace.py
+FreeCAD/Mod/BIM/bimtests/TestArchStairs.py
+FreeCAD/Mod/BIM/bimtests/TestArchStructure.py
+FreeCAD/Mod/BIM/bimtests/TestArchTruss.py
+FreeCAD/Mod/BIM/bimtests/TestArchWall.py
+FreeCAD/Mod/BIM/bimtests/TestArchWindow.py
+FreeCAD/Mod/BIM/bimtests/TestWebGLExport.py
+FreeCAD/Mod/BIM/bimtests/TestWebGLExportGui.py
+FreeCAD/Mod/BIM/bimtests/fixtures/FC_site_simple-102.FCStd
+FreeCAD/Mod/BIM/importers/Sample.sh3d
+FreeCAD/Mod/BIM/importers/__init__.py
+FreeCAD/Mod/BIM/importers/exportIFC.py
+FreeCAD/Mod/BIM/importers/exportIFCHelper.py
+FreeCAD/Mod/BIM/importers/exportIFCStructuralTools.py
+FreeCAD/Mod/BIM/importers/import3DS.py
+FreeCAD/Mod/BIM/importers/importDAE.py
+FreeCAD/Mod/BIM/importers/importGBXML.py
+FreeCAD/Mod/BIM/importers/importIFC.py
+FreeCAD/Mod/BIM/importers/importIFCHelper.py
+FreeCAD/Mod/BIM/importers/importIFClegacy.py
+FreeCAD/Mod/BIM/importers/importIFCmulticore.py
+FreeCAD/Mod/BIM/importers/importJSON.py
+FreeCAD/Mod/BIM/importers/importOBJ.py
+FreeCAD/Mod/BIM/importers/importSH3D.py
+FreeCAD/Mod/BIM/importers/importSH3DHelper.py
+FreeCAD/Mod/BIM/importers/importSHP.py
+FreeCAD/Mod/BIM/importers/importWebGL.py
+FreeCAD/Mod/BIM/nativeifc/__init__.py
+FreeCAD/Mod/BIM/nativeifc/ifc_classification.py
+FreeCAD/Mod/BIM/nativeifc/ifc_commands.py
+FreeCAD/Mod/BIM/nativeifc/ifc_diff.py
+FreeCAD/Mod/BIM/nativeifc/ifc_export.py
+FreeCAD/Mod/BIM/nativeifc/ifc_generator.py
+FreeCAD/Mod/BIM/nativeifc/ifc_geometry.py
+FreeCAD/Mod/BIM/nativeifc/ifc_import.py
+FreeCAD/Mod/BIM/nativeifc/ifc_layers.py
+FreeCAD/Mod/BIM/nativeifc/ifc_materials.py
+FreeCAD/Mod/BIM/nativeifc/ifc_objects.py
+FreeCAD/Mod/BIM/nativeifc/ifc_observer.py
+FreeCAD/Mod/BIM/nativeifc/ifc_openshell.py
+FreeCAD/Mod/BIM/nativeifc/ifc_performance_test.py
+FreeCAD/Mod/BIM/nativeifc/ifc_psets.py
+FreeCAD/Mod/BIM/nativeifc/ifc_selftest.py
+FreeCAD/Mod/BIM/nativeifc/ifc_status.py
+FreeCAD/Mod/BIM/nativeifc/ifc_tools.py
+FreeCAD/Mod/BIM/nativeifc/ifc_tree.py
+FreeCAD/Mod/BIM/nativeifc/ifc_types.py
+FreeCAD/Mod/BIM/nativeifc/ifc_viewproviders.py
+FreeCAD/Mod/CAM/CAMTests/Drilling_1.FCStd
+FreeCAD/Mod/CAM/CAMTests/FilePathTestUtils.py
+FreeCAD/Mod/CAM/CAMTests/Fixtures/OpHelix_v0-21.FCStd
+FreeCAD/Mod/CAM/CAMTests/PathTestUtils.py
+FreeCAD/Mod/CAM/CAMTests/TestCAMSanity.py
+FreeCAD/Mod/CAM/CAMTests/TestCentroidPost.py
+FreeCAD/Mod/CAM/CAMTests/TestGrblPost.py
+FreeCAD/Mod/CAM/CAMTests/TestLinuxCNCPost.py
+FreeCAD/Mod/CAM/CAMTests/TestMach3Mach4Post.py
+FreeCAD/Mod/CAM/CAMTests/TestPathAdaptive.py
+FreeCAD/Mod/CAM/CAMTests/TestPathCore.py
+FreeCAD/Mod/CAM/CAMTests/TestPathDepthParams.py
+FreeCAD/Mod/CAM/CAMTests/TestPathDressupArray.py
+FreeCAD/Mod/CAM/CAMTests/TestPathDressupDogbone.py
+FreeCAD/Mod/CAM/CAMTests/TestPathDressupDogboneII.py
+FreeCAD/Mod/CAM/CAMTests/TestPathDressupHoldingTags.py
+FreeCAD/Mod/CAM/CAMTests/TestPathDrillGenerator.py
+FreeCAD/Mod/CAM/CAMTests/TestPathDrillable.py
+FreeCAD/Mod/CAM/CAMTests/TestPathGeneratorDogboneII.py
+FreeCAD/Mod/CAM/CAMTests/TestPathGeom.py
+FreeCAD/Mod/CAM/CAMTests/TestPathHelix.py
+FreeCAD/Mod/CAM/CAMTests/TestPathHelixGenerator.py
+FreeCAD/Mod/CAM/CAMTests/TestPathHelpers.py
+FreeCAD/Mod/CAM/CAMTests/TestPathLanguage.py
+FreeCAD/Mod/CAM/CAMTests/TestPathLog.py
+FreeCAD/Mod/CAM/CAMTests/TestPathOpDeburr.py
+FreeCAD/Mod/CAM/CAMTests/TestPathOpUtil.py
+FreeCAD/Mod/CAM/CAMTests/TestPathPost.py
+FreeCAD/Mod/CAM/CAMTests/TestPathPreferences.py
+FreeCAD/Mod/CAM/CAMTests/TestPathProfile.py
+FreeCAD/Mod/CAM/CAMTests/TestPathPropertyBag.py
+FreeCAD/Mod/CAM/CAMTests/TestPathRotationGenerator.py
+FreeCAD/Mod/CAM/CAMTests/TestPathSetupSheet.py
+FreeCAD/Mod/CAM/CAMTests/TestPathStock.py
+FreeCAD/Mod/CAM/CAMTests/TestPathTapGenerator.py
+FreeCAD/Mod/CAM/CAMTests/TestPathThreadMilling.py
+FreeCAD/Mod/CAM/CAMTests/TestPathThreadMillingGenerator.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolAsset.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolAssetCache.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolAssetManager.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolAssetStore.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolAssetUri.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolBit.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolBitBrowserWidget.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolBitEditorWidget.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolBitListWidget.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolBitPropertyEditorWidget.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolBitSerializer.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolChangeGenerator.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolController.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolDocumentObjectEditorWidget.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolLibrary.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolLibrarySerializer.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolMachine.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolShapeClasses.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolShapeDoc.py
+FreeCAD/Mod/CAM/CAMTests/TestPathToolShapeIcon.py
+FreeCAD/Mod/CAM/CAMTests/TestPathUtil.py
+FreeCAD/Mod/CAM/CAMTests/TestPathVcarve.py
+FreeCAD/Mod/CAM/CAMTests/TestPathVoronoi.py
+FreeCAD/Mod/CAM/CAMTests/TestRefactoredCentroidPost.py
+FreeCAD/Mod/CAM/CAMTests/TestRefactoredGrblPost.py
+FreeCAD/Mod/CAM/CAMTests/TestRefactoredLinuxCNCPost.py
+FreeCAD/Mod/CAM/CAMTests/TestRefactoredMach3Mach4Post.py
+FreeCAD/Mod/CAM/CAMTests/TestRefactoredMassoG3Post.py
+FreeCAD/Mod/CAM/CAMTests/TestRefactoredTestDressupPost.py
+FreeCAD/Mod/CAM/CAMTests/TestRefactoredTestPost.py
+FreeCAD/Mod/CAM/CAMTests/TestRefactoredTestPostGCodes.py
+FreeCAD/Mod/CAM/CAMTests/TestRefactoredTestPostMCodes.py
+FreeCAD/Mod/CAM/CAMTests/TestSnapmakerPost.py
+FreeCAD/Mod/CAM/CAMTests/Tools/Bit/test-path-tool-bit-bit-00.fctb
+FreeCAD/Mod/CAM/CAMTests/Tools/Library/test-path-tool-bit-library-00.fctl
+FreeCAD/Mod/CAM/CAMTests/Tools/Shape/test-path-tool-bit-shape-00.fcstd
+FreeCAD/Mod/CAM/CAMTests/__init__.py
+FreeCAD/Mod/CAM/CAMTests/boxtest.fcstd
+FreeCAD/Mod/CAM/CAMTests/boxtest1.fcstd
+FreeCAD/Mod/CAM/CAMTests/dressuptest.FCStd
+FreeCAD/Mod/CAM/CAMTests/drill_test1.FCStd
+FreeCAD/Mod/CAM/CAMTests/test-path-tool-bit-bit-00.fctb
+FreeCAD/Mod/CAM/CAMTests/test-path-tool-bit-library-00.fctl
+FreeCAD/Mod/CAM/CAMTests/test-path-tool-bit-shape-00.fcstd
+FreeCAD/Mod/CAM/CAMTests/test_adaptive.fcstd
+FreeCAD/Mod/CAM/CAMTests/test_centroid_00.ngc
+FreeCAD/Mod/CAM/CAMTests/test_filenaming.fcstd
+FreeCAD/Mod/CAM/CAMTests/test_geomop.fcstd
+FreeCAD/Mod/CAM/CAMTests/test_holes00.fcstd
+FreeCAD/Mod/CAM/CAMTests/test_profile.fcstd
+FreeCAD/Mod/CAM/Data/Threads/imperial-external-2A.csv
+FreeCAD/Mod/CAM/Data/Threads/imperial-external-3A.csv
+FreeCAD/Mod/CAM/Data/Threads/imperial-internal-2B.csv
+FreeCAD/Mod/CAM/Data/Threads/imperial-internal-3B.csv
+FreeCAD/Mod/CAM/Data/Threads/metric-external-4G6G.csv
+FreeCAD/Mod/CAM/Data/Threads/metric-external-6G.csv
+FreeCAD/Mod/CAM/Data/Threads/metric-internal-6H.csv
+FreeCAD/Mod/CAM/Images/Ops/chamfer.svg
+FreeCAD/Mod/CAM/Init.py
+FreeCAD/Mod/CAM/InitGui.py
+FreeCAD/Mod/CAM/Path/Base/Drillable.py
+FreeCAD/Mod/CAM/Path/Base/FeedRate.py
+FreeCAD/Mod/CAM/Path/Base/Generator/dogboneII.py
+FreeCAD/Mod/CAM/Path/Base/Generator/drill.py
+FreeCAD/Mod/CAM/Path/Base/Generator/helix.py
+FreeCAD/Mod/CAM/Path/Base/Generator/rotation.py
+FreeCAD/Mod/CAM/Path/Base/Generator/tapping.py
+FreeCAD/Mod/CAM/Path/Base/Generator/threadmilling.py
+FreeCAD/Mod/CAM/Path/Base/Generator/toolchange.py
+FreeCAD/Mod/CAM/Path/Base/Gui/GetPoint.py
+FreeCAD/Mod/CAM/Path/Base/Gui/IconViewProvider.py
+FreeCAD/Mod/CAM/Path/Base/Gui/PreferencesAdvanced.py
+FreeCAD/Mod/CAM/Path/Base/Gui/PropertyBag.py
+FreeCAD/Mod/CAM/Path/Base/Gui/PropertyEditor.py
+FreeCAD/Mod/CAM/Path/Base/Gui/SetupSheet.py
+FreeCAD/Mod/CAM/Path/Base/Gui/SetupSheetOpPrototype.py
+FreeCAD/Mod/CAM/Path/Base/Gui/Util.py
+FreeCAD/Mod/CAM/Path/Base/Gui/__init__.py
+FreeCAD/Mod/CAM/Path/Base/Language.py
+FreeCAD/Mod/CAM/Path/Base/MachineState.py
+FreeCAD/Mod/CAM/Path/Base/Property.py
+FreeCAD/Mod/CAM/Path/Base/PropertyBag.py
+FreeCAD/Mod/CAM/Path/Base/SetupSheet.py
+FreeCAD/Mod/CAM/Path/Base/SetupSheetOpPrototype.py
+FreeCAD/Mod/CAM/Path/Base/Util.py
+FreeCAD/Mod/CAM/Path/Base/__init__.py
+FreeCAD/Mod/CAM/Path/Dressup/Array.py
+FreeCAD/Mod/CAM/Path/Dressup/Boundary.py
+FreeCAD/Mod/CAM/Path/Dressup/DogboneII.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/Array.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/AxisMap.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/Boundary.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/Dogbone.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/DogboneII.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/Dragknife.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/LeadInOut.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/Preferences.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/RampEntry.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/TagPreferences.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/Tags.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/ZCorrect.py
+FreeCAD/Mod/CAM/Path/Dressup/Gui/__init__.py
+FreeCAD/Mod/CAM/Path/Dressup/Tags.py
+FreeCAD/Mod/CAM/Path/Dressup/Utils.py
+FreeCAD/Mod/CAM/Path/Dressup/__init__.py
+FreeCAD/Mod/CAM/Path/Geom.py
+FreeCAD/Mod/CAM/Path/GuiInit.py
+FreeCAD/Mod/CAM/Path/Log.py
+FreeCAD/Mod/CAM/Path/Main/Gui/Camotics.py
+FreeCAD/Mod/CAM/Path/Main/Gui/Fixture.py
+FreeCAD/Mod/CAM/Path/Main/Gui/Inspect.py
+FreeCAD/Mod/CAM/Path/Main/Gui/Job.py
+FreeCAD/Mod/CAM/Path/Main/Gui/JobCmd.py
+FreeCAD/Mod/CAM/Path/Main/Gui/JobDlg.py
+FreeCAD/Mod/CAM/Path/Main/Gui/PreferencesJob.py
+FreeCAD/Mod/CAM/Path/Main/Gui/SanityCmd.py
+FreeCAD/Mod/CAM/Path/Main/Gui/Simulator.py
+FreeCAD/Mod/CAM/Path/Main/Gui/SimulatorGL.py
+FreeCAD/Mod/CAM/Path/Main/Gui/__init__.py
+FreeCAD/Mod/CAM/Path/Main/Job.py
+FreeCAD/Mod/CAM/Path/Main/Sanity/HTMLTemplate.py
+FreeCAD/Mod/CAM/Path/Main/Sanity/ImageBuilder.py
+FreeCAD/Mod/CAM/Path/Main/Sanity/ReportGenerator.py
+FreeCAD/Mod/CAM/Path/Main/Sanity/Sanity.py
+FreeCAD/Mod/CAM/Path/Main/Sanity/Sanity_Bulb.svg
+FreeCAD/Mod/CAM/Path/Main/Sanity/Sanity_Caution.svg
+FreeCAD/Mod/CAM/Path/Main/Sanity/Sanity_Note.svg
+FreeCAD/Mod/CAM/Path/Main/Sanity/Sanity_Warning.svg
+FreeCAD/Mod/CAM/Path/Main/Stock.py
+FreeCAD/Mod/CAM/Path/Main/__init__.py
+FreeCAD/Mod/CAM/Path/Op/Adaptive.py
+FreeCAD/Mod/CAM/Path/Op/Area.py
+FreeCAD/Mod/CAM/Path/Op/Base.py
+FreeCAD/Mod/CAM/Path/Op/CircularHoleBase.py
+FreeCAD/Mod/CAM/Path/Op/Custom.py
+FreeCAD/Mod/CAM/Path/Op/Deburr.py
+FreeCAD/Mod/CAM/Path/Op/Drilling.py
+FreeCAD/Mod/CAM/Path/Op/Engrave.py
+FreeCAD/Mod/CAM/Path/Op/EngraveBase.py
+FreeCAD/Mod/CAM/Path/Op/FeatureExtension.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Adaptive.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Array.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Base.py
+FreeCAD/Mod/CAM/Path/Op/Gui/CircularHoleBase.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Comment.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Copy.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Custom.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Deburr.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Drilling.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Engrave.py
+FreeCAD/Mod/CAM/Path/Op/Gui/FeatureExtension.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Helix.py
+FreeCAD/Mod/CAM/Path/Op/Gui/MillFace.py
+FreeCAD/Mod/CAM/Path/Op/Gui/PathShapeTC.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Pocket.py
+FreeCAD/Mod/CAM/Path/Op/Gui/PocketBase.py
+FreeCAD/Mod/CAM/Path/Op/Gui/PocketShape.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Probe.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Profile.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Selection.py
+FreeCAD/Mod/CAM/Path/Op/Gui/SimpleCopy.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Slot.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Stop.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Surface.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Tapping.py
+FreeCAD/Mod/CAM/Path/Op/Gui/ThreadMilling.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Vcarve.py
+FreeCAD/Mod/CAM/Path/Op/Gui/Waterline.py
+FreeCAD/Mod/CAM/Path/Op/Gui/__init__.py
+FreeCAD/Mod/CAM/Path/Op/Helix.py
+FreeCAD/Mod/CAM/Path/Op/MillFace.py
+FreeCAD/Mod/CAM/Path/Op/Pocket.py
+FreeCAD/Mod/CAM/Path/Op/PocketBase.py
*** 2955 LINES SKIPPED ***