The license-overview file written in commit 7b097fb fell through a
gap in code/.gitignore (the 'deps/*' wildcard catches everything not
explicitly allowed). Added '!deps/THIRD-PARTY-LICENSES.md' to the
exclusion list so the file is actually tracked.
Found by curl-HEADing every link on https://tmoussa.codeberg.page/ConformalLabpp/
— 25/26 links returned 200; only THIRD-PARTY-LICENSES.md was 404
because the file was not in the tree of the preview branch.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
deps/CMakeLists.txt only extracted CGAL when WITH_CGAL=ON.
With -DWITH_CGAL_TESTS=ON the CGAL include path was never populated,
causing fatal error: CGAL/Simple_cartesian.h: No such file or directory.
Fix: extract CGAL-6.1.1 for both WITH_CGAL and WITH_CGAL_TESTS.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
macOS filesystem is case-insensitive so both spellings worked locally,
but the Linux container (CI) could not find the file and failed with
"does not contain a CMakeLists.txt file".
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Restructures the CMake build into three clearly separated modes:
(default) tests only – Eigen + GTest, no heavy deps
-DWITH_VIEWER=ON builds viewer lib (libigl / GLFW / GLAD)
-DWITH_CGAL=ON builds conformallab_core CLI app;
implies WITH_VIEWER automatically
Changes:
- code/CMakeLists.txt: viewer and core targets are now guarded by
option() flags; GTest / tests target is always built
- code/deps/Cmakelists.txt: CGAL, libigl, glfw, glad are only
extracted when the corresponding mode is enabled; Eigen always
- Remove Boost (211 MB tarball, 0 usages in the codebase – CGAL 6.x
does not require Boost for Simple_cartesian / Surface_mesh / basic IO)
- Remove code/src/main.cpp (dead file, not referenced in CMake)
All 16 C++ tests pass in tests-only mode (verified locally).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>