diffkemp
diffkemp copied to clipboard
Rewrite `cc_wrapper` in C/C++
The cc_wrapper component is used for building generic projects into snapshots (using diffkemp build). It acts as a wrapper over a C compiler which hijacks each compile command of a project build and injects a build into LLVM IR.
It is currently written in Python (for simplicity) and compiled into a native binary (for performance) using RPython. Unfortunately, RPython only supports Python 2 which is now deprecated on most distros and therefore hard to support. While there are Python 3 alternatives, none of them is performing enough so it would be better to rewrite the wrapper into C or C++ (probably C++ would be better since the wrapper does a lot of string manipulation).