cxon-0.1.0 is not a library.
cxon -- C++ builder configured with JSON
[!IMPORTANT]
- cxon is still in development, and the configrantion field is not stable yet.
- cxon is not only a build system, but also a configuration tool for build systems.
Features(Order by priority)
- Build project with compiler and linker by cxon.json immediately.(only GNU)
- Build cache and mult-thread.
- Submodule support.
- Multiple compile targets.
- Platform-specific configuration.
- Build for cmake.
What is the goal for cxon?
We want to provide a build system that is easy to use and config for C++ beginners or who are not the programming prefessors, which can help them focus on their project and code instrendad of dealing with the build system configration.
We only require a small number of essential fields for cxon.json and make the build system configration as simple as possible.
cxon.json Example
{
"project": "HelloWorld", // project name
"target_name": "HelloWorld",// the final compiled product name
"build_dir": "build", // the directory storing intermediate compiled product
"output_dir": "bin", // the directory storing final compiled product
"toolchain": "gnu", // unsuport currently but required
"flags": [ // parameters for c and c++ compiler
"-Wall",
"-Wextra"
],
"cflags": [ // parameters for c compiler
],
"cxxflags": [ // parameters for c++ compiler
],
"include": [ // directories where the header files are
],
"defines": [ // defination for compiler
],
"sources": [ // source files which will be compiled
"./main.cpp",
"./func.cpp"
],
"link": [ // directories storing required libraries
],
"libs": [ // required libaries
]
}