feat(sdk): scaffold KCSDK library + kcsdk pybind11 module (#350) #358
Reference in New Issue
Block a user
Delete Branch "feat/kcsdk-scaffold"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Scaffolds the KCSDK C++ shared library and
kcsdkpybind11 module — the build infrastructure for the C++-backed addon SDK.Closes #350 (Phase 1 of KCSDK epic #346).
Changes
New files:
src/Gui/SDK/KCSDKGlobal.h— DLL export macros (same pattern as KCSolveGlobal.h)src/Gui/SDK/SDKRegistry.h/.cpp— Empty singleton withAPI_VERSION_MAJOR = 1andavailable()src/Gui/SDK/CMakeLists.txt— BuildsKCSDKshared library, links FreeCADBasesrc/Gui/SDK/bindings/kcsdk_py.cpp— pybind11 module exposingAPI_VERSION_MAJORandavailable()src/Gui/SDK/bindings/CMakeLists.txt— Buildskcsdkpybind11 module, links KCSDK + pybind11Modified:
src/Gui/CMakeLists.txt—add_subdirectory(SDK)Verification
Next steps
Issue #351 will migrate the editing context API through this module.