This repository is a starter project to develop C++ CodinGame bots. You can read this article on my blog to learn how to use it.
src/bot.cpp
, the main source file for the botsrc/configuration.h
, the main configuration file for the bottests/unit_tests.cpp
, the main unit tests filemerge_source_files.py
, a simple python script to merge source code into a single file.vscode/
folder that activate C++ indexing and python linting in the projectCMakeLists.txt
, to generate a build configuration.
This project is meant to be used with the following tools installed:
cmake
to generate a build configuration for your projectsninja
ormake
to build your projects (those are the only generators that producescompile_commands.json
files, used by VSCode to parse and index C++ sources)clang
to compile c++ filespython
to executemerge_source_files
lld
to link compiled c++ files.
If you want to use another compiler or another linker, add options for your configuration in the CMakeLists.txt
file.
It is part of a set-up I use to develop C++ CodinGame bots. A VSCode extension feeds the following variables to the cmake file:
REPOSITORY_ROOT
, which is the path to my main repository, storing all my tools and my botsINCLUDE_DIR
, path to the folder containing all the common headers I use for bots and toolsLIB_DIR
, path to the folder containing all the common libraries I use for my tools