RCC Project
RCC is a compiler collection under active development. The current implementation focuses on a standalone machine-code backend.
Repository layout
backend/ Standalone backend project
cmake/ Monorepo orchestration support
docs/ Architecture and implementation records
Future frontend, middle-end, and driver projects will be sibling components.
Build the enabled projects
RCC requires Clang and C++23. Both Ninja and Unix Makefiles are supported.
cmake -S . -B build -G Ninja \
-DCMAKE_CXX_COMPILER=clang++ \
-DRCC_ENABLE_PROJECTS=backend
cmake --build build
ctest --test-dir build --output-on-failure
Build the backend independently
cmake -S backend -B build-backend -G Ninja \
-DCMAKE_CXX_COMPILER=clang++
cmake --build build-backend
ctest --test-dir build-backend --output-on-failure
Replace Ninja with Unix Makefiles to build with Make.
Developer checks are exposed as rcc-backend-format-check,
rcc-backend-tidy, and rcc-backend-analyze in a standalone backend build.
The monorepo exposes the aggregate format-check, tidy, and analyze
targets.
License
RCC is free software distributed under GPL-3.0-or-later. See LICENSE.
