Draft: T: don't use execute_process, integrate in cmake
This work is part of the MR on ctest, !1932 (merged), but now extended:
- integrate T code in cmake
- this has the effect that generated files (
T_IDs.h
,_check_vcd
) are created inside the build directory (<build-dir>/common/utils/T
instead of the source directory (common/utils/T
) - fix build problems with
T_TRACER=OFF
, and disable it in the clang build pipeline - don't build T sources multiple times, but define one single target that is linked into the others: before, there would be
${T_SOURCE}
as part of all targets, rebuilding these files; now there is a single targetT
that you can also build independently - Makefiles in
common/utils/T
are preserved
one motivation was that I had the impression that re-running cmake, the execute_process()
in CMakeLists.txt
would make all targets out-of-date, so after running cmake, we would need to rebuild everything. This still seems to be the case, but nevertheless, there is now cleaner integration with CMake. Maybe we can also fix that.
What about integrating all T executables (e.g., macpdu2wireshark
) into cmake? Edit: works, and is supported in parallel to existing Makefile tooling. The CI will use cmake, though
Edited by Robert Schmidt