Some checks failed
Build and Test / build (pull_request) Failing after 7m52s
Assembly Origin Planes: - AssemblyObject::setupObject() relabels origin planes to Top (XY), Front (XZ), Right (YZ) on assembly creation - CommandCreateAssembly.py makes origin planes visible by default - AssemblyUtils.cpp getObjFromRef() resolves LocalCoordinateSystem to child datum elements for joint references to origin planes - TestAssemblyOriginPlanes.py: 9 integration tests covering structure, labels, grounding, reference resolution, solver, and save/load round-trip Solver Documentation: - docs/src/solver/: 7 new pages covering architecture overview, expression DAG, constraints, solving algorithms, diagnostics, assembly integration, and writing custom solvers - docs/src/SUMMARY.md: added Kindred Solver section
102 lines
2.1 KiB
CMake
102 lines
2.1 KiB
CMake
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
|
|
if (NOT FREECAD_USE_EXTERNAL_ONDSELSOLVER)
|
|
include_directories(
|
|
${CMAKE_SOURCE_DIR}/src/3rdParty/OndselSolver
|
|
)
|
|
else ()
|
|
check_include_file_cxx(OndselSolver/enum.h HAVE_ONDSELSOLVER_H)
|
|
if (NOT HAVE_ONDSELSOLVER_H)
|
|
message(FATAL_ERROR "FREECAD_USE_EXTERNAL_ONDSELSOLVER is set but the required system includes are not available")
|
|
endif ()
|
|
endif ()
|
|
|
|
add_subdirectory(Solver)
|
|
add_subdirectory(App)
|
|
|
|
if(BUILD_GUI)
|
|
add_subdirectory(Gui)
|
|
endif(BUILD_GUI)
|
|
|
|
set(Assembly_Scripts
|
|
Init.py
|
|
CommandCreateAssembly.py
|
|
CommandCreateBom.py
|
|
CommandInsertLink.py
|
|
CommandInsertNewPart.py
|
|
CommandSolveAssembly.py
|
|
CommandCreateJoint.py
|
|
CommandCreateView.py
|
|
CommandCreateSimulation.py
|
|
CommandExportASMT.py
|
|
TestAssemblyWorkbench.py
|
|
JointObject.py
|
|
Preferences.py
|
|
AssemblyImport.py
|
|
SoSwitchMarker.py
|
|
UtilsAssembly.py
|
|
)
|
|
|
|
if(BUILD_GUI)
|
|
list (APPEND Assembly_Scripts InitGui.py)
|
|
endif(BUILD_GUI)
|
|
|
|
INSTALL(
|
|
FILES
|
|
${Assembly_Scripts}
|
|
DESTINATION
|
|
Mod/Assembly
|
|
)
|
|
|
|
SET(AssemblyScripts_SRCS
|
|
Assembly/__init__.py
|
|
)
|
|
|
|
|
|
SET(AssemblyTests_SRCS
|
|
AssemblyTests/__init__.py
|
|
AssemblyTests/TestCore.py
|
|
AssemblyTests/TestCommandInsertLink.py
|
|
AssemblyTests/TestSolverIntegration.py
|
|
AssemblyTests/TestKindredSolverIntegration.py
|
|
AssemblyTests/TestKCSolvePy.py
|
|
AssemblyTests/TestAssemblyOriginPlanes.py
|
|
AssemblyTests/mocks/__init__.py
|
|
AssemblyTests/mocks/MockGui.py
|
|
)
|
|
|
|
|
|
SET(all_files
|
|
${AssemblyTests_SRCS}
|
|
${AssemblyScripts_SRCS}
|
|
)
|
|
|
|
ADD_CUSTOM_TARGET(AssemblyScripts ALL
|
|
SOURCES ${all_files}
|
|
)
|
|
|
|
SET(test_files
|
|
${Assembly_Scripts}
|
|
${AssemblyTests_SRCS}
|
|
)
|
|
|
|
ADD_CUSTOM_TARGET(AssemblyTests ALL
|
|
SOURCES ${test_files}
|
|
)
|
|
|
|
fc_copy_sources(AssemblyScripts "${CMAKE_BINARY_DIR}/Mod/Assembly" ${all_files})
|
|
fc_copy_sources(AssemblyTests "${CMAKE_BINARY_DIR}/Mod/Assembly" ${test_files})
|
|
|
|
INSTALL(
|
|
FILES
|
|
${AssemblyTests_SRCS}
|
|
DESTINATION
|
|
Mod/Assembly/AssemblyTests
|
|
)
|
|
INSTALL(
|
|
FILES
|
|
${AssemblyScripts_SRCS}
|
|
DESTINATION
|
|
Mod/Assembly/Assembly
|
|
)
|