From e012d6aed6973da3a384c466d304cb5626e8834b Mon Sep 17 00:00:00 2001 From: HongxuChen Date: Wed, 15 Oct 2014 09:09:52 +0800 Subject: [PATCH 1/3] IDEs, build systems, 1 analysis, debug tools - AppCode - rtags - irony-mode - biicode - CMake - Ninja - SCons - Bear - cpm - clang static analyzer - Boost.Test - CTest --- README.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b9f3afa..b5e881f 100644 --- a/README.md +++ b/README.md @@ -191,6 +191,8 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [minUnit](http://www.jera.com/techinfo/jtns/jtn002.html) - A minimal unit testing framework for C written using only 2 macros. [PublicDomain] * [Remotery](https://github.com/Celtoys/Remotery) - Single C File Profiler with Web Viewer. [Apache2] * [UnitTest++](http://unittest-cpp.sourceforge.net/) - A lightweight unit testing framework for C++. [MIT/X Consortium license] +* [CTest](http://www.cmake.org/cmake/help/v2.8.8/ctest.html) - The CMake test driver program. [BSD] +* [Boost.Test](http://www.boost.org/doc/libs/master/libs/test/doc/html/index.html) - Boost Test Library. [Boost] ## Game Engine @@ -265,8 +267,8 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [PicoJSON](https://github.com/kazuho/picojson) - A header-file-only, JSON parser serializer in C++. [BSD] * [qt-json](https://github.com/gaudecker/qt-json) - A simple class for parsing JSON data into a QVariant hierarchy and vice versa. [GPLv3] * [QJson](https://github.com/flavio/qjson) - A qt-based library that maps JSON data to QVariant objects. [LGPLv2] -* [RapidJSON](https://github.com/miloyip/rapidjson) - A fast JSON parser/generator for C++ with both SAX/DOM style API. [MIT] -* [YAJL](https://github.com/lloyd/yajl) :star: - A fast streaming JSON parsing library in C. [ISC] +* [RapidJSON](https://github.com/miloyip/rapidjson) :star: - A fast JSON parser/generator for C++ with both SAX/DOM style API. [MIT] +* [YAJL](https://github.com/lloyd/yajl) - A fast streaming JSON parsing library in C. [ISC] ## Logging @@ -469,6 +471,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin *List of C/C++ nominal IDEs.* * [CLion](http://www.jetbrains.com/clion/) - Cross-platform C/C++ IDE from JetBrains. In pre-release/early access stadium. +* [AppCode](http://www.jetbrains.com/objc/) - an IDE for Objective-C, C, C++, and JavaScript development built on JetBrains’ IntelliJ IDEA platform. * [Code::Blocks](http://www.codeblocks.org/) - A free C, C++ and Fortran IDE. * [CodeLite](http://codelite.org/) - Another cross-plaform, free C/C++ IDE. [GPLv2 with an exception for plugins] * [Dev-C++](http://sourceforge.net/projects/orwelldevcpp/) - A portable C/C++/C++11 IDE. @@ -481,12 +484,20 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [Qt Creator](http://qt-project.org/) :star: - A cross-platform C++, JavaScript and QML IDE which is part of the SDK for Qt. * [Xcode](https://developer.apple.com/xcode/) - Developed by Apple. * [YouCompleteMe](https://valloric.github.io/YouCompleteMe/) - YouCompleteMe is a fast, as-you-type, fuzzy-search code completion engine for Vim. +* [rtags](https://github.com/Andersbakken/rtags) - A c/c++ client/server indexer with for integration with emacs based on clang. +* [irony-mode](https://github.com/Sarcasm/irony-mode) - A C/C++ minor mode for Emacs powered by libclang. ## Build Systems +* [CMake](http://www.cmake.org/) - Cross-platform free and open-source software for managing the build process of software using a compiler-independent method. [BSD] +* [Ninja](http://martine.github.io/ninja/) - A small build system with a focus on speed. +* [Scons](http://www.scons.org/) - A software construction tool configured with Python scipt. +* [biicode](https://www.biicode.com/) - Simple, file-based dependency manager * [FASTBuild](http://www.fastbuild.org/docs/home.html) - High performance, open-source build system supporting highly scalable compilation, caching and network distribution. * [tundra](https://github.com/deplinenoise/tundra) - High-performance code build system designed to give the best possible incremental build times even for very large software projects. * [tup](http://gittup.org/tup/) - File-based build system that monitors in the background for changed files. +* [Bear](https://github.com/rizsotto/Bear) - A tool to generate compilation database for clang tooling. +* [CPM](https://github.com/iauns/cpm) - A C++ Package Manager based on CMake and Git. ## Static Code Analysis *List of tools for improving quality and reducing defects by code analysis* @@ -494,6 +505,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [Cppcheck](http://cppcheck.sourceforge.net/) - A tool for static C/C++ code analysis. - [source](https://github.com/danmar/cppcheck) * [include-what-you-use](https://code.google.com/p/include-what-you-use/) - A tool for use with clang to analyze includes in C and C++ source files. * [OCLint](http://oclint.org/) - A static source code analysis tool to improve quality and reduce defects for C, C++ and Objective-C. - [source](https://github.com/oclint/oclint) +* [Clang Static Analyzer](http://clang-analyzer.llvm.org/index.html) - A source code analysis tool that finds bugs in C, C++, and Objective-C programs. * [List of tools for static code analysis](http://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis#C.2FC.2B.2B) - A list of tools for static code analysis from Wikipedia. # Resources From 6b9e386ff3447a99ca5811c32405abac586cbdba Mon Sep 17 00:00:00 2001 From: HongxuChen Date: Wed, 15 Oct 2014 11:05:11 +0800 Subject: [PATCH 2/3] reformat accounding to CONTRIBUTING.md --- README.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index b5e881f..a369ca7 100644 --- a/README.md +++ b/README.md @@ -181,8 +181,10 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin ## Debug *Debugging Libraries, Memory Leak and Resource Leak Detection, Unit Testing* +* [Boost.Test](http://www.boost.org/doc/libs/master/libs/test/doc/html/index.html) - Boost Test Library. [Boost] * [Catch](https://github.com/philsquared/Catch) - A modern, C++-native, header-only, framework for unit-tests, TDD and BDD. [Boost] * [CppUnit](http://www.freedesktop.org/wiki/Software/cppunit/) - C++ port of JUnit. [LGPLv2] +* [CTest](http://www.cmake.org/cmake/help/v2.8.8/ctest.html) - The CMake test driver program. [BSD] * [googletest](http://code.google.com/p/googletest/) - Google C++ Testing Framework. [BSD] * [ig-debugheap](https://github.com/deplinenoise/ig-debugheap) - Multiplatform debug heap useful for tracking down memory errors. [BSD] * [libtap](https://github.com/zorgnax/libtap) - Write tests in C. [GPLv2] @@ -191,8 +193,6 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [minUnit](http://www.jera.com/techinfo/jtns/jtn002.html) - A minimal unit testing framework for C written using only 2 macros. [PublicDomain] * [Remotery](https://github.com/Celtoys/Remotery) - Single C File Profiler with Web Viewer. [Apache2] * [UnitTest++](http://unittest-cpp.sourceforge.net/) - A lightweight unit testing framework for C++. [MIT/X Consortium license] -* [CTest](http://www.cmake.org/cmake/help/v2.8.8/ctest.html) - The CMake test driver program. [BSD] -* [Boost.Test](http://www.boost.org/doc/libs/master/libs/test/doc/html/index.html) - Boost Test Library. [Boost] ## Game Engine @@ -470,34 +470,34 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin ## Integrated Development Environment *List of C/C++ nominal IDEs.* -* [CLion](http://www.jetbrains.com/clion/) - Cross-platform C/C++ IDE from JetBrains. In pre-release/early access stadium. * [AppCode](http://www.jetbrains.com/objc/) - an IDE for Objective-C, C, C++, and JavaScript development built on JetBrains’ IntelliJ IDEA platform. +* [CLion](http://www.jetbrains.com/clion/) - Cross-platform C/C++ IDE from JetBrains. In pre-release/early access stadium. * [Code::Blocks](http://www.codeblocks.org/) - A free C, C++ and Fortran IDE. * [CodeLite](http://codelite.org/) - Another cross-plaform, free C/C++ IDE. [GPLv2 with an exception for plugins] * [Dev-C++](http://sourceforge.net/projects/orwelldevcpp/) - A portable C/C++/C++11 IDE. * [Eclipse CDT](http://www.eclipse.org/cdt/) - A fully functional C and C++ IDE based on the Eclipse platform. * [Geany](http://www.geany.org/) - Small, fast, cross-platform IDE. [GPL] * [IBM VisualAge](http://www-03.ibm.com/software/products/en/visgen) - A family of computer integrated development environments from IBM. +* [Irony-mode](https://github.com/Sarcasm/irony-mode) - A C/C++ minor mode for Emacs powered by libclang. * [KDevelop](https://www.kdevelop.org/) - A free, open source IDE. * [Microsoft Visual Studio](http://www.visualstudio.com/) - An IDE from Microsoft. * [NetBeans](https://netbeans.org/) - An IDE for developing primarily with Java, but also with other languages, in particular PHP, C/C++, and HTML5. * [Qt Creator](http://qt-project.org/) :star: - A cross-platform C++, JavaScript and QML IDE which is part of the SDK for Qt. +* [rtags](https://github.com/Andersbakken/rtags) - A c/c++ client/server indexer with for integration with emacs based on clang. * [Xcode](https://developer.apple.com/xcode/) - Developed by Apple. * [YouCompleteMe](https://valloric.github.io/YouCompleteMe/) - YouCompleteMe is a fast, as-you-type, fuzzy-search code completion engine for Vim. -* [rtags](https://github.com/Andersbakken/rtags) - A c/c++ client/server indexer with for integration with emacs based on clang. -* [irony-mode](https://github.com/Sarcasm/irony-mode) - A C/C++ minor mode for Emacs powered by libclang. ## Build Systems +* [Bear](https://github.com/rizsotto/Bear) - A tool to generate compilation database for clang tooling. +* [Biicode](https://www.biicode.com/) - Simple, file-based dependency manager. +* [FASTBuild](http://www.fastbuild.org/docs/home.html) - High performance, open-source build system supporting highly scalable compilation, caching and network distribution. * [CMake](http://www.cmake.org/) - Cross-platform free and open-source software for managing the build process of software using a compiler-independent method. [BSD] +* [CPM](https://github.com/iauns/cpm) - A C++ Package Manager based on CMake and Git. * [Ninja](http://martine.github.io/ninja/) - A small build system with a focus on speed. * [Scons](http://www.scons.org/) - A software construction tool configured with Python scipt. -* [biicode](https://www.biicode.com/) - Simple, file-based dependency manager -* [FASTBuild](http://www.fastbuild.org/docs/home.html) - High performance, open-source build system supporting highly scalable compilation, caching and network distribution. * [tundra](https://github.com/deplinenoise/tundra) - High-performance code build system designed to give the best possible incremental build times even for very large software projects. * [tup](http://gittup.org/tup/) - File-based build system that monitors in the background for changed files. -* [Bear](https://github.com/rizsotto/Bear) - A tool to generate compilation database for clang tooling. -* [CPM](https://github.com/iauns/cpm) - A C++ Package Manager based on CMake and Git. ## Static Code Analysis *List of tools for improving quality and reducing defects by code analysis* From 242cfbc380ae0ec6d61e82afd5a310b1a6f45c17 Mon Sep 17 00:00:00 2001 From: HongxuChen Date: Wed, 15 Oct 2014 11:08:41 +0800 Subject: [PATCH 3/3] an order fix for CMake, FastBuild --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a369ca7..d9e7639 100644 --- a/README.md +++ b/README.md @@ -491,9 +491,9 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [Bear](https://github.com/rizsotto/Bear) - A tool to generate compilation database for clang tooling. * [Biicode](https://www.biicode.com/) - Simple, file-based dependency manager. -* [FASTBuild](http://www.fastbuild.org/docs/home.html) - High performance, open-source build system supporting highly scalable compilation, caching and network distribution. * [CMake](http://www.cmake.org/) - Cross-platform free and open-source software for managing the build process of software using a compiler-independent method. [BSD] * [CPM](https://github.com/iauns/cpm) - A C++ Package Manager based on CMake and Git. +* [FASTBuild](http://www.fastbuild.org/docs/home.html) - High performance, open-source build system supporting highly scalable compilation, caching and network distribution. * [Ninja](http://martine.github.io/ninja/) - A small build system with a focus on speed. * [Scons](http://www.scons.org/) - A software construction tool configured with Python scipt. * [tundra](https://github.com/deplinenoise/tundra) - High-performance code build system designed to give the best possible incremental build times even for very large software projects.