mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-08-03 00:02:14 +00:00
The codegen only ever needed a protoc binary, but every entry point installed
grpcio-tools to get one. That drags in the grpcio C extension, which has no
Windows/ARM64 wheel and falls back to building from source there, so the ARM64
job died with "Failed building wheel for grpcio" -> "protoc not found".
tools/codegen_toolchain.py resolves the toolchain instead: protoc from $PROTOC,
PATH, a cache, grpc_tools when already installed, or a pinned checksum-verified
protoc release unpacked into .codegen-tools/; protobuf and pyyaml from the
calling interpreter or a cached virtualenv it re-execs into (distro Pythons
refuse `pip install` under PEP 668). All four build scripts and all three CI
jobs are now just `python tools/run_codegen.py`, with no pip lines around it.
tools/config_metadata_pb2.py was the one generated file checked into git. The
orca.* option extensions are now read out of the descriptor set, which already
carries config_metadata.proto via --include_imports, so nothing is generated
into the tree -- and the protobuf>=6.33.5,<7 CI pin goes away with it, since it
only existed to satisfy gencode's hard ValidateProtobufRuntimeVersion check.
Generated C++ verified byte-identical under upb and the pure-Python protobuf
runtime (what win/arm64 installs), and under both grpc_tools' and standalone
protoc.
Also fixed:
- build_release_macos.sh still passed -DPython3_EXECUTABLE=<codegen venv>,
pointing the bundled *embed* interpreter at the codegen environment -- the
same confusion fae4b124 fixed on the CMake side.
- Tab.cpp #includes TabLayout_generated.cpp but had no dependency on
codegen_config, so an incremental build after a .proto edit could compile it
while the file was being rewritten. libslic3r already had this guard.
- ConfigCodegen.cmake now probes with `codegen_toolchain.py --check` (which
never downloads or installs), prefers a host interpreter over the embed one,
and lets a fresh clone generate at configure time instead of erroring out.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
57 lines
838 B
Plaintext
57 lines
838 B
Plaintext
Build
|
|
Build.bat
|
|
/build*/
|
|
CMakeLists.txt.user
|
|
**/CMakeLists.txt.autosave
|
|
deps/build*
|
|
MYMETA.json
|
|
MYMETA.yml
|
|
_build
|
|
blib
|
|
xs/buildtmp
|
|
*.o
|
|
*.log
|
|
MANIFEST.bak
|
|
xs/MANIFEST.bak
|
|
xs/assertlib*
|
|
.init_bundle.ini
|
|
.vs/*
|
|
local-lib
|
|
/src/TAGS
|
|
/.vscode/
|
|
/.vscode
|
|
build-linux/*
|
|
deps/build*/*
|
|
**/.DS_Store
|
|
install_*
|
|
build_*/
|
|
SVG
|
|
src/OrcaSlicer-doc/
|
|
.idea/
|
|
/.cache/
|
|
*.mo
|
|
**/process_full/
|
|
**/machine_full/
|
|
**/filament_full/
|
|
/deps/DL_CACHE/
|
|
/deps/DL_CACHE
|
|
**/.flatpak-builder/
|
|
*.no-debug.yml
|
|
resources/profiles/user/default
|
|
*.code-workspace
|
|
deps_src/build/
|
|
test.js
|
|
/.cache/
|
|
.clangd
|
|
internal_docs/
|
|
*.flatpak
|
|
/flatpak-repo/
|
|
# Config codegen: descriptor set, generated C++ and the downloaded protoc /
|
|
# bootstrap virtualenv. All of it is produced by tools/run_codegen.py.
|
|
config.desc
|
|
src/slic3r/GUI/generated/
|
|
.codegen-tools/
|
|
# Python bytecode
|
|
__pycache__/
|
|
*.pyc
|