You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 02-Use_the_Tools_Available.md
+17Lines changed: 17 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,6 +25,7 @@ Use an industry standard widely accepted build tool. This prevents you from rein
25
25
*[Ninja](https://martine.github.io/ninja/) - can greatly improve the incremental build time of your larger projects. Can be used as a target for CMake.
26
26
*[Bazel](http://bazel.io/) - Note: MacOS and Linux only.
27
27
*[gyp](https://chromium.googlesource.com/external/gyp/) - Google's build tool for chromium.
28
+
*[maiken](https://github.com/Dekken/maiken) - Crossplatform build tool with Maven-esque configuration style.
28
29
29
30
Remember, it's not just a build tool, it's also a programming language. Try to maintain good clean build scripts and follow the recommended practices for the tool you are using.
30
31
@@ -133,6 +134,10 @@ Clang's analyzer's default options are good for the respective platform. It can
133
134
134
135
Can be enabled with the `/analyze`[command line option](http://msdn.microsoft.com/en-us/library/ms173498.aspx). For now we will stick with the default options.
135
136
137
+
### Flint / Flint++
138
+
139
+
[Flint](https://github.com/facebook/flint) and [Flint++](https://github.com/L2Program/FlintPlusPlus) are linters that analyze C++ code against Facebook's coding standards.
140
+
136
141
### ReSharper C++ / CLion
137
142
138
143
Both of these tools from [JetBrains](https://www.jetbrains.com/cpp/) offer some level of static analysis and automated fixes for common things that can be done better. They have options available for free licenses for open source project leaders.
@@ -214,3 +219,15 @@ Don't forget to make sure that your error handling is being tested and works pro
214
219
### ABI Compliance Checker
215
220
216
221
[ABI Compliance Checker](http://ispras.linuxbase.org/index.php/ABI_compliance_checker) (ACC) can analyze two library versions and generates a detailed compatibility report regarding API and C++ ABI changes. This can help a library developer spot unintentional breaking changes to ensure backward compatibility.
222
+
223
+
### CNCC
224
+
225
+
[Customizable Naming Convention Checker](https://github.com/mapbox/cncc) can report on identifiers in your code that do not follow certain naming conventions.
226
+
227
+
### ClangFormat
228
+
229
+
[ClangFormat](http://clang.llvm.org/docs/ClangFormat.html) can check and correct code formatting to match organizational conventions automatically.
230
+
231
+
### SourceMeter
232
+
233
+
[SourceMeter](https://www.sourcemeter.com/) offers a free version which provides many different metrics for your code and can also call into cppcheck.
0 commit comments