Skip to content

efvincent/aoc-cpp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

aoc-cpp

aoc-cpp is a small Advent of Code workspace built around Clang, C++23 modules, and a deliberately low-level "orthodox C++" style.

Requirements

  • clang++ with C++23 modules support
  • make
  • doxygen for API docs
  • bear if you want to regenerate compile_commands.json

Layout

  • src/ contains the executable entry point and C++ module units.
  • docs/ contains project documentation and the checked-in Doxygen config.
  • build/ contains generated binaries, module caches, objects, and other build output.

Build

The default configuration is debug.

make

Other supported configurations:

make CONFIG=release
make CONFIG=instrument

Clean generated output:

make clean
make clean_all

Tooling

Regenerate the compilation database used by clangd:

make bear

This target rebuilds the project with Clang's native -MJ compilation database fragments so C++23 module interface units are included correctly.

Generate Doxygen output with the checked-in config:

make docs

That target reads docs/Doxyfile and writes generated output to docs/html/ and docs/latex/.

Notes

  • The build currently uses clang++ directly from the makefile.
  • compile_commands.json is generated metadata and should be refreshed when source layout or compiler flags change.
  • The repository includes VS Code settings for clangd and uncrustify.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors